Unlock intel qst что это

Обновлено: 07.07.2024

На прошедшей недавно конференции Black Hat Europe исследователи Positive Technologies Марк Ермолов и Максим Горячий рассказали об уязвимости в Intel Management Engine 11, которая открывает злоумышленникам доступ к большей части данных и процессов на устройстве.

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

1. Введение

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

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

1.1. Обзор Intel Management Engine 11

Детальное описание внутреннего устройства Intel ME и его компонентов можно найти в работах: [1], [3], [4]. Отметим, что, начиная с 2015 года в PCH было интегрировано процессорное ядро LMT набором команд х86. Такое ядро применяется в SOC Quark.


LMT2 IdCode ядра ME

C Intel Management Engine связано большое количество современных технологий Intel — Intel Active Management Technology, Intel Platform Trust Technology (fTPM), Intel Software Guard Extensions, Intel Protected Audio Video Path. Также ME является root of trust для технологий технологии Intel Boot Guard, которая не позволяет злоумышленнику внедрять свой код в UEFI. Основное назначение МЕ – начальная инициализация платформы, и запуск основного процессора. ME так же обладает практически безграничными возможности доступа к данным, которые обрабатываются на компьютере МЕ может перехватывать и модифицировать сетевые пакеты, изображение на видеокарте, имеет полный доступ к USB устройствам. Такие возможности означат, что, если злоумышленник получит возможность выполнять свой код внутри МЕ это будет означать новую эру зловредного программного обеспечения, которое невозможно обнаружить современными средствами защиты. Но к счастью за все 17 лет истории этой технологии было найдено всего 3 уязвимости (публично).

1.2. Публично известные уязвимости в Intel ME

1.2.1. Ring-3 Rootkits

Первая публичная уязвимость в Intel ME была найдена в 2009 году Alexander Tereshkin и Rafal Wojtczuk представили доклад на Black Hat Introducing Ring-3 Rootkits. Атака производилась через инъекцию кода в специализированную область памяти UMA, в которую МЕ выгружает неиспользованный в данный момент страницы памяти.

После оглашения результатов исследования Intel внедрил защиту UMA – теперь эта область шифруется AES-ом и для каждой страницы МЕ хранит ее контрольную сумму, которая проверяется при «возвращении» страницы в основную память МЕ.

1.2.2. Zero-Touch Provisioning

В 2010 году Vassilios Ververis представил атаку на реализацию МЕ в GM45. Используя режим конфигурирования «zero touch», он смог обойти авторизацию AMT.

1.2.3. Silent Bob is Silent

В мае 2017 году была опубликована уязвимость в системе авторизации AMT (CVE-2017-5689), которая позволяла неавторизованному пользователю получить полный доступ к основной системе на материнских платах с поддержкой технологии vPro.

Таким образом, до сегодняшнего времени была найдена только одна уязвимость (Ring-3 rootkits), которая позволяет выполнять произвольный код внутри Intel ME.

2. Векторы атак

Практически все данные, которые использует ME в своей работе либо явно, либо косвенно подписаны Intel. Но МЕ все-таки предоставляет некоторые возможности для взаимодействия с пользователем:

  • Локальный управляющий интерфейс — HECI
  • Сеть (только для vPro)
  • Память хоста (UMA)
  • SPI флеш
  • Внутренняя файловая система

2.1. HECI

2.2. Сеть (только vPro)

AMТ представляет собой один большой модуль, в который интегрировано огромное количество различных сетевых протоколов различного уровня, данный модуль содержит в себе большое количество legacy-кода, но присутствует только на системах бизнес-сегмента.

2.3. Аппаратная атака на SPI-интерфейс

