как узнать микрокод процессора

Как узнать версию микрокода процессора?

Чтобы увидеть микроархитектуру процессора и используемую версию микрокода, запустите команду reg query HKEY_LOCAL_MACHINE HARDWARE DESCRIPTION System CentralProcessor 0 в командной строке Windows. (Вы можете открыть командную строку, нажав Windows + R, набрав cmd и нажав Return.)

Как мне проверить микрокод процессора?

Как найти версию микрокода, которая в настоящее время работает на вашем процессоре. Утилита Intel® Processor Identification Utility сообщает информацию об идентификаторе CPUID для установленного процессора, расположенную на вкладке CPUID DATA инструмента. Версия микрокода указана в разделе CPUID DATA и называется «Версия процессора».

Как обновить микрокод Intel?

intel-microcode — пакет обновления микрокода Debian / Ubuntu и клонов для Intel CPUS.

Процедура установки микрокода AMD или Intel в Linux следующая:

Есть ли на CPU прошивка?

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

Обновления микрокода постоянны?

2 ответа. Само обновление микрокода всегда можно откатить, поскольку оно не является постоянным, хотя, если это обновление выполняется из прошивки (например, UEFI / BIOS), вы можете прошить модифицированную прошивку, чтобы сделать это: … Это зависит от того, как микрокод обновление применено.

Что такое обновления микрокода Intel?

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

Что такое архитектура компьютера с микрокодом?

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

Microcode_ctl требует перезагрузки?

Обновление микрокода ЦП требует перезагрузки сервера базы данных. Обновленный пакет microcode_ctl может применяться к одному серверу базы данных за один раз в скользящем режиме.

Как обновить прошивку процессора?

Щелкните правой кнопкой мыши процессор и выберите «Обновить программное обеспечение драйвера», чтобы начать процесс обновления. Для завершения обновления вам может потребоваться перезагрузить компьютер.

Какие есть примеры прошивок?

Примеры прошивки включают:

Могу ли я удалить прошивку?

НЕТ, вы не можете его очистить. «Прошивка» и «Программное обеспечение» сравнимы с нашими телами. Прошивка — это автоматическая система, которая управляет нашим сердцем, нашей печенью, нашей ходьбой и т. Д.

Что такое обновления микрокода?

Микрокод процессора сродни прошивке процессора. Ядро может обновлять микропрограмму процессора без необходимости обновлять ее с помощью обновления BIOS. Обновление микрокода хранится в энергозависимой памяти, поэтому BIOS / UEFI или ядро ​​обновляют микрокод при каждой загрузке.

В руке используется микрокод?

Arm Holdings, Ltd. Процессор Arm, напротив, не использует цифровой микрокод в своей оперативной памяти. Текущая реализация альтернативы Arm — это концепция, называемая пользовательскими инструкциями [PDF].

Как я могу обновить BIOS?

Нажмите Window Key + R для доступа к командному окну «RUN». Затем введите «msinfo32», чтобы открыть журнал системной информации вашего компьютера. Текущая версия BIOS будет указана в разделе «Версия / дата BIOS». Теперь вы можете загрузить последнее обновление BIOS материнской платы и утилиту обновления с веб-сайта производителя.

Источник

Обновление CPU microcode в AMI BIOS, или пример работы с MMTool

Решил вспомнить былое — модификацию БИОС.
В далёком студенческом прошлом это были подмены модуля raid на линейке мат. плат Epox под сокет A утилиткой cbrom, и кое какие манипуляции утилиткой modbin с пунктами меню.

Ныне появилось желание (плавно перетекающее в необходимость апгрейда) добавить поддержку новых CPU AMD поколения K10.5 (что под сокет AМ2+\AM3) для материнской платы BIOSTAR TA770 A2+ (с сокетом AM2+ и на Award BIOS).
Процесс поиска подходящего БИОСа с необмодимым CPU_list в линейке мат. плат Biostar под сокет AM2+ не дал качественных результатов. Т.к. лишь несколько мат. плат под сокете AM2+ (и лишь на чипсетах NForce) оказались снабжены Award БИОСом. А большинство таких мат.плат Biostar снабжены AMI БИОСом. Как раз последняя условность и позволила мне найти пример для «поиграться» с AMI БИОСами данных мат. плат и поделиться скромным опытом в данной статье прежде, чем разбираться с Award БИОСами (о чем я расскажу уже в отдельной статье).

Представляю донора BioStar A740G M2L+ (AMD 740G / SB710) и реципиента BioStar A740G M2+ (AMD 740G / SB700). Мат.плата, что с литерой «L», более свежая и поддерживает процессоры AM3 официально, в отличие от другой, что ограничена лишь поддержкой процессоров AM2+. Напрашиваются на сравнительный анализ БИОСы их.
С оф. сайта загружаем лишь последнее обновление прошивки БИОСа для каждой их этих мат.плат:
— для A740G M2+ последняя бэта A74GM916.BSS за сентябрь 2009г.
— для A740G M2L+ — файл 74GCU511.BSS — за май 2010г.

Далее вооружаемся утилитой MMTOOL(я использовал версии 3.22, 3.23 и 3.26 — различий в работе не обнаружил). Для работы с MMTOOL расширения файлов прошивок БИОС необходимо переименовывать на *.rom.

Теперь запускаем две MMTOOL и в них подгружаем файлы прошивок от двух мат. плат. Обращаем внимание на разные размеры в столбце «Source size» ( да и в «Size in Rom» тоже разумеется) модуля 11 «P6 Micro Code» в каждой из прошивок.

Переходим в раздел CPU PATCH для детального сравнения:

— файл донора 74GCU511.rom — cpu_list содержит 14 строк с поддержкой CPURev.ID + 1 пустая (рис.1).

— бэта-версия реципиента A74GM916.rom — cpu_list содержит 13 строк с поддержкой CPURev.ID + 1 пустая (рис.2).

После анализа списков этих двух БИОСов становится очевидно, что для более новой мат.платы разработчики использовали более свежие патчи для процессоров AMD, где подправлен микрокод двух строк с CPURev.ID 1043 и 1062 (датируются 2009/07/31) и одна строка с CPURev.ID 10A0 добавлена (датируется 2010/02/17).

Способ №1 — модификация отличительных строк.

Производится извлечение этих трёх отличительных строк из донора 74GCU511.rom — действия «Extract a Patch Data» + «Apply» + 1 последнюю пустую строку и сохранение их в отдельные файлы.

Предварительно в в разделе CPU PATCH файла реципиента A74GM916.rom удаляются две строк с номерами CPURev.ID 1043 и 1062 (чей микрокод более старый чем мы будем далее вставлять) и последняя пустая строка — действия «Delete a Patch Data» + «Apply» (рис.3).

После этого поочерёдно вставляется более новый микрокод из четырёх уже ранее полученных файликов-патчей для CPURev.ID 1043, 1062, 10A0 и пустая строка (рис.4).

Обращаем внимание на размеры («Source size» и «Size in Rom») модуля 11 «P6 Micro Code» до и после применения данных изменений в файле реципиента.
После применения эти размеры у реципиента (рис.6) станут идентичны размерам такого же модуля в файле-доноре 74GCU511.rom (рис.5).
Стоит заметить, что несложно понять, как формируется размер модуля (каждая строка, что в разделе CPU PATCH, занимает по 2048 байт).

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

Способ №2 — модификация заменой модуля целиком.

Собственно именно он и описан на просторах интернета (например частично здесь).

В MMTOOL подкружаем файл донора 74GCU511.rom, переходим во вкладку «Extract» и ищем строку «P6 Micro Code». Затем выделяем её, в поле «module file» задаем ему имя ncpucode.bin и выполняем Extract module «in uncompressed form».

Теперь в MMTOOL подгружаем файл реципиента A74GM916.rom, переходим во вкладку «Replace» и снова ищем строку «P6 Micro Code». Выделяем её, ждём Browse и выбираем наш донорский модуль ncpucode.bin. Жмём Replase и далее соглашаемся на замену данного модуля.

Снова обращаем внимание на размеры («Source size» и «Size in Rom») модуля 11 «P6 Micro Code» до и после замены данного модуля в файле реципиента.
После применения эти размеры у реципиента (рис.7) станут идентичны размерам такого же модуля в файле-доноре 74GCU511.rom (рис.5).

Если сравнить результаты обоих способов (рис.6 и рис.7), то заметна разница в 10байт в адресе RomLoc модуля «User Defined or Reserved», следующего за обновляемым модулем «P6 Micro Code» — возможно, это особенности работы MMTOOL.

Источник

Как проверить выпустили ли Intel обновления микрокода для вашего процессора

Gibson Research обновили программу InSpectre, о которой я уже рассказывал. Они улучшили функциональность приложения, и в том числе добавили проверку доступности обновления микрокода для вашего процессора. Напомню, что InSpectre проверяет, были ли установлены исправления уязвимостей Meltdown и Spectre на вашем компьютере под управлением Windows и даёт оценку производительности, если патчи не установлены.

как узнать микрокод процессора. kak proverit na meltdown. как узнать микрокод процессора фото. как узнать микрокод процессора-kak proverit na meltdown. картинка как узнать микрокод процессора. картинка kak proverit na meltdown.

Напомню, как просто проверить уязвимость компьютера к Meltdown и Spectre:

1. Скачайте программу InSpectre.

2. Запустите её с правами администратора системы.

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

как узнать микрокод процессора. spectre meltdown vulnerability check. как узнать микрокод процессора фото. как узнать микрокод процессора-spectre meltdown vulnerability check. картинка как узнать микрокод процессора. картинка spectre meltdown vulnerability check.

Читайте анонсы и посты целиком в ЖЖ, Medium, Голосе и Яндекс.Дзен!

Поддержите мой блог финансово. Все донаты пойдут на оплату хостинга и развитие сайта!

партнёры блога

как узнать микрокод процессора. . как узнать микрокод процессора фото. как узнать микрокод процессора-. картинка как узнать микрокод процессора. картинка .

telegram

Реклама

Последние

Рубрики

как узнать микрокод процессора. trackback. как узнать микрокод процессора фото. как узнать микрокод процессора-trackback. картинка как узнать микрокод процессора. картинка trackback.

[…] Проверить, как система защищена от уязвимости Spectre, можно с помощью специальной утилиты InSpectre. […]

СЧЕТЧИКИ

РЕКЛАМА И ДОНАТЫ

Социальные сети

©2016-2021 Блог Евгения Левашова. Самое интересное и полезное из мира ИТ. Windows 10, Linux, Android и iOS. Обзоры программ и веб-сервисов. Статьи о мотивации и продуктивности.

Использование материалов разрешается с активной ссылкой на levashove.ru. как узнать микрокод процессора. . как узнать микрокод процессора фото. как узнать микрокод процессора-. картинка как узнать микрокод процессора. картинка .

Данный блог является личным дневником, содержащим частные мнения автора. В соответствии со статьей 29 Конституции РФ, каждый человек может иметь собственную точку зрения относительно его текстового, графического, аудио и видео наполнения, равно как и высказывать ее в любом формате. Блог не имеет лицензии Министерства культуры и массовых коммуникаций РФ и не является СМИ, а, следовательно, автор не гарантирует предоставления достоверной, не предвзятой и осмысленной информации. Сведения, содержащиеся в этом блоге не имеют никакого юридического смысла и не могут быть использованы в процессе судебного разбирательства. Автор блога не несёт ответственности за содержание комментариев к его записям.

Источник

Вначале немного истории, теории и зачем вообще это нужно.

Являясь владельцем двух ноутбуков ASUS U6V (рабочий) и Acer 6935G (домашний) периодически сталкиваюсь с проблемой повышенного нагрева ASUS, из турбины выдувается воздух по температуре как из фена, даже в ненагруженном режиме. Это обусловлено конструкцией данного ноутбука ввиду его малых габаритов и достаточно «горячего» процессора P8600. Имея некоторый опыт по оптимизации производительности и тепловыделения для микросерверов основанных на процессорах Xeon серии L, решил посмотреть какая версия микрокодов для моего процессора загружается в ноутбуке. На ноутбуке стоит предпоследний BIOS версии 213, последний 214 версии не поддерживает WakeOnLan, а он мне важен для работы. Версия микрокодов для моего процессора датирована 2008 годом, поискав обновления нашел последнюю версию от 2010 года, очевидно в это время закончилась поддержка Интелом данного процессора. Путем несложных манипуляций по замене микрокода в BIOS и перепрошивке, я получил ноутбук с процессором на последней версии микрокодов. На какое-то время я забыл об этом и обнаружил что мой ноутбук стал меньше греться, турбина в обычном ненагруженном режиме не поднимается выше 4200 оборотов и из неё дует теплый воздух, а не горячий как ранее.

Итак немного теории. Микрокоды были внедрены в процессоры для возможности программного исправления ошибок преобразования и выполнения команд x86 системы в RISC uops. Воизбежание отзыва процессоров с обнаруженной проблемой прозводители стали применять загружаемые микрокоды. При каждой загрузке вашего ноутбука или ПК, BIOS материской платы по определенному протоколу пересылает в процессор обновленные микрокоды. По мере обнаружения ошибок производители обновляют и оптимизируют версии микрокодов. Это одна из причин почему вам настоятельно рекомендуют прошивать последнюю версию BIOS, которая в теории должна содержать последние микрокоды. Но на практике это не всегда так. Обновления микрокодов выпущены производителем процессоров, а производители, в данном случае, ноутбуков не спешат с обновлениям BIOS.

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

Если у вас нет уверенности, что вам это нужно, далее можете не читать.
Итак, какого же было мое очередное разочарование в разработчиках ACER, точнее компании-подрядчике производящей для Acer ноутбуки. Ранее я уже писал про невозможность включения VT (Virtual Technology) посредством BIOS в нотбуке Acer 6935G. Теперь насколько просто замена микрокодов реализована в AMI BIOS с помощью утилиты MMTOOL. И насколько непрозрачен механизм обновления микрокодов на Insyde H2O BIOS. Хотя утилита обновления FlashIt и имеет специальный ключ /FM для обновления микрокодов. Отдельно обновлять биос файлами микрокодов она отказалась, только из файла образа биоса для вашей модели. И тут производитель о нас покупателях не позаботился. Прийдется самим исправлять эту ситуацию.

Нам понадобится:
— AIDA (она же Everest в прошлом), для примера взял версию 4.5 Portable Edition;
— обновления микрокодов для процессоров Intel с сайта Intel, последнее датировано 30 апреля 2014;
— любой Hex редактор, для примера взял WinHex 16.9;
— BIOS для вашей модели с сайта Acer, для меня версия 1.20 модель 6935G;

7) Грузимся с флешки и запускаем Flashit /FM
Наблюдаем процесс обновления в BIOS области микрокодов, который завершается перезагрузкой системы.

Загружаемся в Windows, запускаем AIDA и проверяем номер обновленных микрокодов для нашего процессора.
как узнать микрокод процессора. 1402835208. как узнать микрокод процессора фото. как узнать микрокод процессора-1402835208. картинка как узнать микрокод процессора. картинка 1402835208.

Источник

Бэкдоры в микрокоде ассемблерных инструкций процессоров x86

Софту мы не доверяем уже давно, и поэтому осуществляем его аудит, проводим обратную инженерию, прогоняем в пошаговом режиме, запускаем в песочнице. Что же насчёт процессора, на котором выполняется наш софт? – Мы слепо и беззаветно доверяем этому маленькому кусочку кремния. Однако современное железо имеет те же самые проблемы, что и софт: секретную недокументированную функциональность, ошибки, уязвимости, малварь, трояны, руткиты, бэкдоры.

как узнать микрокод процессора. ipyi6itjefhde2aetsgvqabmbwo. как узнать микрокод процессора фото. как узнать микрокод процессора-ipyi6itjefhde2aetsgvqabmbwo. картинка как узнать микрокод процессора. картинка ipyi6itjefhde2aetsgvqabmbwo.

ISA (Instruction Set Architecture) x86 – одна из самых долгих непрерывно изменяющихся «архитектур набора команд» в истории. Начиная с дизайна 8086, разработанного в 1976 году, ISA претерпевает постоянные изменения и обновления; сохраняя при этом обратную совместимость и поддержку исходной спецификации. За 40 лет своего взросления, архитектура ISA обросла и продолжает обрастать множеством новых режимов и наборов инструкций, каждый из которых добавляет к предшествующему дизайну, и без того перегруженному, новый слой. Из-за политики полной обратной совместимости, в современных процессорах x86 присутствуют даже те инструкции и режимы, которые на сегодняшний день уже преданы полному забвению. В результате мы имеем архитектуру процессора, которая представляет собой сложно переплетающийся лабиринт новых и антикварных технологий. Такая чрезвычайно сложная среда – порождает множество проблем с кибербезопасностью процессора. Поэтому процессоры x86 не могут претендовать на роль доверенного корня критической киберинфраструктуры.

Вы всё ещё доверяете своему процессору?

Безопасность программ и операционной системы – зиждется на безопасности железа, на котором они развёрнуты. Как правило разработчики софта не учитывают того факта, что железо, на котором разворачивается их софт – может быть недоверенным, вредоносным. Когда железо ведёт себя ошибочно (независимо оттого, преднамеренно или нет), программные механизмы безопасности – полностью обесцениваются. Уже много лет предлагаются различные модели защищённых процессоров: Intel SGX, AMD Pacifica и др. Тем не менее, завидная регулярность, с которой публикуется информация о критических сбоях (из недавних, например Meltdown и Spectre) и обнаруженных недокументированных «отладочных» функциях – наводит на мысль, что наше беззаветное доверие к процессорам беспочвенно.

Современные процессоры x86 представляют собой очень громоздкое и запутанное переплетение новейших и антикварных технологий. У 8086 было 29 тыс. транзисторов, у Pentium – 3 млн., у Broadwell – 3,2 млрд, у Cannonlake – больше 10 млрд.

как узнать микрокод процессора. image loader. как узнать микрокод процессора фото. как узнать микрокод процессора-image loader. картинка как узнать микрокод процессора. картинка image loader.

При таком количестве транзисторов неудивительно, что современные процессоры x86 испещрены недокументированными инструкциями и аппаратными уязвимостями. Среди недокументированных, – обнаруженных почти случайно, – инструкций: ICEBP (0xF1), LOADALL (0x0F07), apicall (0x0FFFF0) [1], которые позволяют разблокировать процессор для несанкционированного доступа к защищённым областям памяти.

Что же касается многочисленных аппаратных уязвимостей процессоров (см. два рисунка ниже), то они позволяют киберзлоумышленнику осуществлять эскалацию привилегий [3], извлекать криптографические ключи [4], создавать новые ассемблерные инструкции [2], менять функциональность уже существующих ассемблерных инструкций [2], устанавливать хуки на ассемблерные инструкции [2], брать под контроль «аппаратно ускоренную виртуализацию» [7], вмешиваться в «атомарные криптографические вычисления» [7] и, – сладкое напоследок, – входить в «режим бога»: подчинять себе легальный аппаратный бэкдор Intel ME (который позволяет получать удалённый доступ даже к выключенному компьютеру) [8]. И всё это – не оставляя каких-либо цифровых следов.

как узнать микрокод процессора. image loader. как узнать микрокод процессора фото. как узнать микрокод процессора-image loader. картинка как узнать микрокод процессора. картинка image loader.
как узнать микрокод процессора. image loader. как узнать микрокод процессора фото. как узнать микрокод процессора-image loader. картинка как узнать микрокод процессора. картинка image loader.

Современные процессоры – это больше софт, чем железо

Строго говоря, современные процессоры даже нельзя назвать «железом» в полном смысле этого слова. Потому что наиболее критичная их функциональность (в том числе, ISA) – обеспечивается перепрошиваемым микрокодом. Изначально микрокод отвечал в основном за то, чтобы управлять декодированием и выполнением сложных ассемблерных инструкций: операции с плавающей точкой, MMX-примитивы, обработчики строк с префиксом REP и т.п. Однако с течением времени на микрокод возлагается всё больше и больше ответственности за обработку операций внутри процессора. Так например, современные расширения процессоров Intel, такие как AVX (Advanced Vector Extensions) и VT-d (аппаратная виртуализация) – реализованы на микрокоде.

Кроме того, сегодня микрокод отвечает, в числе прочего, за сохранение состояния процессора, за управление кэшем и также за управление энергосбережением. Для энергосбережения, на микрокоде реализован механизм прерываний, обрабатывающий состояния электропитания: С-состояния (степень энергосберегающего сна: от активного состояния до глубокого сна) и P-состояния (разные комбинации вольтажа и частоты). Так например, за обнуление L2-кэша при входе в состояние C4, а также при выходе из него – отвечает именно микрокод.

Зачем производители процессоров пользуются микрокодом?

Производители процессоров x86 используют микрокод для разложения сложных ассемблерных инструкций (длина которых может достигать 15 байт) в цепочку простых микроинструкций, – в целях упрощения аппаратной архитектуры и облегчения диагностики. По сути, микрокод это интерпретатор между внешней (видимой для пользователя) CISC-архитектурой и внутренней (аппаратной) RISC-архитектурой.

При обнаружении ошибок в CISC-архитектуре (в ISA, прежде всего), производители публикуют обновление микрокода, которое можно закачать в процессор через BIOS/UEFI материнской платы или через операционную систему (во время процесса загрузки). Благодаря такой системе обновлений, основанной на микрокодах, производители процессоров обеспечивают себе гибкость и снижение затрат – при исправлении ошибок в своём оборудовании. Нашумевшая ошибка с fdiv, которая сильно подкосила процессоры Intel Pentium в 1994 году – сделала ещё более очевидным тот факт, что высокотехнологичное железо подвержено ошибкам точно также, как и софт. Данный инцидент породил у производителей ещё больше интереса к архитектуре процессоров на основе микрокода. Поэтому Intel и AMD стали строить свои процессоры с применением технологии микрокодов. Intel – начиная с Pentium Pro (P6), выпущенного в 1995 году. AMD – начиная с K7, выпущенного в 1999 году.

Всё тайное становится явным

Несмотря на то, что производители процессоров стараются держать архитектуру микрокодов и механизм их обновления в строжайшем секрете, – враг не дремлет. Крупицы разрозненной информации (в основном из патентов, вроде AMD RISC86 [5]) и вдумчивый реверсинг официальных обновлений для BIOS (как это было с K8 [6]), – постепенно проливают свет на тайну микрокода (см. например, на рисунке ниже «механизм обновления микрокода процессоров AMD»). А благодаря постоянной эволюции инструментария для реверсинга (как программного, так и аппаратного) [2], перспективным методикам фаззинга [1] и появлению таких OpenSource-инструментов как Microparse [9] и Sandsifter [10] – киберзлоумышленник может узнать о микрокоде всё необходимое для того, чтобы писать на нём микрокодовую малварь.

как узнать микрокод процессора. image loader. как узнать микрокод процессора фото. как узнать микрокод процессора-image loader. картинка как узнать микрокод процессора. картинка image loader.

Так например, в [2] на правах «Hello world!» (первый шаг к троянизации микрокода) разработан «микрохук» (микрокодовая программа, перехватывающая ассемблерную инструкцию), который подсчитывает, сколько раз процессор обращался к команде div. Этот микрохук представляет собой инъекцию в обработчик ассемблерной инструкции div.

как узнать микрокод процессора. image loader. как узнать микрокод процессора фото. как узнать микрокод процессора-image loader. картинка как узнать микрокод процессора. картинка image loader.

Там же [2] представлен более продвинутый микрохук, – который спокойно себе сидит в ассемблерной инструкции div ebx, ничем не выдавая своего присутствия, и активируется только когда при обращении к div ebx выполняются конкретные условия: в регистре ebx содержится значение B, а в регистре eax содержится значение A. Активируясь, этот микрохук увеличивает значение регистра eip (указатель текущей инструкции) на единицу. В результате выполнение программы (которая имела смелость обратиться к инструкции div ebx) продолжается со смещением: ни с первого байта следующей за div ebx команды, а с её второго байта. Если же в регистрах eax и ebx заданы другие значения, то div ebx работает в обычном режиме. Какая в этом практическая ценность? Например, чтобы незаметно активировать скрытую цепочку ассемблерных инструкций, при использовании обфускационной техники с «перекрываемыми инструкциями» [11].

как узнать микрокод процессора. image loader. как узнать микрокод процессора фото. как узнать микрокод процессора-image loader. картинка как узнать микрокод процессора. картинка image loader.

Эти два примера демонстрируют, как законные ассемблерные инструкции можно использовать для сокрытия в них произвольного троянского кода.

При этом, киберзлоумышленник может активировать свою вредоносную полезную нагрузку – в том числе и удалённо. Например, когда необходимое для активации условие выполняется на веб-странице, контролируемой злоумышленником. Это возможно благодаря компиляторам Just-in-Time (JIT) и Ahead-of-Time (AOT), встроенным в современные веб-браузеры. Эти компиляторы позволяют испускать предопределённый поток ассемблерных инструкций машинного кода – даже если вы пишете программу исключительно на высокоуровневом JavaScript (см. последний листинг – чуть выше).

Источник

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

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