Как прошить intel management engine

Обновлено: 06.07.2024

В ответ на проблемы, идентифицированные сторонними исследователями, корпорация Intel выполнила всесторонний анализ безопасности для улучшения надежности встроенного ПО:

  • Intel® Management Engine
  • Механизм доверенного исполнения Intel®
  • Intel® Server Platform Services (SPS)

Корпорация Intel идентифицировала уязвимости для системы безопасности, которые могут потенциально повлиять на определенные ПК, серверы и платформы Интернета вещей.

Данной уязвимости подвержены системы, использующие встроенное ПО Intel ME 6.x-11.x, серверы, использующие встроенное ПО SPS версии 4.0, и системы, использующие TXE версии 3.0. Вы можете найти эти версии встроенного ПО у определенных процессоров:

Для определения воздействия идентифицированной уязвимости на вашу систему загрузите и запустите средство определения версий Intel CSME Version Detection по следующим ссылкам.

Доступные ресурсы

Ресурсы для пользователей Microsoft и Linux*

Ресурсы от производителей систем/системных плат

  • ASRock: Информация поддержки
  • ASUS: Информация поддержки
  • Compulab: Информация поддержки
  • Клиентские системы Dell: Информация поддержки
  • Серверы Dell: Информация поддержки
  • Fujitsu: Информация поддержки
  • Getac: Информация поддержки
  • GIGABYTE: Информация поддержки
  • HP Inc: информация поддержки
  • Серверы HPE: Информация поддержки
  • Intel® NUC и Intel® Compute Stick: информация поддержки
  • Серверы продукция Intel®: Информация поддержки
  • Lenovo: Информация поддержки
  • Microsoft Surface*: Информация поддержки
  • NEC: Информация поддержки
  • Oracle: Информация поддержки
  • Panasonic: Информация поддержки
  • Quanta/QCT: Информация поддержки
  • Siemens: Информация поддержки
  • Supermicro: Информация поддержки
  • Toshiba: Информация поддержки
  • Vaio: Информация поддержки


Часто задаваемые вопросы:

В: Средство определения версий Intel CSME Version Detection Tool сообщает, что моя система уязвима. Что мне делать?
О: Корпорация Intel предоставила производителям систем и системных плат необходимые обновления встроенного ПО и программного обеспечения для устранения уязвимостей, идентифицированных в рекомендации для безопасности Intel-SA-00086.

Обратитесь к производителю вашей системы или системной платы за информацией о планах в отношении обновлений, доступных для конечных пользователей.

Некоторые производители предоставили Intel прямые ссылки, созданные для их клиентов для получения дополнительной информации и загрузки доступных обновлений программного обеспечения (см. список далее).

В: Почему мне нужно обращаться к производителю моей системы или системной платы? Почему корпорация Intel не может предоставить необходимое обновление для моей системы?
О: Корпорация Intel не может предоставить универсальное обновление из-за настроек встроенного ПО программы управления, которые выполнены производителями систем и системных плат.

В: Моя система отображается в инструменте обнаружения версий Intel CSME Version Detection Tool как возможно уязвимая. Что мне делать?
О: Статус возможной уязвимости обычно отображается, когда не установлен любой из следующих драйверов:

  • Драйвер интерфейса Intel® Management Engine (Intel® MEI)
  • Драйвер интерфейса Intel® Trusted Execution Engine Interface (Intel® TXEI)

Обратитесь к производителю вашей системы или системной платы для получения соответствующих драйверов.

В: Производителя моей системы или системной платы нет в вашем списке. Что мне делать?
О: В следующем списке представлены ссылки, полученные от производителей систем или системных плат, которые предоставили нужную информацию в корпорацию Intel. Если производителя вашей системы нет в списке, обратитесь к нему за помощью, используя стандартный способ обращения за поддержкой (веб-сайт, телефон, эл. почта и т.д.).

В: Какие типы доступа могут применять атакующие для использования идентифицированных уязвимостей?
О: Если производитель аппаратных средств воспользуется рекомендуемыми корпорацией Intel механизмами защиты от записи, атакующему потребуется получить физический доступ к флэш-памяти встроенного ПО платформы для использования уязвимостей, идентифицированных в следующих рекомендациях:

  • CVE-2017-5705
  • CVE-2017-5706
  • CVE-2017-5707
  • CVE-2017-5708
  • CVE-2017-5709
  • CVE-2017-5710
  • CVE-2017-5711

Конец производства

Злоумышленник получает физический доступ, вручную обновляя платформу, устанавливая образ вредоносного встроенного ПО с помощью устройства программирования, физически подключаемого к флэш-памяти платформы. Защита от записи флэш-дескриптора обычно устанавливается на платформе в конце производства. Защита от записи флэш-описателя обеспечивает защиту настроек флэш-памяти от преднамеренного или непреднамеренного изменения после производства.

Если производитель аппаратных средств не активирует рекомендуемые корпорацией Intel механизмы защиты от записи флэш-описателя, атакующему потребуется доступ к работающем ядру (логический доступ, кольцо 0 операционной системы). Атакующему необходим данный доступ для использования идентифицированных уязвимостей посредством установки на платформе вредоносного образа встроенного ПО с помощью вредоносного драйвера платформы.

Уязвимость, идентифицированная в документе CVE-2017-5712, может быть использована удаленно через сеть в сочетании с действительными административными учетными данными для Intel® Management Engine. Уязвимость не может быть применима, если действительные административные учетные данные недоступны.

Если вам необходима дополнительная помощь, обратитесь в службу поддержки Intel для оформления онлайновой заявки на обслуживание.


В предыдущей статье был описан ход исследования безопасности прошивок промышленных коммутаторов. Мы показали, что обнаруженные архитектурные недостатки позволяют легко подделывать образы прошивок, обновлять ими свитчи и исполнять свой код на них (а в некоторых случаях — и на подключающихся к свитчам клиентах). В дополнение, мы описали возможности закрепления внедряемого кода на устройствах. Подчеркнули низкое качество кода прошивок и отсутствие механизмов защиты от эксплуатации бинарных уязвимостей.
Мы обещали привести реальный пример сильной модели безопасности прошивок, где модификация исполнимого кода является очень нетривиальной задачей для потенциального злоумышленника.

Встречайте – подсистема Intel Management Engine, самая загадочная составляющая архитектуры современных x86-платформ.

Для начала, основательно разберёмся в предметной области. Что это такое, откуда и зачем появилось?

В 2005 году компания Intel представила Active Management Technology (AMT) версии 1.0 — решение для удалённого администрирования (управление, инвентаризация, обновление, диагностика, устранение неполадок и т.д.) и защиты десткопных компьютерных систем, своего рода аналог технологии Intelligent Platform Management Interface (IPMI), использующейся в серверах.



[рисунок взят отсюда]

  • внеполосный (out-of-band) доступ к сетевому интерфейсу (Ethernet), который он разделяет с основным CPU, но, имея собственный контроллер канального уровня, осуществляет мониторинг всего входящего сетевого трафика, из которого «вырезает» (при помощи Packet Filter) пакеты, предназначенные для него. Для ОС (наличие и состояние которой, кстати, на работу AMT никак не влияет) этот трафик уже не виден;
  • внутренний веб-сервер с TLS-шифрованием;
  • доступ к периферийному оборудованию, получение и хранение в энергонезависимой памяти (там же, где и его прошивка) информации о нём.

А ещё этот микроконтроллер начинает работать при подаче питания на материнскую плату компьютерной системы (т.е. при подключении компьютера к электрической сети, ещё до того, как пользователь нажмёт кнопку Power).


Итак, Management Engine всегда включён, но использование возможностей AMT требует активации (подразумевает задание пароля, сетевых параметров,… ) в BIOS setup, а точнее в MEBx setup:



[скриншот взят отсюда]

Похвально, что дефолтный пароль («admin») при первом входе обязательно требуется изменить на новый, удовлетворяющий определённым требованиям: минимум 8 символов, среди которых должны присутствовать хотя бы одна цифра, одна заглавная буква и один спец. символ.

AMT 1.0 была реализована на интегрированном в южный мост чипсета (Input/Output Controller Hub, ICH) сетевом модуле Intel 82573E series Gigabit Ethernet Controller.

