Дизассемблирование BIOS состоит в пошаговом выполнении начальных инструкций, выполняемых процессором. Процедура для этого следующая: Начинаем дизассемблирование с Вектора сброса процессора. Вектор сброса — это адрес первой инструкции, которую исполняет процессор после аппаратного сброса. Для х86-совместимых процессоров, вектор сброса От вектора сброса пройдите исполняемые ветви кода блока начальной загрузки. Одна из ветвей приведет к зависанию. Это — ветвь, которая исполняется при ошибке времени исполнения Кода блока начальной загрузки. Таким образом, необходимо исследовать другую ветвь, не приводящую к зависанию компьютера. В ходе исполнения этой ветви кода, проводится распаковка кода системной BIOS, и после завершения исполнения кода блока начальной загрузки управление передается коду системной BIOS. Распаковку можно эмулировать при помощи сценариев или подключаемых модулей IDA Pro. В качестве альтернативы, если имеется распаковщик для упакованных компонентов BIOS, распакуйте их его помощью. Распакованные компоненты затем интегрируются в базу данных текущего сеанса дизассемблирования IDA Pro. Пошагово выполняйте ветвь исполнения системной BIOS до тех пор, пока не дойдете до исполнения процедуры POST. В некоторых BIOS процедур3 POST состоит из таблиц переходов. Чтобы получить полное представление о работе BIOS, необходимо осуществить каждый из переходов, пере’ численных в этой таблице. Описанная процедура применима к любому типу BIOS или другому виду ропрограммного обеспечения с функциональными возможностям BIOS в таких устройствах, как, например, маршрутизаторы, киоски или устройства, основанные на х86-совместимой программотехнике ROM.
Рубрика: Женский интерес