Алгоритм - Учебный центр

Версия сайта для слабовидящих
Заполните форму ниже! Мы вам перезвоним!

Нажав на кнопку "Отправить", Я даю своё согласие на автоматизированную обработку указанной информации, распространяющейся на осуществление всех действий с ней, включая сбор, передачу по сетям связи общего назначения, накопление, хранение, обновление, изменение, использование, обезличивание, блокирование, уничтожение и обработку посредством внесения в электронную базу данных, систематизации, включения в списки и отчетные формы.


Подсистема Intel ME (Intel Management Engine).

Подсистема Intel ME (Intel Management Engine).

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

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

Intel Management Engine (Intel ME) — автономная подсистема, встроенная почти во все чипсеты процессоров Intel с 2008 года. Она состоит из проприетарной прошивки, исполняемой отдельным микропроцессором. Так как чипсет всегда подключен к источнику тока (батарейке или другому источнику питанию), эта подсистема продолжает работать даже когда компьютер отключен. Intel поясняет, что ME необходима для обеспечения максимальной производительности. Точный принцип работы по большей части недокументирован, а исходный код с помощью обфусцированого кода Хаффмана, таблица для которого хранится непосредственно в аппаратуре, поэтому сама прошивка не содержит информации для своего раскодирования. Компания AMD, также встраивает в свои процессоры аналогичную систему AMD Secure Technology (раньше называвшуюся Platform Security Proccessor), начиная с 2013 года.

Management Engine часто путают с Intel AMT. Технология AMT основана на ME, но доступна только для процессоров с технологией vPro. AMT позволяет владельцу удалённо администрировать компьютер, например включать или выключать его, устанавливать операционную систему. Однако ME устанавливается с 2008 года на все чипсеты Intel, вне зависимости от наличия на них AMT. В то время как технология AMT может быть отключена, нет официального документированного способа отключить ME.

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

Подсистема Intel Management Engine (ME) представляет собой дополнительный «скрытый» процессор, который присутствует во всех устройствах на базе чипсетов Intel (не только в PC и ноутбуках, но и в серверах). Среда исполнения ME никогда не «спит» и работает даже при выключенном компьютере (при наличии дежурного напряжения), а также имеет доступ к оперативной памяти, сетевому интерфейсу, USB контроллеру и встроенному графическому адаптеру.

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

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

Начиная с ME 11, в основе лежит 32-битный x86-совместимый процессор на технологии Intel Quark, с запущенной на нём операционной системой MINIX 3. Состояние ME хранится в разделе шины SPI, с использованием файловой системы EFFS (Embedded Flash File System).

Начиная с 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. Для этого компания предоставляет производителям оборудования специальный набор программного обеспечения, в который входят такие утилиты, как Flash Image Tool (FIT) для настройки параметров ME и Flash Programming Tool (FPT), реализующая поддержку программирования flash-памяти напрямую через встроенный SPI-контроллер. Данные программы недоступны конечному пользователю, но их без труда можно найти в интернете.

Выключить ME на современных компьютерах невозможно. Это связано прежде всего с тем, что именно эта технология отвечает за инициализацию, управление энергопотреблением и запуск основного процессора. Сложности добавляет и тот факт, что часть кода «жестко прошита» внутри микросхемы PCH, которая выполняет функции южного моста на современных материнских платах. Но компания Intel подтвердила, что ME содержит возможность для государственных органов, таких как АНБ, переключения в режим высокодоверенной платформы (High-Assurance Platform, HAP) сразу после загрузки. Этот режим выключает все функции ME. Он авторизован для использования только государственными органами и предполагается только для машины, произведённых для них. Однако оказалось, что в большинстве продаваемых на рынке компьютеров можно включить этот режим.

Intel Management Engine — это закрытая технология, которая представляет собой интегрированный в микросхему Platform Controller Hub (PCH) микроконтроллер с набором встроенных периферийных устройств. Именно через PCH проходит почти все общение процессора с внешними устройствами, следовательно Intel ME имеет доступ практически ко всем данным на компьютере и возможность исполнения стороннего кода.

При инициализации системы Intel® Management Engine загружает свой код из флэш-памяти системы. Это позволяет Intel® Management Engine работать до запуска основной операционной системы. Для хранения данных во время выполнения процессор управления Intel® имеет доступ к защищенной области системной памяти (в дополнение к небольшому количеству встроенной кэш-памяти для более быстрой и эффективной обработки).

Intel® ME выполняет различные задачи, пока система находится в спящем режиме, во время процесса запуска и когда ваша система работает. Без ME не возможна загрузка процессора. ME имеет полный доступ к памяти (без всякого ведома на то родительского ЦПУ); имеет полный доступ к TCP/IP стеку и может посылать и принимать пакеты независимо от операционной системы, обходя таким образом её файрволл. ME имеет свой MAC-адрес и IP-адрес для своего дополнительного интерфейса, с прямым доступом к контроллеру Ethernet. Каждый пакет Ethernet-траффика переадресуется в ME даже до достижения операционной системы хоста, причём такое поведение поддерживается многими контроллерами, настраиваемыми по протоколу MCTP.

Внутри ME-контроллера, помимо микропроцессора ARC/SPARC/x86 (рис. 1):

  • ME ROM – энергонезависимая неперезаписываемая память, в которой хранится стартовый код ME-контроллера;

  • ME SRAM – оперативная память используемая ME-контроллером при недоступности ME UMA, например, на ранних этапах работы;

  • кэш кода и кэш данных, для повышения производительности при работе с памятью;

  • C-Link (Controller Link) – шина, позволяющая ME-контроллеру взаимодействовать с периферийным аппаратным обеспечением в режимах S5 (System shutdown) / S3 (Sleep mode);

  • Различные аппаратные блоки:

- высокоточный таймер и WDT;

- контроллер прерываний;

- контроллеры памяти и DMA;

- интерфейс HECI/MEI;

- RNG, акселлератор криптографических функций и функций сжатия.

Рис. 1


Лицензия