Затем, в 2006 году, начиная с AMT версии 2.0, микроконтроллер перенесли в северный мост чипсета (Graphics and Memory Controller Hub, GMCH). Именно тогда подсистему наименовали в Intel Management Engine (ME) версии 2.0.

Одновременно с этим появился бренд Intel vPro, который обозначал комплекс реализованных на основе Intel ME технологий: AMT, Trusted Execution Technology (TXT) и Virtualization Technology (VT). Позже в этот список вошли Identity Protection Technology (IPT) и Anti-Theft (AT).

Тогда же Intel ME наделили ещё большим количеством впечатляющих возможностей, среди которых — полный доступ ко всему содержимому оперативной памяти компьютера через внутренний DMA-контроллер, а в дальнейшем появилась возможность мониторинга видеопотока, выводящегося на монитор (правда, только в случае использования встроенного графического ядра).

  1. часть функций Advanced Control and Power Interface (ACPI) и Alert Standard Format (ASF);
  2. Quiet System Technology (QST);
  3. Integrated Clock Control (ICC);
  4. Trusted Platform Module (TPM);
  5. .

Подробнее про развитие Intel AMT можно почитать здесь.


Тем не менее, из-за высокой стоимости реализации, эта подсистема присутствовала, за несколькими исключениями, только на материнских платах с чипсетами Intel линейки Q:

GMCH ICH ME/AMT version
Q965 ICH8 ME 2.x (AMT 2.x)
GM965 / GME965 / GL960 / GLE960 / PM965 ICH8M ME 2.5.x (AMT 2.5.x) < — первое появление на ноутбуках
Q35 ICH9 ME 3.x (AMT 3.x)
GM45 / PM45 ICH9M ME 4.x (AMT 4.x) < — только на ноутбуках
Q45 ICH10 ME 5.x (AMT 5.x)

Тогда к чему вся эта специфика железа с шильдиком vPro, которое мало кто (в РФ) приобретал ввиду высокой стоимости (ну и других причин)?

Дело в том, что, начиная с 2010 года, вместе с переносом части функциональных блоков северного моста (графическое ядро, контроллер памяти, . ) в корпус CPU, подсистему Intel ME стали встраивать во все чипсеты производства Intel. При этом ME-контроллер остался в корпусе чипсета – в Platform Controller Hub (PCH). Это чипсеты 5 серии и выше.

Итак, хронология последующих версий для десктопов и лаптопов:

PCH ME/AMT version
5 series chipset ME 6.x (AMT 6.x)
6 series chipset ME 7.x (AMT 7.x)
7 series chipset ME 8.x (AMT 8.x)
8 series chipset ME 9.x (AMT 9.x)
9 series chipset ME 9.5.x/10.x (AMT 9.5.x/10.x)
100 series chipset ME 11.x (AMT 11.x)

Примечание: функциональность AMT по сей день остаётся доступной только на чипсетах линейки Q, т.е. только на оборудовании с шильдиком vPro.


Думаете только десктопы и ноутбуки? Нет, Intel-а ответ!


В итоге архитектура каждой современной мобильной/лаптопной/дескопной/серверной компьютерной платформы с чипсетом/SoC от Intel включает в себя самую скрытную (от пользователя системы) и привилегированную среду исполнения — подсистему Intel ME. Неудивительно, что разрабатывая эту архитектуру, компания Intel была вынуждена серьёзно поработать над её защитой от компрометации.

Вздохнём и рассмотрим архитектуру этой подсистемы, чтобы разобраться в применённой модели безопасности. Вдруг это поможет успокоиться?

Intel Management Engine (ME) – встроенная в компьютерные платформы подсистема, обеспечивающая аппаратно-программную поддержку различных технологий Intel.

Как уже было сказано, первые версии этой подсистемы были основаны на двухкорпусных чипсетах Intel. Тогда в качестве базовой модели ME-контроллера использовался ARCtangent-A4 со стандартной системой команд ARC32.



[рисунок взят из книги 1]


В однокорпусных чипсетах уже использовались ARCtangent-A5/ARC600 с компактной системой команд ARCompact (ARC16/32).



[рисунок взят из книги 1]