В процессе изучения МЕ у нас возникла идея обойти проверку подписи с помощью эмулятора SPI-флеш. Это специализированное устройство, которое выглядело бы для PCH как обычная SPI-flash но при разных обращениях оно отправляет разные данные. Таким образом если вначлае контролируется подпись данных, а потом они перечитываются то можно провести атаку и внедрить свой код во внутрь МЕ. Найти таких ошибок в прошивке нам не удалось, данные вначале вычитываются, затем проверяется подпись. При повторных обращениях контролируется их идентичность тем данным, которые были получены при первом чтении.

2.4. Внутренняя файловая система

Intel Management Engine использует SPI flash в качестве основного файлового хранилища с собственной файловой системой. C одной стороны файловая система имеет достаточно сложную структуру [6], с другой многие привилегированные процессы хранят именно здесь свои конфигурационные фалы. Исходя из чего, файловая система показалась нам наиболее перспективным местом для воздействия на ME.

Следующим шагом в поиске уязвимости был выбор бинарного модуля.

2.5. Выбор модуля для анализа

В операционной системе МЕ реализована похожая на применяемую в Unix модель разграничения и контроля доступа, с той разницей, что в качестве субъектов системы выступают процессы. Для каждого процесса статически задаются его идентификатор пользователя, группы, список доступного оборудования и разрешенные системные вызовы.



Пример статических правил для процесса

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

Одним из процессов с возможностью порождать новые является – BUP (BringUP). В процессе реверс-инжиниринга этого модуля, в функции инициализации устройства Trace Hab мы нашли переполнение стекового буфера. Файл «/home/bup/ct» не имел подписи, и мог быть интегрирован в прошивку МЕ через сервисную программу – Flash Image Tool. Это давало возможность вызвать переполнение буфера внутри процесса BUP с помощью файла инициализации BUP большого размера. Но поэксплуатировать ее можно было только после обхода защиты от переполнения стекового буфера.


Переполнение буфера в стеке

2.6. Обход защиты от переполнения буфера

В ME реализован классический способ защиты от переполнения буфера в стеке – стековая канарейка. Реализован данный механизм следующим образом:

  1. Для каждого процесса в момент его создания из аппаратного генератора случайных чисел в специальную область (доступную только для чтения) копируется 32-битное значение;
  2. В прологе функции — это значение копируется над адресом возврата в стеке, тем самым защищая его;
  3. В эпилоге функции происходит сравнение сохранённого значения с эталонным. Если оно не совпадает генерируется программное прерывание int 81h завершающие процесс.

Изучая функции, которые вызываются после переполнения и до проверки целостности нами было обнаружено, что функция, которую мы назвали bup_dfs_read_file косвенно вызывает memcpy. Она в свою очередь использует в качестве значения целевого адреса, данные полученные из некоторой структуры, которую мы назвали TLS (Th
read Local Storage). Стоит отметить, что функции bup для чтения и записи файлов, используют сервисы системной библиотеки для работы с общей памятью (shared memory). Используя его, функции чтeния и записи, получают и записывают информацию. Но никто кроме BUP эти данные не использует, поэтому использование этого механизма может показаться сомнительными. Мы считаем, что это связано с тем, что часть кода BUP, который взаимодействует с MFS скопирован из другого модуля – драйвера файловой системы, где использование общую память оправдано.


Вызов функции memcpy


Получение адреса из TLS

Как выяснилось позже, при переполнении буфера эта область TLS может быть перезаписана функцией чтения файла, что позволяет обойти защиту от переполнения буфера.

2.7. Thread Local Storage

Все обращение к структуре TLS происходит через сегментный регистр gs сама же структура имеет следующий вид:


Структура TLS


Получение полей TLS

Сегмент, на который указывает gs, не доступен на запись, но сама структура TLS расположена на дне стека (. ), что позволяет изменять ее в обход ограничения. Таким образом, при переполнении буфера мы можем перезаписать указатель на TLS и формировать структуру SYSLIB_CTX. А алгоритм работы алгоритм работы функции bup_dfs_read_file, используя этот трюк, позволяет получить arbitrary write.

2.8. Использование реализации функции чтения для получения arbitrary write primitive

Функция bup_dfs_read_file считывает данные с SPI-flsh блоками по 64 байта, что позволяет вначале перезаписать указатель на SYSLIB_CTX а TLS. На следующей итерации функция sys_write_shared_mem извлекает адрес, который мы сформировали и передает его в memcpy в качестве целевого адресса. Это позволяет получить примитив записи внутри процесса BUP.


Итеративное чтение файла внутри bup_dfs_read_file

Отсутствие ASLR позволяет перезаписать адрес возврата функцией memcpy и перехватить управление. Тут так же поджидает неприятность для атакующего – стек не является исполняемым. Но пользуясь тем, что BUP умеет создавать новые процессы и сам проверяет подпись для запускаемых модулей, мы можем с помощью возвратно-ориентированного программирования (Return Oriented Programming — ROP) создать новый процесс с заданными правами.

2.9. Возможные векторы эксплуатации

Для успешной эксплуатации данной уязвимости необходим доступ на запись в MFS или целиком в Intel ME регион. Производителям оборудования должны блокировать доступ к региону с ME, но к сожалению, это делают далеко не все [8]. В случае, если на системе присутствует такая ошибка конфигурации – это автоматически делает ее уязвимой.

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

  1. Атакуется платформа с активированным AMT.
  2. Атакующий знает пароль администратора AMT или использует уязвимость для обхода авторизации.
  3. BIOS не имеет пароля (или он известен злоумышленнику).
  4. BIOS имеет опцию, позволяющую открывать доступ на запись в ME регион.

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

2.10. Обзор уязвимостей CVE-2017-5705,6,7

Найденной уязвимости был присвоен номер INTEL-SA-00086 (CVE-2017-5705, CVE-2017-5706, CVE-2017-5707). Приведем небольшую выдержку из его описания:

  • 8.2 High AV:L/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
  • 6th, 7th & 8th Generation Intel Core Processor Family
  • Intel Xeon Processor E3-1200 v5 & v6 Product Family
  • Intel Xeon Processor Scalable Family
  • Intel Xeon Processor W Family
  • Intel Atom C3000 Processor Family
  • Apollo Lake Intel Atom Processor E3900 series
  • Apollo Lake Intel Pentium
  • Celeron N and J series Processors

2.11. Disclosure Timeline

  • June 27, 2017 — Bug reported to Intel PSIRT
  • June 28, 2017 — Intel started initial investigation
  • July 5, 2017 — Intel requested proof-of-concept
  • July 6, 2017 — Additional information sent to Intel PSIRT
  • July 17, 2017 — Intel acknowledged the vulnerability
  • July 28, 2017 — Bounty payment received
  • November 20, 2017 — Intel published SA-00086 security advisory

3. Заключение

Таким образом, нами была найдена уязвимость Intel ME, которая позволяет выполнять произвольный код. Это ставит под угрозу все технологии такие технологии как Intel Protected Audio Video Path (PAVP), Intel Platform Trust Technology (PTT или fTPM), Intel BootGuard, Intel Software Guard Extention (SGX) и многие другие.

Эксплуатируя найденную нами уязвимость в модуле bup, нам удалось включить механизм, называемый PCH red unlock, который открывает полный доступ ко всем устройствам PCH, для использование их через DFx chain, иначе говоря с помощью JTAG. Одним из таких устройств и является само ядро ME. Это дало возможность отлаживать код, выполняемый на ME, читать память всех процессов и ядра, а так же, управлять всеми устройствами внутри PCH. Мы насчитали в совокупности порядка 50 внутренних устройств, полный доступ к которым имеет только ME, а основной процессор только к весьма ограниченному их подмножеству.

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

Перехитрить производителя. Как разблокировали ядра и кеш у процессоров и конвейеры у видеокарт

Любительский

Аватар пользователя

Содержание

Содержание

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

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

Процессоры и материнские платы

Довольно интересное устройство, которое позволяло установить в материнские платы с разъемом SLOT 1 процессоры, предназначенные под сокет 370. Это "слоткет" или, как его называли у нас — переходник SLOT 1 - сокет 370.


Слоткеты различались качеством изготовления, функциональностью и сложностью. Некоторые переходники позволяли регулировать напряжение ядра процессора (VCore), а например, PowerLeap PL-iP3/T полностью заменял VRM, расположенный на материнской плате.


Следующая интересная переделка связана с процессорами AMD Athlon XP. У моделей на ядрах Applebred, Thoroughbredи Barton с помощью замыкания определенных ножек или контактов у чипа, удавалось разблокировать множитель процессора, получив аналог нынешних процессоров для разгона серии "K".


Это был довольно сложный процесс, чреватый повреждением процессора. Например, у процессоров AMD Athlon XP на ядрах Thunderbird, Palomino, Spitfire и Morgan разблокировка множителя делалась уже по другим контактам. Дополнительно можно было повысить напряжение на процессоре до максимального (2 вольта).

Но самая интересная и выгодная переделка происходила с процессорами AMD Athlon XP на ядре Thorton. Вооружившись лезвием, клеем и токопроводящим лаком, опытный пользователь мог разблокировать не только множитель, но и дополнительные 256 Кбайт кэша второго уровня, превратив процессор в полный аналог AMD Athlon XP на ядре Barton.

Выпускались и заводские комплекты переходников, которые позволяли замкнуть нужные ножки, но особого распространения они не получили. Например, адаптерXP-TMC от Upgradeware.


Следующая переделка опять связана с продукцией компании AMD. Это был наиболее яркий и заметный способ из всех. У процессоров Phenom II и Athlon II удавалось включить не только кеш, но и заблокированные ядра! Не всегда переделанный процессор становился полноценным и стабильным, но случаев удачной переделки было очень много.

Phenom II X4 8хх - Разблокировались 2 МБ кэша L3
Phenom II X3 7хх - разблокировалось четвёртое ядро.
Phenom II X2 5хх - разблокировались третье и четвертое ядра
Athlon II X4 - разблокировался кэш L3 (при ядре Deneb).
Athlon II X3 - разблокировалось четвёртое ядро (в случае ядра Deneb - кэш L3)
Sempron 130/140/145/150 - разблокировалось второе ядро.

Процессоры Phenom II X4 моделей 650T, 840T, 960Т и 970 Black Edition определенной даты выпуска можно было разблокировать до шестиядерных.

Athlon X2 5000+ - уникальный процессор, имеющий название, уже использовавшееся у процессора под сокет AM2 на ядре Brisbane, однако производился на новом ядре Deneb. Его удавалось разблокировать до четырехядерного Phenom II X4 9хх.


Производители материнских плат с энтузиазмом поддержали разблокировку, встроив специальные функции в материнские платы.

У MSI технология называлась Unlock CPU Core, у GIGABYTE - Auto Unlock, у ASRock - ASRock UCC.


Из более актуальных методов доработки материнских плат хочется отметить возможность разгона неоверклокерских процессоров Intel Skylake.
С помощью перепрошивки специального BIOS снималась блокировка частоты базового тактового генератора у всего модельного ряда Skylake (интеловская защита BCLK Governor). Это позволяло разогнать недорогие LGA1151-процессоры по шине, получив солидный прирост производительности. Но при этом возникал целый ворох проблем, самая скверная из которых — снижение скорости выполнения AVX/AVX2-инструкций.


Еще одна интересная переделка - это возможность установки процессоров Xeon под сокет 771 в материнские платы LGA 775. Путем модификаций BIOS материнских плат, доработки сокета, текстолита процессора и замыканию определенных его ножек удавалось установить недорогие Xeon в массово распространенные материнские платы LGA 775.

До сих пор AliExpress завален этими недорогими, но мощными процессорами, по скорости сравнимыми с Core 2 Quad. Даже сегодня можно собрать систему с четырехядерным процессором и восемью гигабайтами памяти, которая будет комфортно чувствовать себя в серфинге интернета, офисной работе и нетребовательных играх.


Сейчас энтузиастами ведутся работы над материнскими платами разъема LGA 2011 и LGA 2011-3 по расширению списка поддерживаемых процессоров и разгону процессоров, изначально лишенных этой функции. Это позволяет собрать уже серьезную по производительности систему, сопоставимую со средними AMD Ryzen.

Дефицит материнских плат под эти разъемы восполняют китайские производители, наладив выпуск довольно качественных материнских плат HUANAN.


Совсем недавно появились способы переделки материнских плат LGA 1151 на чипсете 100-й и 200-й серии под процессоры Coffee Lake.

Глядя на все эти обширные списки переделок становится понятно, что компания Intel довольно искусственно и бесцеремонно пересаживает пользователей с чипсета на чипсет, которые по сути ничем не отличаются друг от друга. А заблокированный разгон, когда за "K" процессор просятся дополнительные деньги, уже стал всем привычен.

Все это — следствие отсутствия нормальной конкуренции в последние годы. Но теперь процессоры AMD Ryzen все изменили.

Видеокарты

На рынке видеокарт историй с разблокированием функционала было не меньше, и начать хочется с 3dfx Velocity 100. Это был первый случай блокировки функционала видеокарт.

3dfx Velocity 100 отличалась от более старшей модели Voodoo3 1000 тем, что имела отключенный один из двух блоков TMU (Texture Mapping Unit). Путем редактирования всего одной строки в реестре Velocity 100 превращалась в старшую модель - Voodoo3 1000.


Этот способ начала применять и компания ATI, изготавливая на основе полноценного видеочипа Radeon два типа младших видеокарт – Radeon LE и Radeon VE. У Radeon LE отключалась функция HyperZ, а у Radeon VE - T&L (Hardware Transformation & lighting).


В 2003 году часть видеокарт ATI Radeon 9500PROвыпускалась на основе чипа и платы от ATI Radeon 9700 PRO и позволяла осуществить переделку в старшую модель с помощью припаивания дополнительного резистора и перепрошивки BIOS. Потом появилась возможность только программной переделки.


Следующая линейка предтоповых видеокарт, ATI Radeon 9800 SE, могла разблокироваться до полноценной Radeon 9800 PRO.

В 2004 году, выпустив семейство видеокарт GeForce 6ххх, NVIDIA пошла по стопам ATI и начала отключать часть блоков в видеокартах. В NVIDIA GeForce 6800 было программно заблокировано 4 пиксельных и 1 вершинный конвейер, по сравнению со старшей GeForce 6800 ULTRA с формулой 16/6. Путем прошивки отредактированного BIOS и редактирования драйвера через RivaTuner младшая модель становилась идентична старшей.


Конкуренты шестой серии GeForce, ATI Radeon X800 PRO, в некоторых случаях могли с помощью перепрошивки BIOS превратиться в старшую модель - ATI Radeon X800 XT. Однако, 100% результат достигался только при перепрошивки специальной серии ATI Radeon X800 GTO2.


Еще из видеокарт тех лет нужно упомянуть разблокировку GeForce 6200 в GeForce 6600, если ревизия чипа была ниже "А4". Но массовым явлением это уже не было. Как и изредка удававшаяся разблокировка конвейеров в NVIDIA GeForce 9600GSO.

А вот разблокирование AMD RADEON HD 6950 в старшую версию AMD RADEON HD 6970 удавалось заметно чаще. Прошивка в HD 6950 BIOS от старшей модели увеличивало количество потоковых конвейеров с 1408 до 1536, а частоты с 800/1250 МГц до 880/1375 МГц.
Потом похожее по простоте решение удавалось провернуть на AMD Radeon R9 290, превращая ее в старшую модель AMD Radeon R9 290X.


Из видеокарт наших дней хотелось бы вспомнить AMD Radeon RX 480 на 4 ГБ. На старте продаж путем перепрошивки BIOS от модели AMD Radeon RX 480 на 8 ГБ иногда удавалось получить четыре дополнительных гигабайта памяти.
А на видеокарте Radeon RX 460, имеющей 896 потоковых процессоров, путем перепрошивки BIOS удавалось получить 1024.


Итоги

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

Данная инструкция подходит к любой материнской плате LGA 2011-3, в том числе и для брендовых - Asus, MSI, Gigabyte и т.д. Прежде чем делать Unlock, убедитесь что ваш процессор со Stepping 2 или финальная версия. Не рекомендуется делать Unlock, если вы используете процессор E5-16xx v3 с разблокированным множителем, система будет вести себя крайне нестабильно.

Особенности:
- Работает с любой операционной системой: Windows, Linux и другими.
- Не важно какой формат вашего системного диска, MBR или GPT. Unlock Turbo Boost не будет слетать после переустановки Windows и сброса BIOS.
- Возможно сделать только с процессорами Xeon E5-26xx v3 и Xeon E5-46xx v3 со Stepping 2 и финальные версии.
- Unlock со всеми процессорами Xeon E5 v4 сделать невозможно!

Stepping процессора можно посмотреть в программе CPU-Z:


Скачайте и распакуйте необходимый софт.

1. Делаем бэкап стоковой версии вашего биоса с помощью FPT.

Запустите командную строку от имени администратора:


Далее нужно перейти в папку "1. FPTBIOS" с программой для прошивки биоса, если вы распаковали архив в корень диска "C", то команда будет следующая:

Теперь делаем бэкап стокового биоса командой:


По завершению процесса бэкапа вы увидите надпись FPT Operation Passed , в папке "1. FPTBIOS" появится файл бэкапа backup.bin, который мы будем модифицировать.
Обязательно сохраните куда нибудь копию этого файла, чтобы иметь возможность восстановиться на стоковый биос.
Не закрывайте командную строку, она нам ещё пригодится.

В некоторых платах биос защищен от записи, поэтому FPT при попытке прошивки будет выдавать ошибку Error 280 . Чтобы снять защиту, в биосе идем в IntelRCSetup > PCH Configuration > Security Configuration и меняем значение пункта Bios Lock на Disabled. После сохранения настроек и перезагрузки защита от записи будет снята.

Если вы получаете ошибку Error 26 , значит вашу плату прошить с помощью FPT невозможно, в данном случае поможет программатор с прищепкой CH341A или AFUDOS.

2. Модифицирование BIOS, удаление микрокода 06F2.

Открываем вторую папку "2. MMTool_A5" с программой MMTool_A5, запускаем её и загружаем ранее созданный бэкап backup.bin нажав кнопку « Load Image», чтобы программа увидела наш файл биоса, нужно в "Тип файлов:" выбрать "All Files".


Переходим во вкладку "CPU Patch", выделяем микрокод 06F2 (если их два, нужно удалить оба) и удаляем, последовательность на скриншоте:


После удаления микрокода, нажмите кнопку «Save Image», данным действием мы перезаписали наш биос backup.bin
Для проверки снова загрузите наш биос и убедитесь что микрокода 06F2 во вкладке "CPU Patch" больше нет.

3. Добавление специального FFS драйвера в BIOS.

Заходим в третью папку "3. UEFITool" с программой UEFITool и запускаем её.

Открываем наш файл биоса backup.bin с уже удалённым микрокодом 06F2, в программе нажмите кнопки File>Open image file и переходим в предпоследний раздел


Опускаемся в самый низ и нажимаем правой кнопкой мыши по самому последнему драйверу DXE Driver и выбираем «Insert after» (вставить после)


Откроется проводник, нам нужно выбрать нужный FFS драйвер, переходим в четвёртую папку "4. Drivers", далее в зависимости от вашей платы переходим в папку "Dual CPU" или "Single CPU" и выбираем нужный драйвер .ffs, нажимаем кнопку «Открыть», таким образом мы добавили драйвер в наш биос.

Файлы расшифровываются так, например V3_ 70 50 .ffs:
70 (-70mV CPU)
50 (-50mV Cache)

Если вы не знаете какой драйвер вам нужен, выбирайте V3.ffs - это гарантирует полностью стабильную системы.

Теперь сохраняем наш биос и указываем любое имя, например Unlock.bin
Для этого нажимаем «File» и выбираем «Save image file», пишем в нашем случае имя Unlock.bin и нажимаем кнопку «Сохранить»



В результате у нас в папке "1. FPTBIOS" появиться наш модифицированный биос Unlock.bin

4. Запись модифицированного BIOS

Возвращаемся в открытую командную строку и прошиваем наш модифицированный биос Unlock.bin с помощью команды:

После успешной процедуры прошивки, вы снова увидите надпись FPT Operation Passed

Перезагружаем ПК, если вы всё сделали правильно, Unlock Turbo Boost будет работать.

Чтобы проверить работу Unlock Turbo Boost, запустите стресс тест например популярной программы AIDA64 и посмотрите какая частота у всех ядер, если все ядра держат максимальную частоту, значит всё сделано правильно и работает.

Как запустить стресс тест с помощью AIDA64 и посмотреть частоту CPU, указанно на скриншоте ниже:


Например у E5-2620 v3 после анлока, частота всех ядер должна быть 3.20 GHz

Не рекомендуется делать Unlock, если вы используете процессор E5-16xx v3 с разблокированным множителем, система будет вести себя крайне нестабильно.
Необходимый софт: FPT, MMTool A5, UEFITool, драйвера (efi и ffs)

Исследователи из российской компании Positive Technologies годами изучают скрытые возможности по отладке процессоров компании Intel. Нетрудно сообразить, что сервисный доступ к процессорам позволяет получить контроль над процессором и вычислениями. Безопасникам необходимо знать, как и при каких условиях процессоры могут быть скомпрометированы. И всплывает много интересного.

процессоры Intel Atom

Процессоры Intel Atom

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

Возможность извлечения секретного ключа для дешифровки исправлений микрокода процессоров несколько лет назад обнаружили три исследователя Positive Technologies: Максим Горячий, Дмитрий Скляров и Марк Ермолов. Уязвимость SA-00086 была подтверждена для процессоров Intel Celeron, Pentium и Atom на архитектуре Intel Goldmont и позволяла выполнять код по своему выбору внутри подсистемы Intel Management Engine. Вскоре компания Intel выпустила патч, устраняющий уязвимость SA-00086, но кто мешает установить на систему с уязвимым процессором старый микрокод и воспользоваться уязвимостью?

Продолжив исследования, специалисты из Positive Technologies смогли использовать уязвимость для доступа к сервисному режиму процессоров, названному в Intel «Red Unlock». Инженеры компании используют этот режим для отладки микрокода перед публичным выпуском новых процессоров. Недокументированный отладчик Chip Red Pill (привет кинофильму «Матрица») позволяет выполнять на процессоре вещи, которые будут запрещены штатному изделию. Для обмена данными с процессором в этом случае нужен либо специальный адаптер, либо подключение по USB. Тем самым получить доступ можно будет только к локальному ПК, но не удалённо.

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

В компании Intel не считают подобное проблемой, поскольку патч SA-00086 давно реализован в микрокоде, и вероятность того, что кто-то станет возиться с заменой прошивок на уязвимые с последующим анализом исправлений, крайне мала. Что же касается возможности загрузить в процессор микрокод хакера, то она сохраняется лишь до перезагрузки системы и не страшна в большинстве сценариев угроз.

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