Прошу помощи с структурой SLAB (AMI BIOS) и структурой AMI BIOS в целом

Здравствуйте, уважаемые друзья!

Материнская плата - ASUS P7F-M.

Я разбираю прошивку этой платы на составные части (зачем - не спрашивайте:) и описываю каждый из модулей, однако немногое известно по поводу модуля SLAB (0x1B). Перерыл весь гугл, выяснил, что распаковать SLAB можно при помощи ami_1b_splitter.exe из пакета ami_1b_utils. Однако описания конкретных модулей и структуры SLAB нигде нет.

Допустим, что я хочу посмотреть SLAB в IDA. Есть ли скрипты / методики загрузки отдельных модулей SLAB (или SLAB целиком)? Описан ли где нибудь состав / метод исследования SLAB? Иными словами - какие сегменты создавать, нужно ли что перемещать в памяти и так далее?

Кроме того, очень и очень интересует любая информация, касающаяся структуры, методов дизассемблирования AMI BIOS, а также инструменты (если таковые есть - помимо MMTOOL). Я работал с UEFI, а AMI BIOS для меня в новинку, буду рад любой помощи.

Искал русский перевод статьи "Pinczakko's Guide to AMI BIOS Reverse Engineering". Читаю ее на английском, удручает, хочется на русском:)

Заранее благодарю за помощь.

Добавление от 18.011.2014

Хотелось бы узнать, есть ли описание сегментов, входящих в SLAB (например, DIM_CSEG, SMI_AP2ENTRYSEG и так далее). Хотя бы приблизительное их назначение - нигде никакой информации.

Если же нет описания, хотелось бы узнать, есть ли скрипты для IDA, которые помогут разложить SLAB по памяти?:) Формат его в самых общих чертах мне знаком (заголовок, модули и т.д.).

и как успехи ?

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

Для работы с AMI есть пара полезных утилит, правда линуксовых, bios_extract и ami_slab (входят в стостав утилит coreboot). Оные позволяют раздербанить формат модуля 1B и написаны вполне понятным кодом, структуру можно выцепить оттуда. Взяв за основу этот исходник можно сделать и обратный запаковщик, мне хватило раздербана, остальное правил потом вручную.

Broadcast message from PAO EC
Power is going down for shutdown NOW!

вопрос в том чтобы собрать из запакованного биоса распакованный образ как он располагается в RAM. Эти утилиты смогут это сделать?
Т.е. раскидать сегменты по физическим адресам чтобы потом дизассемблировать

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

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

Broadcast message from PAO EC
Power is going down for shutdown NOW!

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • You can use BBCode tags in the text. URLs will automatically be converted to links.

Подробнее о форматировании текста

Антибот - введите цифру.
Ленты новостей