eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 8 октября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме:
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Электроника —› Kernel32.dll в биосе?
Посл.ответ Сообщение


Ранг: 527.1 (!)
Статус: Участник
5KRT

Создано: 4 апреля 2013 01:59 · Поправил: daFix New!
Цитата · Личное сообщение · #1

Начну по порядку. Дали задачу убрать защиту от изменения файлов. Партизан сидел в биосе.
Слил дамп, распарсил его, разложил на модули, нашёл нужное место и всё вроде как сделал.
Но потом ради интереса начал копать дальше и увидел невероятное!
В биосе лежал PE файл(dll), при том, не обычный - в секции кода есть код, пишущий в порты. Файл в аттаче.
Так-же в дампе лежит целая куча всяких файлов, но они все упакованы неизвестным алго. Прилагаю один из них.
Если кому-то удастся сказать что это за алгоритм, буду признателен. И вот список найденных там файлов:

PROJECT.ABS
CRL_1471.DAT
KERNEL32.DLL
REGISTRY.SYS
SMBIOS.EXE
ROMUSERS.TXT
LOWRAM.RLE
SPLASH.RLE
HIRAM.RLE
INTL1049.LD
I965.EXE
PROJECT.ABS
GMCHSMI.EXE
EIST.EXE
HUGERAM.RLE
DRVBIOS.RLE
ENTERSET.RLE
EXTBIOS.RLE
NETBIOS.RLE
CPU.RLE
CDROM.RLE
BOOTBIOS.RLE


EXE и SYS файлы намекают на мелкомягких. Вопрос скорее чисто академический. Что там делают эти файлы?
При этом, аппарат работает под линухой. Кажется, дебиан

{ Атач доступен только для участников форума } - Bios.rar

| Сообщение посчитали полезным: plutos, Abraham



Ранг: 521.6 (!)
Статус: Участник
_Вечный_Студент_

Создано: 4 апреля 2013 07:28 New!
Цитата · Личное сообщение · #2

Точно уже не помню и могу ошибаться, но как будто подобную тему рассматривал Салихан (SALIHUN) в своей книге про BIOS Disassembly или на где-то на своем сайте (https://sites.google.com/site/pinczakko/home).
А вообще тема очень интересная и хотелось бы услышать мнения экспертов.

| Сообщение посчитали полезным: daFix



Ранг: 527.1 (!)
Статус: Участник
5KRT

Создано: 4 апреля 2013 16:03 New!
Цитата · Личное сообщение · #3

plutos
Спасибо, интересный ресурс. Теперь ждём Хекса, у него наверняка есть что сказать по теме

Ранг: 56.9 (постоянный)
Статус: Участник

Создано: 7 апреля 2013 17:55 · Поправил: reverser New!
Цитата · Личное сообщение · #4

Выложи весь биос.

P.S. а MINITDLL.dll - это просто инициализация памяти (MRC=memory reference code). Интел просто компилирует в PE чтобы не париться с линковкой в бинарник.

Code:
  1. RSDSЭ↨»–‰±ЎKЁД8"@1жf☺ C:\Source\SVN\GsBios\trunk\noship\Intel\MRC\965gm\001\OUT32\MINITDLL.pdb

Ранг: 9.2 (гость)
Статус: Участник

Создано: 7 апреля 2013 23:27 New!
Цитата · Личное сообщение · #5

Тут недавно сырцы фирменных биосов утекли , я так думаю хорошо подойдут для education purposes --> Link <--

| Сообщение посчитали полезным: carver, Dr0p



Ранг: 213.7 (наставник)
Статус: Участник
X-Literator

Создано: 24 января 2014 14:01 New!
Цитата · Личное сообщение · #6

Поднял древнюю тему, наверное, но всё же - это наверняка UEFI BIOS, там практически все модули PE.
А неизвестные алгоритмы - скорее всего, TIANO или модифицированный LZMA. Но могут быть и другие.

Ранг: 5.4 (гость)
Статус: Участник

Создано: 5 августа 2018 23:50 · Поправил: IOCTL_ New!
Цитата · Личное сообщение · #7

daFix пишет:
Так-же в дампе лежит целая куча всяких файлов, но они все упакованы неизвестным алго.


daFix пишет:
HUGERAM.RLE
DRVBIOS.RLE
ENTERSET.RLE
EXTBIOS.RLE
NETBIOS.RLE
CPU.RLE
CDROM.RLE
BOOTBIOS.RLE


Интересно, этот неизвестный алго случайно не RLE?


Ранг: 220.0 (наставник)
Статус: Участник

Создано: 6 августа 2018 00:09 · Поправил: f13nd New!
Цитата · Личное сообщение · #8

IOCTL_ пишет:
Интересно, этот неизвестный алго случайно не RLE?
Предположение классное, но если один из приложенных сжатых файлов Dat_8c5bb_Size_11169.bin, то нет. RLE это когда двумя полями кодируется длина повторяемой последовательности и количество повторений, в нем как в лемпеле-зиве очень хорошо должны быть видны несжатые участки. Если только этот RLE не оперирует с битами, а не байтами, но это было бы странно. Некрофильство какое-то, тема 5летней давности.

ЗЫ:
Code:
  1. 54 AF 67 32 AB 68 98 F5 54 9F 67 02 AB 78 98 E5
  2. 54 8F 67 12 AB 08 98 95 54 FF 67 62 AB 18 98 85
  3. 54 EF 67 72 AB 28 98 B5 54 DF 67 42 AB 38 98 A5
  4. 54 CF 67 52 AB C8 98 D2 A5 33 67 A6 AB C4 98 41
Глядя на это я бы сказал, что файл зашифрован чем-то простеньким с длиной слова 8 байт, возможно поверх этого самого RLE, где в конце сжатые нули идут. Но блин, кому это щас надо.

Ранг: 56.9 (постоянный)
Статус: Участник

Создано: 6 августа 2018 19:30 New!
Цитата · Личное сообщение · #9

надо было весь дамп выкладывать а не какие-то огрызки...
 eXeL@B —› Электроника —› Kernel32.dll в биосе?

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS