Перейти к содержимому

Как отключить intel me

  • автор:

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

В ходе исследования внутренней архитектуры Intel Management Engine (ME) 11-й версии был обнаружен механизм, отключающий эту технологию после инициализации оборудования и запуска основного процессора. О том, как мы нашли этот недокументированный режим, и о его связи с государственной программой построения доверительной платформы High Assurance Platform (HAP) мы расскажем в этой статье.

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

Введение

Intel Management Engine — это закрытая технология, которая представляет собой интегрированный в микросхему Platform Controller Hub (PCH) микроконтроллер с набором встроенных периферийных устройств. Именно через PCH проходит почти все общение процессора с внешними устройствами, следовательно Intel ME имеет доступ практически ко всем данным на компьютере и возможность исполнения стороннего кода позволяет полностью скомпрометировать платформу. Такие безграничные возможности привлекают исследователей не первый год, но сейчас интерес к технологии Intel ME значительно вырос. Одной из причин этого является переход данной подсистемы на новую аппаратную (x86) и программную (доработанный MINIX в качестве операционной системы) архитектуру. Применение платформы x86 позволяет использовать всю мощь средств анализа бинарного кода, что ранее было затруднительно, так как до 11-й версии использовалось ядро с малораспространенной системой команд — ARC. К сожалению, анализ Intel ME 11-й версии был затруднен тем, что исполняемые модули упакованы кодом Хаффмана с неизвестными таблицами. Но нашей исследовательской группе (Дмитрий Скляров, Марк Ермолов, Максим Горячий) удалось их восстановить (утилиту для распаковки образов можно найти на нашей странице в GitHub).

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

Как выключить ME

Как выключить ME — этот вопрос часто задают некоторые владельцы компьютеров x86-архитектуры. Тема деактивации неоднократно поднималась, в том числе и исследователями нашей компании.

Актуальности этому вопросу добавляет недавно обнаруженная критическая (9,8 из 10) уязвимость в Intel Active Management Technology (AMT) — технологии, которая базируется на Intel ME.

Сразу огорчим читателя — полностью выключить ME на современных компьютерах невозможно. Это связано прежде всего с тем, что именно эта технология отвечает за инициализацию, управление энергопотреблением и запуск основного процессора. Сложности добавляет и тот факт, что часть кода «жестко прошита» внутри микросхемы PCH, которая выполняет функции южного моста на современных материнских платах. Основным средством энтузиастов, которые «борются» с данной технологией, является удаление всего «лишнего» из образа flash-памяти при сохранении работоспособности компьютера. Но сделать это не так просто, так как, если встроенный в PCH код не найдет во flash-памяти модули ME или определит, что они повреждены, система запущена не будет. Уже несколько лет в сети развивается проект me_cleaner, в рамках которого доступна специальная утилита, позволяющая удалить большую часть образа и оставить только жизненно необходимые для основной системы компоненты. Но даже если система запустилась, радоваться рано — приблизительно через 30 минут может произойти автоматическое отключение, так как при некоторых сбоях ME переходит в Recovery-режим, в котором не функционирует больше некоторого фиксированного времени. В итоге процесс очистки усложняется. Например, до 11-й версии удавалось уменьшить размер образа до 90 KБ, но в 11-й — уже только до 650 КБ.

Рисунок 1. Поддержка архитектур Skylake+ в me_cleaner

Секреты в QResource

Intel дает производителям материнских плат возможность задать небольшое количество параметров ME. Для этого компания предоставляет производителям оборудования специальный набор программного обеспечения, в который входят такие утилиты, как Flash Image Tool (FIT) для настройки параметров ME и Flash Programming Tool (FPT), реализующая поддержку программирования flash-памяти напрямую через встроенный SPI-контроллер. Данные программы недоступны конечному пользователю, но их без труда можно найти в интернете. Из этих утилит можно извлечь большое количество файлов формата XML (подробное Intel ME: The Way oftheStatic Analysis), изучение которых позволяет узнать много интересного: структуру прошивки ME и описание PCH strap — специальных конфигурационных битов для различных подсистем, интегрированных в микросхему PCH.

Рисунок 2. Упакованные XML-файлы

Нас заинтересовало одно из таких полей с именем «reserve_hap», так как напротив него имелся комментарий — High Assurance Platform (HAP) enable.

Рисунок 3. PCH strap для High Assurance Platform

Поиск в Google не был долгим. Буквально вторая ссылка говорит, что такое название носит программа по созданию доверительных платформ, связанная с Агентством национальной безопасности (АНБ) США. Презентацию с описанием программы можно найти тут. Нашей первой мыслью было поставить этот бит и посмотреть, что будет. Это может сделать любой желающий, если у него есть SPI-программатор или доступ в Flash Descriptor (на многих материнских платах некорректно выставлены права доступа к регионам flash-памяти).

Рисунок 4. Статус ME после активации HAP-бита

После загрузки платформы утилита meinfo сообщает странный статус — Alt Disable Mode. Беглые проверки показали, что ME не отвечает на команды и никак не реагирует на воздействия из операционной системы. Мы решили разобраться, как система переходит в этот режим и что он означает. К этому времени у нас уже была проанализирована основная часть модуля BUP, который отвечает за начальную инициализацию платформы и, исходя из вывода meinfo, устанавливает этот статус. Для понимания алгоритма работы BUP необходимо более подробно описать программное окружение Intel ME.

Программная часть Intel ME 11

Начиная с PCH 100-й серии компания Intel полностью переработала эту микросхему. Был осуществлен переход на новую архитектуру встроенных микроконтроллеров — с ARCompact компании ARC на x86. За основу был выбран 32-битный микроконтроллер Minute IA (MIA), который используется в микрокомпьютерах Intel Edison и SoC Quark. Он основан на дизайне весьма старого, скалярного микропроцессора Intel 486 с добавлением системы команд (ISA) от процессора Pentium. Однако для PCH компания выпускает данное ядро с применением 22-нм полупроводниковой технологии, получая высокую энергоэффективность микроконтроллера. Таких ядер в новом PCH три: Management Engine (ME), Integrated Sensors Hub (ISH) и Innovation Engine (IE). Последние два могут активироваться и деактивироваться в зависимости от модели PCH и целевой платформы, а ME-ядро работает всегда.

Рисунок 5. Три x86-процессора в PCH

Такие глобальные изменения потребовали изменения и программной составляющей ME. В частности, в качестве основы для операционной системы был выбран MINIX (ранее ThreadX RTOS). Теперь прошивка ME включает полноценную операционную систему со своими процессами, потоками, диспетчером памяти, драйвером аппаратных шин, файловой системой и многим другим. В ME интегрирован аппаратный криптопроцессор, поддерживающий алгоритмы SHA256, AES, RSA, HMAС. Доступ к оборудованию для пользовательских процессов производится посредством локальной таблицы дескрипторов (LDT). Через LDT организовано также и адресное пространство процесса — оно является всего лишь частью глобального адресного пространства ядра, границы которого заданы в локальном дескрипторе. Таким образом, ядру не нужно переключаться на память разных процессов (меняя каталоги страниц), как, например, в Microsoft Windows или Linux.

На этом закончим обзор программного окружения Intel ME и рассмотрим более подробно, как происходит загрузка операционной системы и модулей.

Стадии загрузки Intel ME

Запуск начинается с программы ROM, которая содержится во встроенной в PCH статической памяти. К сожалению, способ прочесть или перезаписать эту память широкой общественности не известен, но в интернете можно найти «предпродажные» версии прошивки ME с разделом ROMB (ROM BYPASS), который, по нашему предположению, дублирует функции ROМ. Таким образом, исследуя такие прошивки, можно восстановить основную функциональность программы первичной инициализации.

Изучение ROMB позволяет понять назначение ROM — выполнение начальной инициализации оборудования, например SPI-контроллера, проверка цифровой подписи заголовка раздела FTPR, загрузка модуля RBE, который расположен уже во flash-памяти. RBE, в свою очередь, проверяет контрольные суммы модулей KERNEL, SYSLIB, BUP и передает управление на точку входа в ядро.

Следует заметить, эти три сущности — ROM, RBE и KERNEL — выполняются на нулевом уровне привилегий (в ring-0) ядра MIA.

Рисунок 6. Проверка целостности SYSLIB, KERNEL и BUP в RBE

Первый процесс, который создается ядром, — это BUP, который уже выполняется в своем адресном пространстве, в ring-3. Других процессов ядро по своей инициативе не запускает, этим занимается сам BUP, а также отдельный модуль LOADMGR, к нему вернемся позже. Назначение BUP (platform BringUP) — это инициализация всего аппаратного окружения платформы (в том числе процессора), выполнение первичных функций управления энергопитанием (например, запуск системы по нажатию кнопки включения) и запуск все остальных процессов ME. Таким образом, можно с уверенностью говорить, что PCH в 100-й серии и выше просто физически не имеют возможности запуска без корректной прошивки ME. Во-первых, BUP инициализирует контроллер управления энергопитанием (power management controller, PMC) и ICC-контроллер. Во-вторых — запускает целую вереницу процессов; часть из них «жестко прошита» в коде (SYNCMAN, PM, VFS), а другая часть содержится в InitScript (аналог автозапуска), который хранится в заголовке тома FTPR и защищен цифровой подписью.

Рисунок 7. Запуск SYNCMAN и PM

Таким образом, BUP считывает InitScript и запускает все процессы, которые удовлетворяют типу запуска ME и являются IBL-процессами.

Рисунок 8. Обработка InitScript

Рисунок 9. Список модулей c флагом IBL

В случае если запуск процесса не удался, BUP не будет запускать систему или переведет ее в Recovery режим, в котором произойдет автоматическое отключение питания после нескольких десятков минут. Как можно видеть на иллюстрации, последним в списке IBL-процессов является LOADMGR. Именно он дает старт оставшимся процессам, но в отличие от BUP, если в процессе запуска модуля происходит ошибка, LOADMGR просто перейдет к следующему.

Таким образом, первый вариант ограничить функционирование Intel ME — удалить все модули, которые не имеют флаг IBL в InitScript, что позволит существенно уменьшить размер прошивки. Но первоначально мы хотели выяснить, что происходит с ME в режиме HAP. Для этого рассмотрим программную модель BUP подробнее.

Рисунок 10. Схема запуска модулей в ME

BringUP

Если присмотреться к алгоритму работы модуля BUP, можно сказать, что внутри него реализован классический конечный автомат. Выполнение функционально разделено на две составляющие: стадии инициализации (представляют собой тот самый конечный автомат) и выполнение сервисных запросов других процессов после инициализации системы. Число стадий инициализации разное, в зависимости от платформы и SKU (TXE, CSME, SPS, consumer, corporate), но основные, общие для всех версий, все же можно выделить.

Первая стадия

На начальной стадии происходит создание внутренней диагностической файловой системы sfs (SUSRAM FS — файловая система, расположенная в энергозависимой памяти), считывание конфигурации, и, самое главное, получение информации от PMC о том, что привело к данному старту — включение питания платформы, глобальный перезапуск всей платформы, перезапуск только ME или же пробуждение из состояния сна. Эта стадия называется boot flow determination. От нее зависят последующие стадии работы конечного автомата инициализации. Кроме того, поддерживаются несколько режимов работы: нормальный и набор сервисных режимов, при которых ME штатно не функционирует — HAP, HMRFPO, TEMP_DISABLE, RECOVERY, SAFE_MODE, FW_UPDATE и FD_OVERRIDE.

Вторая стадия

На следующей стадии происходят инициализация ICC-контроллера и загрузка ICC-профиля (отвечает за тактовые частоты основных потребителей), инициализация Boot Guard и начало циклического опроса подтверждения запуска процессора.

Третья стадия

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

Четвертая стадия

На этой стадии происходит инициализация внутреннего оборудования. Также BUP запускает цикл опроса heci (специального устройства, предназначенного для получения команд от BIOS или операционной системы) на предмет получения DID (DRAM Init Done message) от BIOS. Именно это сообщение позволяет ME понять, что основной BIOS инициализировал оперативную память и зарезервировал для ME специальный регион, UMA, и после этого перейти к следующей стадии.

Пятая стадия

Как только DID получен, BUP, в зависимости от режима работы, который определяется по разным составляющим, либо запускает IBL-процессы из InitScript (при нормальном режиме работы), либо зависает в цикле, выйти из которого он может только при получении сообщения от PMC, например, в результате запроса на перезагрузку или выключение системы.

Именно на этой стадии мы и находим обработку HAP, причем в этом режиме BUP не выполняет InitScript, а зависает. Таким образом, остальная последовательность действий при нормальном режиме работы не имеет отношения к HAP и нами рассматриваться не будет. Главное, что хочется отметить: в режиме HAP BUP выполняет всю инициализацию платформы (ICC, Boot Guard), но не запускает основные процессы ME.

Рисунок 11. Определение режима HAP

Рисунок 12. Перевод ME в пятую стадию, что равноценно зависанию

Рисунок 13. Пятая стадия

Установка HAP-бита

Исходя из вышесказанного, второй вариант отключения состоит в установке HAP-бита и удалении или повреждении всех модулей, кроме тех, которые необходимы BUP для старта — RBE, KERNEL, SYSLIB, BUP. Сделать это можно просто убрав их из CPD-раздела FTPR и пересчитав контрольную сумму заголовка CPD (подробнее структура прошивки ME описана тут).

Остается еще один вопрос: как установить этот бит? Можно воспользоваться конфигурационными файлами FIT и определить, где он расположен в образе, но есть путь проще. Если открыть FIT, то в секции ME Kernel можно найти некий параметр Reserved. Именно этот бит и отвечает за включение режима HAP.

Рисунок 14. Бит активации режима HAP

HAP и Boot Guard

Нами также был найден код в BUP, который при активированном режиме HAP устанавливает дополнительный бит в политиках Boot Guard. К сожалению, выяснить, чем управляет этот бит, нам пока не удалось.

Рисунок 15. Установка дополнительного бита для Boot Guard

Поддержка ME 11 в me_cleaner

Пока эта статья готовилась к печати, разработчики обновили me_cleaner, в результате чего он стал так же удалять из образов все модули, кроме RBE, KERNEL, SYSLIB и BUP, но без установки HAP-бита, что вводит ME в режим «TemporaryDisable». Нам стало любопытно, что происходит при таком подходе.

Мы выяснили, что удаление разделов с файловой системой ME приводит к ошибке при чтении файла cfg_rules. Данный файл содержит ряд различных настроек системы. Среди них, как мы полагаем, есть флаг, который мы назвали «bup_not_temporary_disable». Если он не установлен, вся подсистема переводится в режим TemporaryDisable, а так как этот флаг – глобальная переменная, по умолчанию инициализированная нулем, то ошибка чтения расценивается как конфигурация, требующая отключения.

Отметим также, что мы проверили также прошивки от серверной и мобильной версии ME (SPS 4.x и TXE 3.x). В серверной версии этот флаг всегда устанавливается в 1, а в мобильно не анализируется. Из вышесказанного следует, что данный способ не сможет работать на серверных и мобильных версиях (Apollo Lake) ME.

Рисунок 16. Чтение файла cfg_rules

Вместо заключения

Таким образом, мы нашли недокументированный PCH strap, который позволяет перевести Intel ME в режим отключения на ранней стадии. Хотя физическое удаление модулей из образа с сохранением работоспособности неявно доказывает, что этот режим производит отключение ME, бинарный анализ не оставляет поводов для сомнений. C большой долей уверенности можно сказать, что выйти из этого режима Intel ME уже не в состоянии, так как в модулях RBE, KERNEL и SYSLIB не найдено кода, который позволяля бы это осуществлять. Также мы считаем, что ROM, интегрированный в PCH, практически не отличается от ROMB, в котором тоже не найдено ничего похожего. Таким образом, HAP позволит защититься от уязвимостей, присутствующих во всех модулях, кроме RBE, KERNEL, SYSLIB, ROM и BUP, но, к сожалению, от эксплуатации ошибок на более ранних этапах этот режим не предохранит.

Мы ознакомили представителей Intel с деталями исследования. Их ответ подтвердил нашу догадку о связи недокументированного режима с программой High Assurance Platform. С разрешения компании приведем отрывок из ответа:

Мы полагаем, что данный механизм — удовлетворение обычной просьбы любой правительственной службы, которая хочет уменьшить вероятность утечки по побочным каналам. Но остается главный вопрос: как HAP влияет на функционирование Boot Guard? Из-за закрытости этой технологии ответить на этот вопрос пока не представляется возможным, но мы надеемся, что в скором будущем нам это удастся.

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

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

В ходе исследования внутренней архитектуры Intel Management Engine (ME) 11-й версии был обнаружен механизм, отключающий эту технологию после инициализации оборудования и запуска основного процессора. О том, как мы нашли этот недокументированный режим, и о его связи с государственной программой построения доверительной платформы High Assurance Platform (HAP) мы расскажем в этой статье.

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

Введение

Intel Management Engine — это закрытая технология, которая представляет собой интегрированный в микросхему Platform Controller Hub (PCH) микроконтроллер с набором встроенных периферийных устройств. Именно через PCH проходит почти все общение процессора с внешними устройствами, следовательно Intel ME имеет доступ практически ко всем данным на компьютере и возможность исполнения стороннего кода позволяет полностью скомпрометировать платформу. Такие безграничные возможности привлекают исследователей не первый год, но сейчас интерес к технологии Intel ME значительно вырос. Одной из причин этого является переход данной подсистемы на новую аппаратную (x86) и программную (доработанный MINIX в качестве операционной системы) архитектуру. Применение платформы x86 позволяет использовать всю мощь средств анализа бинарного кода, что ранее было затруднительно, так как до 11-й версии использовалось ядро с малораспространенной системой команд — ARC. К сожалению, анализ Intel ME 11-й версии был затруднен тем, что исполняемые модули упакованы кодом Хаффмана с неизвестными таблицами. Но нашей исследовательской группе (Дмитрий Скляров, Марк Ермолов, Максим Горячий) удалось их восстановить (утилиту для распаковки образов можно найти на нашей странице в GitHub).

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

Как выключить ME

Как выключить ME — этот вопрос часто задают некоторые владельцы компьютеров x86-архитектуры. Тема деактивации неоднократно поднималась, в том числе и исследователями нашей компании.

Актуальности этому вопросу добавляет недавно обнаруженная критическая (9,8 из 10) уязвимость в Intel Active Management Technology (AMT) — технологии, которая базируется на Intel ME.

Сразу огорчим читателя — полностью выключить ME на современных компьютерах невозможно. Это связано прежде всего с тем, что именно эта технология отвечает за инициализацию, управление энергопотреблением и запуск основного процессора. Сложности добавляет и тот факт, что часть кода «жестко прошита» внутри микросхемы PCH, которая выполняет функции южного моста на современных материнских платах. Основным средством энтузиастов, которые «борются» с данной технологией, является удаление всего «лишнего» из образа flash-памяти при сохранении работоспособности компьютера. Но сделать это не так просто, так как, если встроенный в PCH код не найдет во flash-памяти модули ME или определит, что они повреждены, система запущена не будет. Уже несколько лет в сети развивается проект me_cleaner, в рамках которого доступна специальная утилита, позволяющая удалить большую часть образа и оставить только жизненно необходимые для основной системы компоненты. Но даже если система запустилась, радоваться рано — приблизительно через 30 минут может произойти автоматическое отключение, так как при некоторых сбоях ME переходит в Recovery-режим, в котором не функционирует больше некоторого фиксированного времени. В итоге процесс очистки усложняется. Например, до 11-й версии удавалось уменьшить размер образа до 90 KБ, но в 11-й — уже только до 650 КБ.

Секреты в QResource

Intel дает производителям материнских плат возможность задать небольшое количество параметров ME. Для этого компания предоставляет производителям оборудования специальный набор программного обеспечения, в который входят такие утилиты, как Flash Image Tool (FIT) для настройки параметров ME и Flash Programming Tool (FPT), реализующая поддержку программирования flash-памяти напрямую через встроенный SPI-контроллер. Данные программы недоступны конечному пользователю, но их без труда можно найти в интернете. Из этих утилит можно извлечь большое количество файлов формата XML (подробное Intel ME: The Way oftheStatic Analysis), изучение которых позволяет узнать много интересного: структуру прошивки ME и описание PCH strap — специальных конфигурационных битов для различных подсистем, интегрированных в микросхему PCH.

Нас заинтересовало одно из таких полей с именем «reserve_hap», так как напротив него имелся комментарий — High Assurance Platform (HAP) enable.

Поиск в Google не был долгим. Буквально вторая ссылка говорит, что такое название носит программа по созданию доверительных платформ, связанная с Агентством национальной безопасности (АНБ) США. Презентацию с описанием программы можно найти тут. Нашей первой мыслью было поставить этот бит и посмотреть, что будет. Это может сделать любой желающий, если у него есть SPI-программатор или доступ в Flash Descriptor (на многих материнских платах некорректно выставлены права доступа к регионам flash-памяти).

После загрузки платформы утилита meinfo сообщает странный статус — Alt Disable Mode. Беглые проверки показали, что ME не отвечает на команды и никак не реагирует на воздействия из операционной системы. Мы решили разобраться, как система переходит в этот режим и что он означает. К этому времени у нас уже была проанализирована основная часть модуля BUP, который отвечает за начальную инициализацию платформы и, исходя из вывода meinfo, устанавливает этот статус. Для понимания алгоритма работы BUP необходимо более подробно описать программное окружение Intel ME.

Программная часть Intel ME 11

Начиная с PCH 100-й серии компания Intel полностью переработала эту микросхему. Был осуществлен переход на новую архитектуру встроенных микроконтроллеров — с ARCompact компании ARC на x86. За основу был выбран 32-битный микроконтроллер Minute IA (MIA), который используется в микрокомпьютерах Intel Edison и SoC Quark. Он основан на дизайне весьма старого, скалярного микропроцессора Intel 486 с добавлением системы команд (ISA) от процессора Pentium. Однако для PCH компания выпускает данное ядро с применением 22-нм полупроводниковой технологии, получая высокую энергоэффективность микроконтроллера. Таких ядер в новом PCH три: Management Engine (ME), Integrated Sensors Hub (ISH) и Innovation Engine (IE). Последние два могут активироваться и деактивироваться в зависимости от модели PCH и целевой платформы, а ME-ядро работает всегда.

Такие глобальные изменения потребовали изменения и программной составляющей ME. В частности, в качестве основы для операционной системы был выбран MINIX (ранее ThreadX RTOS). Теперь прошивка ME включает полноценную операционную систему со своими процессами, потоками, диспетчером памяти, драйвером аппаратных шин, файловой системой и многим другим. В ME интегрирован аппаратный криптопроцессор, поддерживающий алгоритмы SHA256, AES, RSA, HMAС. Доступ к оборудованию для пользовательских процессов производится посредством локальной таблицы дескрипторов (LDT). Через LDT организовано также и адресное пространство процесса — оно является всего лишь частью глобального адресного пространства ядра, границы которого заданы в локальном дескрипторе. Таким образом, ядру не нужно переключаться на память разных процессов (меняя каталоги страниц), как, например, в Microsoft Windows или Linux.

На этом закончим обзор программного окружения Intel ME и рассмотрим более подробно, как происходит загрузка операционной системы и модулей.

Стадии загрузки Intel ME

Запуск начинается с программы ROM, которая содержится во встроенной в PCH статической памяти. К сожалению, способ прочесть или перезаписать эту память широкой общественности не известен, но в интернете можно найти «предпродажные» версии прошивки ME с разделом ROMB (ROM BYPASS), который, по нашему предположению, дублирует функционал ROМ. Таким образом, исследуя такие прошивки, можно восстановить основной функционал программы первичной инициализации.

Изучение ROMB позволяет понять назначение ROM — выполнение начальной инициализации оборудования, например SPI-контроллера, проверка цифровой подписи заголовка раздела FTPR, загрузка модуля RBE, который расположен уже во flash-памяти. RBE, в свою очередь, проверяет контрольные суммы модулей KERNEL, SYSLIB, BUP и передает управление на точку входа в ядро.

Следует заметить, это эти три сущности — ROM, RBE и KERNEL — выполняются на нулевом уровне привилегий (в ring-0) ядра MIA.

Первый процесс, который создается ядром, — это BUP, который уже выполняется в своем адресном пространстве, в ring-3. Других процессов ядро по своей инициативе не запускает, этим занимается сам BUP, а также отдельный модуль LOADMGR, к нему вернемся позже. Назначение BUP (platform BringUP) — это инициализация всего аппаратного окружения платформы (в том числе процессора), выполнение первичных функций управления энергопитанием (например, запуск системы по нажатию кнопки включения) и запуск все остальных процессов ME. Таким образом, можно с уверенностью говорить, что PCH в 100-й серии и выше просто физически не имеют возможности запуска без корректной прошивки ME. Во-первых, BUP инициализирует контроллер управления энергопитанием (power management controller, PMC) и ICC-контроллер. Во-вторых — запускает целую вереницу процессов; часть из них «жестко прошита» в коде (SYNCMAN, PM, VFS), а другая часть содержится в InitScript (аналог автозапуска), который хранится в заголовке тома FTPR и защищен цифровой подписью.

Таким образом, BUP считывает InitScript и запускает все процессы, которые удовлетворяют типу запуска ME и являются IBL-процессами.

В случае если запуск процесса не удался, BUP не будет запускать систему или переведет ее в Recovery режим, в котором произойдет автоматическое отключение питания после нескольких десятков минут. Как можно видеть на иллюстрации, последним в списке IBL-процессов является LOADMGR. Именно он дает старт оставшимся процессам, но в отличие от BUP, если в процессе запуска модуля происходит ошибка, LOADMGR просто перейдет к следующему.

Таким образом, первый вариант ограничить функционирование Intel ME — удалить все модули, которые не имеют флаг IBL в InitScript, что позволит существенно уменьшить размер прошивки. Но первоначально мы хотели выяснить, что происходит с ME в режиме HAP. Для этого рассмотрим программную модель BUP подробнее.

BringUP

Если присмотреться к алгоритму работы модуля BUP, можно сказать, что внутри него реализован классический конечный автомат. Выполнение функционально разделено на две составляющие: стадии инициализации (представляют собой тот самый конечный автомат) и выполнение сервисных запросов других процессов после инициализации системы. Число стадий инициализации разное, в зависимости от платформы и SKU (TXE, CSME, SPS, consumer, corporate), но основные, общие для всех версий, все же можно выделить.

Первая стадия

На начальной стадии происходит создание внутренней диагностической файловой системы sfs (SUSRAM FS — файловая система, расположенная в энергозависимой памяти), считывание конфигурации, и, самое главное, получение информации от PMC о том, что привело к данному старту — включение питания платформы, глобальный перезапуск всей платформы, перезапуск только ME или же пробуждение из состояния сна. Эта стадия называется boot flow determination. От нее зависят последующие стадии работы конечного автомата инициализации. Кроме того, поддерживаются несколько режимов работы: нормальный и набор сервисных режимов, при которых основной функционал ME не выполняется — HAP, HMRFPO, TEMP_DISABLE, RECOVERY, SAFE_MODE, FW_UPDATE и FD_OVERRIDE.

Вторая стадия

На следующей стадии происходят инициализация ICC-контроллера и загрузка ICC-профиля (отвечает за тактовые частоты основных потребителей), инициализация Boot Guard и начало циклического опроса подтверждения запуска процессора.

Третья стадия

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

Четвертая стадия

На этой стадии происходит инициализация внутреннего оборудования. Также BUP запускает цикл опроса heci (специального устройства, предназначенного для получения команд от BIOS или операционной системы) на предмет получения DID (DRAM Init Done message) от BIOS. Именно это сообщение позволяет ME понять, что основной BIOS инициализировал оперативную память и зарезервировал для ME специальный регион, UMA, и после этого перейти к следующей стадии.

Пятая стадия

Как только DID получен, BUP, в зависимости от режима работы, который определяется по разным составляющим, либо запускает IBL-процессы из InitScript (при нормальном режиме работы), либо зависает в цикле, выйти из которого он может только при получении сообщения от PMC, например, в результате запроса на перезагрузку или выключение системы.

Именно на этой стадии мы и находим обработку HAP, причем в этом режиме BUP не выполняет InitScript, а зависает. Таким образом, остальная последовательность действий при нормальном режиме работы не имеет отношения к HAP и нами рассматриваться не будет. Главное, что хочется отметить: в режиме HAP BUP выполняет всю инициализацию платформы (ICC, Boot Guard), но не запускает основные процессы ME.

Установка HAP-бита

Исходя из вышесказанного, второй вариант отключения состоит в установке HAP-бита и удалении или повреждении всех модулей, кроме тех, которые необходимы BUP для старта — RBE, KERNEL, SYSLIB, BUP. Сделать это можно просто убрав их из CPD-раздела FTPR и пересчитав контрольную сумму заголовка CPD (подробнее структура прошивки ME описана тут).

Остается еще один вопрос: как установить этот бит? Можно воспользоваться конфигурационными файлами FIT и определить, где он расположен в образе, но есть путь проще. Если открыть FIT, то в секции ME Kernel можно найти некий параметр Reserved. Именно этот бит и отвечает за включение режима HAP.

HAP и Boot Guard

Нами также был найден код в BUP, который при активированном режиме HAP устанавливает дополнительный бит в политиках Boot Guard. К сожалению, выяснить, чем управляет этот бит, нам пока не удалось.

Поддержка ME 11 в me_cleaner

Пока эта статья готовилась к печати, разработчики обновили me_cleaner, в результате чего он стал так же удалять из образов все модули, кроме RBE, KERNEL, SYSLIB и BUP, но без установки HAP-бита, что вводит ME в режим «TemporaryDisable». Нам стало любопытно, что происходит при таком подходе.

Мы выяснили, что удаление разделов с файловой системой ME приводит к ошибке при чтении файла cfg_rules. Данный файл содержит ряд различных настроек системы. Среди них, как мы полагаем, есть флаг, который мы назвали «bup_not_temporary_disable». Если он не установлен, вся подсистема переводится в режим TemporaryDisable, а так как этот флаг – глобальная переменная, по умолчанию инициализированная нулем, то ошибка чтения расценивается как конфигурация, требующая отключения.

Отметим также, что мы проверили также прошивки от серверной и мобильной версии ME (SPS 4.x и TXE 3.x). В серверной версии этот флаг всегда устанавливается в 1, а в мобильно не анализируется. Из вышесказанного следует, что данный способ не сможет работать на серверных и мобильных версиях (Apollo Lake) ME.

Вместо заключения

Таким образом, мы нашли недокументированный PCH strap, который позволяет перевести Intel ME в режим отключения основного функционала на ранней стадии. Хотя физическое удаление модулей из образа с сохранением работоспособности неявно доказывает, что этот режим производит отключение ME, бинарный анализ не оставляет поводов для сомнений. C большой долей уверенности можно сказать, что выйти из этого режима Intel ME уже не в состоянии, так как в модулях RBE, KERNEL и SYSLIB не найдено функционала, который позволял бы это осуществлять. Также мы считаем, что ROM, интегрированный в PCH, практически не отличается от ROMB, в котором тоже не найдено ничего похожего. Таким образом, HAP позволит защититься от уязвимостей, присутствующих во всех модулях, кроме RBE, KERNEL, SYSLIB, ROM и BUP, но, к сожалению, от эксплуатации ошибок на более ранних этапах этот режим не предохранит.

Мы ознакомили представителей Intel с деталями исследования. Их ответ подтвердил нашу догадку о связи недокументированного режима с программой High Assurance Platform. С разрешения компании приведем отрывок из ответа:

Мы полагаем, что данный механизм — удовлетворение обычной просьбы любой правительственной службы, которая хочет уменьшить вероятность утечки по побочным каналам. Но остается главный вопрос: как HAP влияет на функционирование Boot Guard? Из-за закрытости этой технологии ответить на этот вопрос пока не представляется возможным, но мы надеемся, что в скором будущем нам это удастся.

Как отключить intel me

Для отключения модулей ядра ОС, работающих с Intel ME, необходимо удалить эти модули из ядра, и запретить их загрузку.

Удаление модулей можно сделать командами:

rmmod mei_wdt
rmmod mei_me
rmmod mei

Запретить загрузку модулей можно с помощью механизма "чёрного списка" модулей, создав в каталоге /etc/modprobe.d/ файл с именем, например , /etc/modprobe.d/mei.conf, и записать в него следующие строчки с названиями модулей:

blacklist mei_wdt
blacklist mei_me
blacklist mei

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

ME Status : 0x1e000245
ME Status 2 : 0x60000006

ME: FW Partition Table : OK
ME: Bringup Loader Failure : NO
ME: Firmware Init Complete : YES
ME: Manufacturing Mode : NO
ME: Boot Options Present : NO
ME: Update In Progress : NO
ME: Current Working State : Normal
ME: Current Operation State : M0 with UMA
ME: Current Operation Mode : Normal
ME: Error Code : No Error
ME: Progress Phase : Host Communication
ME: Power Management Event : Clean Moff->Mx wake
ME: Progress Phase State : Host communication established

PCI READ [bc] : 0x000000bc
ME: Extend SHA-256: 193f2d686de7ecee80a98a140b2084bd084b33b06e05640f39f5c0d62d36bb69

ME seems okay on this board
WRITE [00] : CB: 0x80040007
WRITE [00] : CB: 0x000002ff
ME: timeout waiting for data: expected 8, available 6
ME: GET FW VERSION message failed
WRITE [00] : CB: 0x80080007
WRITE [00] : CB: 0x00000203
WRITE [00] : CB: 0x00000000
READ [08] : CB: 0x800d0007
READ [08] : CB: 0x00008203
READ [08] : CB: 0x00000000
READ [08] : CB: 0xde5c4704
READ [08] : CB: 0x0007000d
ME Capability: Full Network manageability : ON
ME Capability: Regular Network manageability : ON
ME Capability: Manageability : ON
ME Capability: Small business technology : OFF
ME Capability: Level III manageability : OFF
ME Capability: IntelR Anti-Theft (AT) : OFF
ME Capability: IntelR Capability Licensing Service (CLS) : ON
ME Capability: IntelR Power Sharing Technology (MPC) : ON
ME Capability: ICC Over Clocking : ON
ME Capability: Protected Audio Video Path (PAVP) : ON
ME Capability: IPV6 : ON
ME Capability: KVM Remote Control (KVM) : ON
ME Capability: Outbreak Containment Heuristic (OCH) : ON
ME Capability: Virtual LAN (VLAN) : ON
ME Capability: TLS : OFF
ME Capability: Wireless LAN (WLAN) : ON
exiting

Некоторые мысли и ссылки на этот счет. Может где-то и на уровне капитана очевидность, но все-таки. Интересно мнение на этот счет.

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

Формально, это как бы полезная подсистема, которая позволяет пользователю (если все правильно настроить) удаленно управлять своим компьютером, используя аппаратные возможности: то есть, независимо от ОС. Однако кто еще кроме пользователя может? 🙂

То есть, это некое НЕЧТО, которое в принципе может делать что угодно в вашем компьютере.

Ссылки (так получилось, что на хабр):

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

Собственно мысли по нейтрализации

Если допустить, что отключить троянца от Intel или AMD (там тоже есть аналогичное — AMD PSP — Platform Security Processor) не удается, то что можно сделать для затрудения его работы без модификаций прошивок? Конечно, лучше всего не использовать троянское железо, но что поделать, если это слишком сложно.

0) Использовать OpenSource операционные системы. Они если и не защищают от этих технологий, то по крайней мере, и не помогают специально, чего вполне можно ожидать от винды или мака.

1) Шифрование диска или хотя бы отдельных файлов/каталогов.

Эта мера помешает автоматически дистанционно читать или модифицировать содержимое винчестера. Так как хардтроян работает вне операционной системы, он столкнется с невозможностью напрямую прочитать информацию с диска. Хотя в принципе, от него можно ожидать и извлечения из памяти ключей, но это уже более сложный уровень и например, небольшая модификация алгоритмов может обломать. Хотя с просто чтением из памяти ничего нельзя поделать. Во всяком случае мне неизвестно, чтобы Linux или BSD могли работать с постоянно зашифрованной RAM. Однако, если бы это было реализовано, оно сильно бы подгадило хардтроянцам.

2) Перекрыть на внешнем файрволе tcp порты 5900, 16992, 16993, 16994, 16995.

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

3) Использовать не-интеловскую сетевую карту.

Тоже не Бог весть чего дает, но как и в случае с OpenSource операционками хотя бы можно ожидать, что дополнительных возможностей не будет. В любом случае, чем более нестандартная кофигурация, тем сложнее работать хардтрояну. Так что, не лишнее и чего-нибудь навроде сетевого соединения через Firewire устроить.

4) Сетевые соединения в интернет или куда-то еще делать исключительно через VPN (или другой защищенный коннект) на сервер-файрвол с неинтеловской архитектурой или старый до 2006-го года комп.

Смысл в том, что хардтроян может мониторить трафик (например, для своей активации) или передавать что-то независимо от ОС, но ему затруднительно незаметно влезть прямо в защищенный поток данных. В то же время, если на файрволе связь с защищаемым компьютером исключительно через VPN это помешает несанкционированной связи с внешним миром. Более того, попытки такой связи можно будет детектировать. Даже если с какого-то внешнего ресурса что-то придет внутри пользовательских данных для работы с Intel Me (например, внутри якобы обычной картинки), туннель невозможно будет установить прозрачно для ОС. Во всяком случае без наличия уязвимостей в ней.

Многие пользователи после установки Windows 10 сталкиваются с необходимостью установки актуального драйвера для Intel Managemet Engine Components. Что это такое, и действительно ли оно так необходимо компьютеру? Ответ на этот вопрос подразумевает изучение огромного количества информации. В том числе, технической документации. Поэтому в данной статье все объяснено простым языком, доступным каждому пользователю. Сначала стоит разобрать историю возникновения этого компонента, а потом поговорить о его предназначении.

История создания Intel ME Components

Вам будет интересно: Программа для рисования пиксель арта. Pixel Art Studio, редактор пиксельной графики

Производитель процессоров под брендом Intel начал внедрять этот компонент в изделия еще в 2008 году. Тогда эта технология казалась инновационной. Примерно в то же время в AMD запустили аналог, который назвали AMD Secure Technology. У синего бренда все шло отлично. Хотя не было предоставлено никакой вменяемой документации по данной технологии.

Так продолжалось вплоть до 2017 года. И как раз в этом году один хакер выявил серьезную уязвимость в Intel Management Engine Components. Что это за уязвимость? Можно сказать, что некий нехороший дядя при помощи специального кода мог заставить данный компонент открыть доступ к процессору. В итоге можно было управлять ЦП удаленно.

Это была пресловутая ошибка Spectre Meltdown. В свое время она наделала много шума. Генеральный директор «Интел» с перепугу даже продал контрольный пакет акций компании, чем привел в панику все инвестиционные компании в купе с биржами. Но все обошлось, хотя репутация у «Интел» оказалась подмоченной.

Последствия уязвимости в Intel ME

Естественно, скандал был неслыханный. «Интел» пришлось долго оправдываться, зализывать раны и извиняться. Но главное — эта оплошность заставила синих предоставить сменяемую документацию об Intel Management Engine Components. Что это за технология такая, стало понятно. Также стало понятно, почему получилось взломать систему защиты.

После эпического провала «Интел», ребята из АМД начали тестировать свою систему, ведь она была основана на наработках Intel Management Engine Components. Что это за уязвимость — они понятия не имели, но и в чипах от АМД со временем была обнаружена ровно такая же уязвимость. Но они успели ее оперативно заштопать и избежать скандала. Это позволило красному бренду занять лидирующие позиции на рынке процессоров. Главное — теперь можно понять, что представляет собой данный компонент.

Что такое Intel ME Components?

Итак, Intel Managemet Engine Components. Что это такое? По сути, это небольшой микрочип, который внедряется в процессор и регулирует его работу. Сами драйверы нужны для того, чтобы обеспечивать адекватную работу этого компонента. Ранее эта микросхема внедрялась в материнские платы. Но с тех времен, как большинство компьютеров перешли на одночиповую систему, микросхема стала внедряться в сами центральные процессоры. По мнению «Интел», такое положение вещей должно было повысить безопасность компьютера.

Кстати, о безопасности: у «Интел» были все основания думать, что МЕ способна защитить компьютер от различных атак. Дело в том, что МЕ управляет работой центрального процессора в различных режимах, даже при полностью выключенном компьютере. И именно эта технология отвечает за удаленное управление процессором. Задумка хорошая, но проблема в том, что сам компонент оказался дырявым.

За что отвечает Intel ME?

Программа Intel(R) Management Engine Components отвечает за правильную работу центрального процессора. Причем, имеется в виду не только включенный компьютер. Данная технология позволяет контролировать процессор и в том случае, если компьютер или ноутбук полностью выключены. Также компонент управляет работой процессора в режиме сна или в состоянии гибернации. В общем, этот компонент необходим, от него никуда не деться.

Также на базе Intel ME реализованы другие возможности. Так, к примеру, при помощи этой технологии осуществляется возможность удаленного управления компьютером, что весьма полезно для системных администраторов. Технология Intel AT («противоугонный» модуль) тоже основывается на Intel(R) Management Engine Components. Совет: лучше установить необходимые драйвера и ни в коем случае не трогать настройки, иначе весь компьютер может выйти из строя.

Можно ли отключить Intel ME?

Теперь стоит рассмотреть подробнее работу с Intel(R) Management Engine Components. Как отключить данную функцию? Обычному пользователю она абсолютно не нужна. Стоит сразу отметить, что полное отключение опции невозможно. Некоторые хакеры разработали методику блокирования отдельных элементов, но от этого никакого толка не будет. А если заняться этим самому, то ничего хорошего не выйдет. ПК просто откажется запускаться, ведь Intel ME контролирует работу центрального процессора.

Но что с драйверами Intel Management Engine Components? Можно ли отключить некоторые опции программно? Можно. Простым удалением драйвера вместе с сопутствующим программным обеспечением. Но в этом случае может упасть (и довольно существенно) общая производительность процессора. Также весьма вероятна неадекватная работа «камня» в режиме сна. Не стоит забывать и о гибернации. В общем, соответствующие драйверы можно удалить, но делать этого не рекомендуется.

Заключение

Итак, в данной статье рассмотрен Intel Management Engine Components. Что это весьма важная подсистема центрального процессора, уже понятно. Без нее нормальное функционирование чипа невозможно. Однако некоторые «очумелые ручки» активно ищут способы отключения данной технологии. Делать этого ни в коем случае не нужно, так как последствия этого действия могут быть непредсказуемыми. В худшем случае — пользователь лишится своей дорогостоящей машины. В лучшем — система безопасности просто не даст «вырубить» данный компонент. В любом случае, делать этого не нужно. Лучше установить все необходимые драйверы, поставить актуальное программное обеспечение и не трогать данную опцию ни под каким видом. Все равно нормальной работе процессора и всех компонентов системы она не мешает.

Мне несколько раз в течение дня и каждый день, казалось бы, без шаблонов и процедур, мне представляется всплывающее окно из Intel Active Management Technology Profile Synchronization. В нем говорится о следующем: Intel PROSet/Wireless WiFi сконфигурировано для синхронизации профилей пользователей с Intel® Active Management Technology. Хотите синхронизировать.

  1. В BIOS функцияAdvance Chipset Feature -> Intel AMT(включена, отключена)
  2. CTRL+P для входа в меню AMT (Intel ME состояния управления (включено, отключено)
  3. В зависимости от модели HP (Hewlett-Packard) проверьте BIOS: расширенные возможности удаленного > управления > Active Management /Unconfigure AMT при следующей загрузке.

BIOS: базовая система ввода/вывода

Intel® Active Management Technology ИТ-менеджеры могут обнаружить, отремонтировать и защитить сетевые вычислительные ресурсы.

Вам нужна дополнительная помощь?

Оставьте отзыв

Информация о продукте и производительности

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

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

What Is Intel Management Engine Components And How To Disable It

In this post, we are going to discuss what is Intel Management Engine and its components, and whether our PC needs it or not.

What is Intel Management Engine#

The Intel Management Engine is an embedded microcontroller that comes inside some of Intel’s chipsets. It runs a very lightweight microkernel MINIX-based operating system which adds its own functionality and support for Intel processor-based computers. This engine is powered by the CMOS battery on the motherboard, therefore it is always powered on, even when many of the other system components are asleep, including the Power Supply Unit (PSU). This allows the engine to respond to Out Of Box (OOB) commands from the IT management console without having to wake up the rest of the system. The Intel Management Engine loads its code from system flash memory during system initialization. As a result, the Engine can run before the main operating system. The Intel Management Engine has access to secured portions of system memory for storing run-time data. This engine provides several different functions, such as monitoring Intel’s hardware installed on your PC, or reporting updates or issues with drives, and other useful information. There are a few benefits of the Intel Management Engine, such as the following:

It is independent of the OS power state, including many of the other system resources.It can respond to OOB commands from IT administrators without having to wake up the other system components.It enables the Windows OS to communicate with the engine directly via the HECI bus.The engine can detect when the computer is stolen/lost and secure the data or prevent the OS from loading through its anti-theft protection technology.

That said, this engine runs processes on your computer to perform its designation function, which you may come across under the name of “Intel Management Engine Components.” These often take up significant space on your hard drive and can take up other resources as well, like RAM, processor, and even the GPU. In that case, you can safely disable Intel Management Engine Components. However, since it is impossible to disable it completely, you can disable its components to save your system’s resources.

Disable Intel Active Management Technology (AMT) from BIOS#

Intel’s Active Management Technology (AMT) is a feature that some devices have (mostly servers) used to make the device manageable remotely. This is one of the features that utilize Intel Management Engine causing it to consume more system resources. However, if you do not use Intel AMT, you simply disable it from the computer’s BIOS. Here is how: Note: If you do not find the option, it is likely that your computer does not support it. Once disabled, boot normally into the Windows operating system and then check again if Intel Management Engine Components is still using your system resources. If you find that the problem persists, or the option to disable Intel AMT was missing in BIOS, you can then try disabling the Intel Management Engine Interface driver.

Disable Intel Management Engine Interface Driver#

The Intel Management Engine Interface driver helps the operating system communicate with the Intel Management Engine firmware. If you remove the driver, there won’t be any communication between the two. That said, we only recommend that you remove this driver if you do not use Intel AMT. Follow these steps to disable the Intel Management Engine Interface driver: Disabling the interface driver would not harm your computer and can be re-enabled at any point in time. If prompted with a warning, click Yes to proceed with disabling. After disabling the Intel Management Engine Interface driver, check to see if Intel Management Engine Components is still consuming significant system resources. If it is, then you can try to update the driver instead of disabling it.

Install/Update Intel Management Engine Driver#

The Intel Management Engine driver is not universal and each device has a customized version of it. Therefore, Intel does not provide this driver for us to install. Instead, this driver is provided by the computer manufacturer. That said, Intel has accumulated a list of the support website for different OEMs from where you can download the Management Engine driver for your respective devices. You can open this list by clicking on the following link: List of computer manufacturers and their driver’s websitesIntel’s list of OEMs From here, open the “Driver & Software” website for your PC manufacturer and then download the latest “Intel Management Engine Driver” from there. Also see:

What Are Chipset Drivers And Why You Should Update ThemWhat Is DNS-Over-HTTPS And How To Enable It On Your Device (Or Browser)What Is Network Stack In UEFI/BIOSWhat Is BitLocker Recovery Key and How to Find ItWhat Is Tamper Protection In Windows 11 And How To Disable It

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *