Что такое Intel Management Engine
Как вы возможно уже заметили, после установки операционной системы Windows на современные компьютеры на базе процессоров Intel необходимо кроме установки драйверов к звуковой карте, видеокарте, чипсету, USB-контроллеру и другим устройствам также установить драйвер для Intel Management Engine.
Что же такое этот Intel Management Engine и зачем он нужен? Если не вдаваться глубоко в технические тонкости, то это отдельный процессор (или точнее микропроцессор, микроконтроллер), который встроен в чипсет. В более ранних версиях материнских плат он встраивался в северный мост, а теперь после перехода на «одночипсетную» конфигурацию можно сказать, что он встроен просто в чипсет.
Итак, Intel Management Engine (Intel ME) это подсистема, которая предназначена для решения различных задач связанных с мониторингом и обслуживанием компьютера во время сна и в процессе его работы. Для корректной работы Intel ME, как и любого другого устройства, требуется драйвер (отсутствие такого драйвера приводит к наличию неизвестного устройства с восклицательным знаком в «Диспетчере Устройств»).
Intel ME ME используется при старте и первоначальной настройке материнской платы. Выход из строя Intel Management Engine (при условии, что больше ничего не вышло из строя на плата или в ноутбуке) чаще всего проявляется в том, что вентиляторы работают на максимальных оборотах и не регулируют свою скорость в зависимости от температуры охлаждаемых компонентов (в том числе и этим занимается Intel ME). Конечно, этим все не ограничивается, но внешне неисправность Intel ME проявляется именно так.
Кроме того, на базе Intel Management Engine реализованы также следующие технологии:
Intel AMT (удалённое администрирование или управление компьютером)
Intel AT (противоугонный модуль)
Intel SMB (урезанный вариант Intel AMT для малого бизнеса)
Сам микроконтроллер на котором реализован Intel Management Engine лицензирован у фирмы ARC International 32-битный RISC-процессор (соответственнно не x86-архитектуры) с набором возможностей специально конфигурируемых «под заказчика». Процессоры такого типа конкурируют с ARM-процессорами (которые в свою очередь весьма популярны в связи с использованием их в смартфонах и планшетах).
Этот процессор имеет все плюсы ARM-процессоров (прежде всего крайне малое энергопотребление) и при этом обладает возможностями, достаточными для решения поставленных перед ним задач. Кроме того, этот процессор обладает своей постоянной и оперативной памятью.
На базе такого процессора и работает Management Engine, а для взаимодействия с операционной системой имеется MEI – Management Engine Interface. Для настройки Management Engine в BIOS Setup есть MEBx (ME BIOS Extensions) модуль, который поставляется для OEM-производителей плат или же встроенный в BIOS Setup подраздел. Именно для корректной работы MEI с операционной системой и потребуется драйвер, который мы устанавливаем
Intel ME driver что это за программа?
Intel ME driver — не программа, а драйвер для работы аппаратных датчиков. Например скорость вращения вентилятора. Также возможно необходим для разгона процессора — у некоторых пользователей выскакивала ошибка Please install intel ME driver to enable CPU overclock, что означает установите драйвер Intel ME для включения опции разгона процессора.
На заметку. Как правило, подобные драйвера устанавливаются автоматически при помощи центра обновлений Windows. Вручную стоит устанавливать только при возникновении проблем. Отсутствие драйвера не вызовет критических ошибок, однако Интел рекомендует все таки устанавливать.
Полное название — Intel Management Engine
Удалось выяснить — драйвер нужен для подсистемы, которая встроенная почти во все чипсеты процессоров Intel с 2008 года. Подсистема состоит из:
- Прошивки. Микропрограмма, в которой заложен принцип работы устройства. При необходимости прошивку можно обновить.
- Микропроцессор. Само устройство, работающее только при наличии прошивки.
Management Engine функционирует всегда, даже когда ПК выключен — в таком случае источником энергии служит:
- Батарейка CMOS.
- В ноутбуке дополнительно — аккумулятор.
Сама компания Интел заявляет — подсистема ME необходима для максимальной производительности. При этом принцип работы нигде не описан, а исходный код закодирован.
Компания AMD также создала свою технологию в 2013 году — AMD Secure Technology (ранее называлась Platform Security Proccessor).
Не стоит путать технологию ME с AMT, которая хоть и основана на ME, но доступна только для процессоров с технологией vPro. При помощи AMT можно удаленно включать ПК или выключать, и даже устанавливать операционку.
Интересно — ME отключить никак нельзя в отличии AMT.
В теории, возможно что отказ от установки драйверов ME может отключить технологию, либо ограничить ее работу.
Оказывается, что ME отключить нельзя. Без этой технологии процессор НЕ сможет загрузиться. Все существующие методы отключения максимум что могут сделать — заставить технологию неправильно работать после включения. В таком состоянии функции не выполняются, однако встроенный микропроцессор дальше продолжает работать.
Все способы отключения не приветствуются и являются потенциально опасными.
Некоторые производители ноутбуков решили попробовать отключить ME. Так как корректного отключения все равно нет, то все это несет сомнительную пользу.
Интересно, но в некоторых современных биосах под материнки AMD уже есть опция отключения AMD Secure Technology (аналог Intel ME).
Intel Management Engine Components (IMEC)
Данное ПО устанавливает необходимые для корректной работы компоненты:
Компонент | Краткое описание |
---|---|
Management Engine Interface | Для работы интерфейса ME. |
Dynamic Application Loader | Предположительно работает под процессом jhi_service.exe. Вроде технология защиты, представляет базовые службы связи. Необходима для обеспечения аппаратного решения безопасности. |
Identity Protection Technology (IPT) | Комплект технологий для проверки подлинности онлайн-доступа. Обеспечивает надежный уровень безопасности на предприятиях и веб-сайтах. В некотором смысле является альтернативной SMS аутентификации. Также включает в себя Intel Authenticate и Protected Transaction Display (PTD). |
Manageability Engine Firmware Recovery Agent | Работает предположительно под процессом updateui.exe, который запускается из: |
C:\Program Files (x86)\Intel\Intel(R) Update Manager\bin
C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\LMS\
Настройка в биосе — ME General Settings
Настройка ME General Settings предположительно может находиться в разделе MEBx Login. Содержит главные настройки ME, одна из которых — Change ME Password, служит для смены пароля удаленного управления (по умолчанию пароль admin).
Возможно данная настройка находится не в биосе, а в меню конфигурации Intel vPro.
На заметку. vPro — технология, позволяющая удаленно управлять ПК. Подразумевается в том числе и выключение, включение, открытие настроек биоса. В основе vPro выступают две технологии — удаленное управление мониторинга (Intel Active Management Technology, AMT) и виртуализация (Intel Virtualization Technology, VT)
Вывод
Исходя из всей вышеприведенной информации можно сделать вывод — пытаться отключить Intel ME нет смысла, официальных способов нет.
Отсутствие драйвера скорее всего не вызовет никаких критических проблем в работе Windows. Однако установить его все таки стоит, хотя бы из-за рекомендации Intel.
Учтите, что без ME у вас могут быть проблем с автоматической регулировкой оборотов вентилятора. В разгоне процессора также могут быть проблемы. Возможно драйвер имеет отношение к автоматическому сбросу частоты процессора в простое.
Введение
Напомним, что основным компонентом 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
AMT – технология удалённого администрирования компьютерных систем, для которых заявлена официальная поддержка Intel vPro (это бренд, объединяющий несколько технологий, в том числе, AMT). Речь идёт о системах с чипсетами линейки Q (например, Q57 или Q170).
Учитывая высокую стоимость таких платформ, вряд ли кто-то случайно приобретёт компьютер с AMT для того, чтобы принципиально этой технологией не пользоваться. Тем не менее, если под рукой именно такой продукт, и есть необходимость убедиться, что AMT на текущий момент выключена, следует воспользоваться утилитой ACUwizard:
[рисунок взят отсюда]
или средством Intel Management and Security Status (входит в состав ПО Intel ME для vPro-платформ, можно обнаружить в трее):
- 5900 – AMT VNC-сервер без шифрования;
- 16992 – AMT веб-сервер по протоколу HTTP;
- 16993 – AMT веб-сервер по протоколу HTTPS;
- 16994 – AMT redirection для SOL, IDE-R, KVM без шифрования;
- 16995 – AMT redirection для SOL, IDE-R, KVM с TLS.
В продуктах, не относящихся к разряду vPro-платформ AMT включить нельзя, однако в состав прошивки Intel ME входят сетевые драйверы:
Это означает, что ME-контроллер (не будем забывать, что он всегда включен) имеет техническую возможность использования сетевого интерфейса.
Поэтому проблему стоит решать основательно – пытаться выключить подсистему Intel ME.
Выключение Intel ME при помощи утилит из Intel System Tool Kit
- Прошивку Intel ME в бинарном виде;
- Модули MEBx для BIOS;
- ПО Intel ME для ОС;
- 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 выключена.
Принудительное выключение 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 без потери работоспособности компьютерной системы, остаётся открытым.
- Блог компании Digital Security
- Информационная безопасность
- Системное программирование
- Реверс-инжиниринг
что это за драйвер? Intel Management Engine Driver
Intel® Management Engine (Intel® ME) — подсистема, встроенная в чипсет, предназначенная для различных задач связанных с мониторингом и обслуживанием компьютера во время сна, загрузки, а также в процессе его работы. Для корректной работы Intel ME потребуется драйвер, отсутствие которого приведёт к восклицательным знакам в «Диспетчере Устройств». Требуется ME для старта и первоначальной настройки материнской платы. Выход из строя Intel Management Engine (если плата/ноутбук при этом живы) чаще всего приводит к тому, что вентиляторы работают на полную катушку (без регулировки оборотов, чем в том числе и занимается Intel ME).
Кроме того, на базе ME реализованы другие технологии:
Intel AMT (удалённое администрирование/управление компьютером)
Intel AT (противоугонный модуль)
Intel SMB (урезанный/модифицированный вариант AMT для малого бизнеса)
Этот процессор «никак не связан» с Intel — это лицензированный у фирмы ARC International (многократно перекупленной, сейчас ею владеет фирма Synopsis на которую, в частности, и стоит перенаправленные с уже бывшего официального сайта www.arc.com) RISC-процессор (т. е. не x86-архитектура). 32-битный, характерный представитель семейства IP-процессоров — специально конфигурируемых «под заказчика», возможности/фичи которых можно задать самостоятельно. Прямой конкурент ставших так популярными в связи с развитием смартфонов-планшетов-андроидов, ARM-процессоров. Имеет все плюсы последних — крайне малое потребление, при этом достаточные для большинства «нужных задач» возможности, среди которых в том числе своя постоянная и оперативная память.
На базе этого процессора и работает Management Engine (просто ME дальше для краткости). Для взаимодействия ОС с ME имеется MEI — Management Engine Interface. А для настройки ME в BIOS Setup есть MEBx (ME BIOS Extensions) — отдельный модуль, поставляемый для OEM-производителей либо встроенный в BIOS Setup подпункт (у случае EFI/BIOS от Intel). Для корректной работы MEI с ОС соответственно потребуется драйвер.