В Intel SoC (там где эта подсистема называется Intel TXE) в качестве базовой модели для ME-контроллера используется SPARC.


ARC-и, SPARC-и какие-то, да? Ревёрсить некомфортно будет!

Ничего страшного, в Intel об этом позаботились: в самых последних платформах (Skylake, чипсеты 100 серии, Intel ME 11.x) ME-контроллер имеет архитектуру… x86!
Да-да, в чипсетах теперь живёт ещё один x86.

  1. ME-контроллер – встроенный в чипсет 32-разрядный микроконтроллер типа RISC, имеющий внутренние ROM и SRAM;
  2. Регион ME в SPI флэш-памяти, в котором хранится разработанная и подписанная компанией Intel прошивка ME-контроллера (поэтому, именно Intel ME firmware);
  3. ME UMA – скрытая ото всех, кроме ME-контроллера, область (16 — 32 МБ) в оперативной памяти компьютера, которой он пользуется в качестве runtime-memory для размещения и запуска прошивки;
  4. Management Engine Interface (MEI), ранее известный как Host Embedded Controller Interface (HECI), – набор регистров в конфигурационном пространстве PCI и область в MMIO, представляющие собой интерфейс для обмена информацией с ME-контроллером (по сути, единственный канал связи софта, исполняющегося на CPU, с подсистемой Intel ME);
  5. Отдельный MAC – контроллер канального уровня, предоставляющий ME-контроллеру out-of-band доступ к общему физическому сетевому интерфейсу для удалённого администрирования компьютерной системой;
  6. Некоторые модули в BIOS, отвечающие за инициализацию платформы и сообщающие о результатах своей работы ME-контроллеру через MEI.

В случае наличия шильдика Intel vPro, в состав подсистемы Intel ME дополнительно входит BIOS-модуль ME BIOS Extenstion (MEBx), предоставляющий графический интерфейс (показан выше), а также осуществляющий включение и конфигурирование AMT через MEI.


Таким образом, у нас имеется среда исполнения ring -3 (так её условно называют) — 1 штука. Её привилегированность обуславливается способностями, которыми наделён ME-контроллер (о них написано выше), а скрытность — полным отсутствием возможности контроллировать программными (и даже аппаратными, в production-версиях плат) средствами.


  • ME ROM – энергонезависимая неперезаписываемая память, в которой хранится стартовый код ME-контроллера;
  • ME SRAM – оперативная память используемая ME-контроллером при недоступности ME UMA, например, на ранних этапах работы;
  • кэш кода и кэш данных, для повышения производительности при работе с памятью;
  • C-Link (Controller Link) – шина, позволяющая ME-контроллеру взаимодействовать с периферийным аппаратным обеспечением в режимах S5 (System shutdown) / S3 (Sleep mode);
  • Различные аппаратные блоки:
    • высокоточный таймер и WDT;
    • контроллер прерываний;
    • контроллеры памяти и DMA;
    • интерфейс HECI/MEI;
    • RNG, акселлератор криптографических функций и функций сжатия.



    [рисунок взят из книги 2]


    Самое время разобраться в том, как от модификаций защищён код, который управляет всем этим богатством.

    • 1.5 МБ, урезанные версии;
    • 5 МБ, полные версии.
    1. Bring Up, первый запускаемый модуль из прошивки;
    2. Kernel, ядро ОСРВ ThreadX;
    3. Некоторые драйверы и службы.

    Общее описание содержимого Intel ME firmware можно найти в книге 2 из списка литературы, но детальнее со структурами (разобраны аналитическим путём) можно ознакомиться, например, в этом скрипте для распаковки прошивок Intel ME.

    Пойдём по порядку.

    1. Flash Descriptors, в котором хранятся указатели на все остальные регионы, а также read/write привилегии для пользователей этой памяти. Отметим, что обычно этими дескприпторами запрещается перезапись ME региона всем, за исключением самого ME-контроллера;
    2. GbE (Gigabit Ethernet);
    3. ME, здесь хранится прошивка ME-контроллера;
    4. BIOS;
    5. 3PDS (Third Party Data Storage), опциональный регион.



    [картинка взята отсюда]


    Теперь взглянем на сам регион ME, вот пример содержимого из его начала:


    Это Flash Partition Table (FPT) — таблица разделов ME firmware. В ней хранятся указатели на различного типа (код, данные, виртуальная область, . ) разделы и их параметры. Целостность этой таблицы контролируется одним байтом чексуммы по смещению 1Bh.

    Нас интересуют executable-разделы, т.е. те, что хранят исполнимый код. Их обычно несколько, рассмотрим один из них:


    Своим закрытым ключом компания Intel подписывает часть заголовка манифеста и таблицу модулей (см. следующий дамп), прикладывая полученную подпись и открытый ключ для проверки.

    А вот и фрагмент таблицы модулей рассматриваемого раздела:


    Эта таблица содержит заголовки модулей, где указаны некоторые параметры и хеш-сумма SHA256 (по смещению 14h внутри заголовка).


    Сгенерировать собственную пару ключей RSA-2048 и подписать ими раздел не получится ввиду того, что целостность приложенного открытого ключа проверяется стартовым кодом в ME ROM, в котором хранится хеш-сумма SHA256 открытого ключа компании Intel.


    В итоге, схему верификации кодового раздела ME firmware можно обобщить на рисунке:


    Каждый кодовый раздел верифицируется по этой схеме.

    Этого более чем достаточно для защиты прошивки от подделывания. Программно перезаписать ME регион SPI флеш-памяти нельзя (помним про разрешения в Flash Descriptors), аппаратные средства, конечно позволят обойти это ограничение, но контроль подлинности не выключить.


    Напоследок, посмотрим в сторону защиты от бинарных уязвимостей.

    Мы увидели, что весь исполнимый код ME firmware разбит на модули разного назначения:



    [рисунок взят из книги 1]

    У ME-контроллера есть два режима работы: привилегированный и пользовательский (аналоги kernel mode и user mode для CPU). Привилегированный режим отличает, прежде всего, возможность доступа к аппаратным ресурсам и возможность обращения по адресам вне отведённого этому модулю диапазона памяти.

    Каждый модуль запускается и работает в заданном (в заголовке этого модуля) режиме.



    [рисунок взят из книги 1]

    Распарсив весь ME регион можно увидеть, что привилегированный режим используется ядром ОСРВ и некоторыми драверами. Службам и прикладными модулям, как и положено, отводится только пользовательский режим.

    Мы показали, что подсистема Intel ME является неотъемлемой частью архитектуры современных компьютерных платформ (на основе чипсетов/SoC Intel). Очевидно, что её компрометация предоставляет потенциальному злоумышленнику безграничные возможности контроля над платформой: доступ ко всему содержимому оперативной памяти (системная память, память гипервизора, SMRAM, ACRAM, выделяемая память для графического ядра — GFX UMA), out-of-band доступ к сетевому интерфейсу (мониторинг всего сетевого трафика), удалённый контроль как часть штатной функциональности AMT, перезапись любых регионов SPI флеш-памяти. Бонусом к этому является полное отсутствие возможностей обнаружения.

    • запрет на использование дефолтного пароля, принуждение к установке сильного пароля (соответствующего определённым требованиям);
    • использование функций шифрования в сетевых протоколах;
    • контроль целостности и подлинности всего исполнимого кода прошивки;
    • механизмы защиты от эксплуатации бинарных уязвимостей.

    Заранее прокомментирую возможные призывы использовать компьютерные платформы на основе CPU и чипсетов от AMD: у них есть очень похожая технология, называется Platform Security Processor (PSP). Представлена не так давно, в 2013 году. Про неё пока известно не много, но кое-что можно почитать здесь.

    Список литературы

    1. A. Kumar, «Active Platform Management Demystified: Unleashing the Power of Intel VPro (TM) Technology», 2009, Intel Press.

    2. Xiaoyu Ruan, «Platform Embedded Security Technology Revealed: Safeguarding the Future of Computing with Intel Embedded Security and Management Engine», 2014, APress.


    Напомним, что основным компонентом Intel ME является встроенный в чипсет микроконтроллер с кастомной архитектурой. Известна лишь базовая модель, это 32-х разрядный ARCtangent-A4 (ME 1.x — 5.x), ARCtangent-A5 (ME 6.x — 10.x), SPARC (TXE) или x86 (ME 11.x — . ).

    Начиная с 6-й версии, ME-контроллер встраивают во все чипсеты Intel.



    [рисунок взят отсюда]

    Загрузчик его прошивки хранится во внутренней ROM и недоступен для анализа. Сама прошивка располагается в регионе ME во внешней SPI флэш-памяти (т.е. в той же памяти, где хранится BIOS). Структура этой прошивки такова, что весь исполнимый код разбит на модули, которые хранятся в сжатом виде (либо кастомной реализацией алгоритма Хаффмана, либо LZMA). Эти кодовые модули криптографически защищены от модификаций.

    Если есть желание поревёрсить прошивку, рекомендуем воспользоваться этими двумя инструментами для изучения её структуры и распаковки кодовых модулей.

    Итак, рассматриваемая подсистема является аппаратно-программной основой для различных системных функций (некоторые раньше реализовывали в BIOS) и технологий Intel. Их имплементация включается в состав прошивки Intel ME. Одной из таких технологий, использующих несколько особых привилегий Intel ME, является Active Management Technology (AMT).

    AMT – технология удалённого администрирования компьютерных систем, для которых заявлена официальная поддержка Intel vPro (это бренд, объединяющий несколько технологий, в том числе, AMT). Речь идёт о системах с чипсетами линейки Q (например, Q57 или Q170).

    Учитывая высокую стоимость таких платформ, вряд ли кто-то случайно приобретёт компьютер с AMT для того, чтобы принципиально этой технологией не пользоваться. Тем не менее, если под рукой именно такой продукт, и есть необходимость убедиться, что AMT на текущий момент выключена, следует воспользоваться утилитой ACUwizard:



    [рисунок взят отсюда]

    или средством Intel Management and Security Status (входит в состав ПО Intel ME для vPro-платформ, можно обнаружить в трее):



    В продуктах, не относящихся к разряду vPro-платформ AMT включить нельзя, однако в состав прошивки Intel ME входят сетевые драйверы:


    Это означает, что ME-контроллер (не будем забывать, что он всегда включен) имеет техническую возможность использования сетевого интерфейса.

    Поэтому проблему стоит решать основательно – пытаться выключить подсистему Intel ME.

    1. Прошивку Intel ME в бинарном виде;
    2. Модули MEBx для BIOS;
    3. ПО Intel ME для ОС;
    4. Intel System Tool Kit (STK) — комплект программных средств и документации для сборки образов SPI флэш-памяти, применения этих образов и получении информации о текущем состоянии Intel ME.

    Несмотря на то, что этот комплект распространяется по NDA (судя по меткам «Intel Confidential» в прилагаемых документах), многие вендоры забывают его вырезать из архива с ПО Intel ME, который передаётся пользователям. А ещё не закрывают свои ftp-серверы от внешнего доступа. В результате, утекших версий STK очень много. Здесь можно слить комплект для любой версии Intel ME.

    Важно, чтобы major и minor version (первая и вторая цифры) используемого STK совпадала с версией Intel ME целевой системы, информацию о которой можно получить, например, воспользовавшись ME analyzer:


    Проверять текущее состояние Intel ME можно при помощи утилиты MEinfo, которая через Management Engine Interface (MEI) получает информацию о работе этой подсистемы:


    Напомним, что MEI является интерфейсом для связи основного CPU с подсистемой Intel ME и представляет собой набор регистров в конфигурационном пространстве PCI и в MMIO. Команды этого интерфейса не документированы, как и сам протокол.

    Flash Image Tool

    На старых платформах (Intel ME версии 5.x и ниже) выключить данную подсистему можно, воспользовавшись Flash Image Tool (утилита из STK, предназначенная для сборки образов SPI флэш-памяти из отдельно взятых регионов BIOS, ME, GbE). При сборке задаются параметры, которые прописываются в этих регионах и в регионе Flash Descriptors. В последнем есть один очень интересный флаг, «ME disable»:


    Таким образом, для выключения Intel ME на целевой компьютерной системе, в её SPI флэш-память следует записать (программатором) новый образ с выставленным флагом «ME disable».

    Работает ли этот способ, нам неизвестно. Но звучит правдоподобно, учитывая, что ME-контроллер в тех версиях интегрировался только в чипсеты линейки Q, т.е. был не обязательным компонентом для всех платформ.

    Flash Programming Tool

    Начиная с Intel ME 9 версии, в утилиту Flash Programming Tool, предназначенную для программирования SPI флэш-памяти компьютерных платформ, была добавлена возможность временно выключать Intel ME:


    Выключение выполняется отправкой команды в MEI. После отработки Intel ME не подаёт «признаков жизни», не отвечает даже MEI:


    Согласно документации, в таком состоянии подсистема Intel ME находится до следующего запуска компьютера или перезагрузки.

    На vPro-платформах возможность отправки этой команды есть и в более ранних версиях. Для этого необходимо воспользоваться разделом конфигурирования ME/AMT в BIOS, где должна быть опция «Intel ME disable»:



    [рисунок взят отсюда]

    Нельзя говорить о том, что этот способ позволяет полностью отключить Intel ME, хотя бы потому, что до момента принятия команды на отключение ME-контроллер успеет загрузиться, а значит, выполнить некоторую часть кода прошивки.
    Несмотря на то, что Intel ME не подаёт «признаков жизни» после этой операции, неизвестно, может ли эту подсистему заново включить какой-нибудь сигнал извне. Также неясно, насколько Intel ME выключена.

    В интересах исключения возможности исполнения ME-контроллером кода прошивки, логично попробовать ограничить ему доступ к ней. А что? Нет кода – нет проблемы.

    Проанализировав документацию, которая прилагается к STK, и, немного подумав, мы предположили, что это можно сделать следующими способами.


    1. Вырезать (обнулить) ME регион из SPI флэш-памяти.

    Те, кто пробовал так делать сообщают о том, что их платформа либо не загружалась без наличия подлинной прошивки ME, либо выключалась ровно после 30 минут работы.

    Отказ компьютерной системы грузиться без прошивки Intel ME можно объяснить важностью ME-контроллера в процессе инициализации аппаратной составляющей. А 30-минутный таймаут наводит на мысль о WDT (Watch Dog Timer).

    • стереть первые 0x20 байт в ней (таким образом повредив сигнатуру 0x0FF0A55A, которая определяет режим работы флэш-памяти);
    • выставить джампер HDA_SDO (если он есть).

    Таким образом, ME-контроллер не получит доступ к своему региону, и, следовательно, не будет исполнять прошивку.

    С одной стороны, ME-контроллер так же, как и в предыдущем случае, может препятствовать нормальной работе компьютерной системы. С другой стороны, не дескрипторный режим включает т.н. manufacturing mode, который используется вендорами в отладочных целях, и есть шанс, что система запустится.


    3. Известно, что прошивка Intel ME распаковывается в выделенную и скрытую от основного CPU область оперативной памяти – ME UMA. Выделение и блокировку этой области осуществляет BIOS во время конфигурирования карты памяти. Тогда почему бы не вырезать эти фрагменты кода из BIOS, чтобы данная область не выделялась. Тогда прошивка ME не будет распаковываться и исполняться.

    Проведённые эксперименты показали, что такой способ тоже не годится, и система не запускается. К тому же, у ME-контроллера есть внутренняя SRAM, которая используется при недоступности ME UMA. Поэтому часть прошивки всё равно будет исполняться.

    • отключение при каждом старте командой в MEI или отключение флагом в регионе flash descriptors (в зависимости от версии);
    • ограничение доступа ME-контроллеру к своей прошивке либо перевод компьютерный платформы в manufacturing mode.
    • препятствование нормальной работе ME-контроллера не обеспечивая его runtime-памятью.

    Очевидно, что некоторые предложенные решения влекут за собой неработоспособность компьютерной системы, остальные не дают никакой гарантии того, что подсистема Intel ME действительно выключена. В связи с этим, мы пришли к выводу, что полностью выключить Intel ME крайне сложно.

    Вероятно, это связано с тем, что, отключая Intel ME, мы нейтрализуем важный компонент в архитектуре компьютерной системы. Например, без ME некому будет решать важные системные задачи вроде ACPI или ICC (которые когда-то реализовывались в BIOS). Чтобы заставить платформу стабильно работать без ME, как минимум, необходимо вернуть реализацию этих технологий в BIOS.

    Так или иначе, вопрос о том, как отключить Intel ME без потери работоспособности компьютерной системы, остаётся открытым.

    Эта запись загрузки устанавливает компоненты Intel® Management Engine (Intel® ME) для Windows 7*, 8.1* и Windows® 10 для комплект Intel® NUC NUC5i5MYHE и системная плата Intel® NUC NUC5i5MYBE.

    Лицензия на использование программного обеспечения Intel

    Для скачивания этого файла Intel требует принять лицензионное соглашение. Хотите пересмотреть свое решение? Скачивание файла начнется автоматически. если скачивание не начинается, скачайте его вручную

    Файлы, доступные для скачивания

    Файлы для скачивания me_corporate_win7_8.1_10_11.0.6.1194.zip
    • Windows 7, 32-bit*, Windows Server 2008 R2 family*, Windows Server 2012 R2 family*, Windows 10, 64-bit*, Windows 8.1, 64-bit*, Windows 8.1, 32-bit*, Windows 7, 64-bit*, Windows 10, 32-bit*
    • Размер: 24.8 MB
    • SHA1: B765E825D538367C67888D3031F73DE5560B0C04

    Подробное описание

    Цель

    Эта запись загрузки устанавливает компоненты Intel® Management Engine (Intel® ME) для Windows 7*, Windows 8.1* и Windows® 10 для комплект Intel® NUC NUC5i5MYHE и системная плата Intel® NUC NUC5i5MYBE.

    Программа Intel ME обнаруживает возможности Intel NUC и устанавливает соответствующие драйверы.

    Что в этом пакете

    MEI-Only Installer MSI — эта папка содержит только установку для Интерфейс Intel Management Engine драйвера.

    WINDOWSDriverPackages — эта папка содержит файлы INF для ИТ-специалистов.

    В зависимости от используемого установного устройства вы можете увидеть различные версии, относящиеся к данному пакету Intel ME:

    • В Диспетчере устройств: Интерфейс Intel Management Engine версии драйвера: 11.0.5.1189
    • В программах и характеристиках: Intel Management Engine версии пакета: 11.0.6.1194

    Заметки

    Если драйвер Intel ME не был успешно установлен, в Диспетчере устройств отображается ошибка контроллера PCI Simple Communications Controller.

    Если вы используете Windows 7, сначала необходимо установить инфраструктуру драйвера ядра(KB 2685811)(Core-Mode Driver Framework 1.11).

    Не уверены, что это подходящий драйвер для вашего устройства Intel® NUC?

    Запустите Приложение Intel® Driver & Support Assistant для автоматического обнаружения обновлений драйверов.

    Этот скачиваемый файл подходит для нижеуказанных видов продукции.

    Автоматическое обновление драйвера и программного обеспечения

    Идентифицируйте свою продукцию и установите обновления драйверов Intel® и ПО для вашей ОС Windows*.

    Содержание данной страницы представляет собой сочетание выполненного человеком и компьютерного перевода оригинального содержания на английском языке. Данная информация предоставляется для вашего удобства и в ознакомительных целях и не должна расцениваться как исключительная, либо безошибочная. При обнаружении каких-либо противоречий между версией данной страницы на английском языке и переводом, версия на английском языке будет иметь приоритет и контроль. Посмотреть английскую версию этой страницы.

    Для работы технологий Intel может потребоваться специальное оборудование, ПО или активация услуг. // Ни один продукт или компонент не может обеспечить абсолютную защиту. // Ваши расходы и результаты могут отличаться. // Производительность зависит от вида использования, конфигурации и других факторов. // См. наши юридические уведомления и отказ от ответственности. // Корпорация Intel выступает за соблюдение прав человека и избегает причастности к их нарушению. См. Глобальные принципы защиты прав человека в корпорации Intel. Продукция и программное обеспечение Intel предназначены только для использования в приложениях, которые не приводят или не способствуют нарушению всемирно признанных прав человека.

    Читайте также: