Никак не могу победить сабж.
Мать: GigaByte GA6OMM7E
Версия БИОС: Award Modular BIOS v6.00PG
Что делаю:
Результат:
AWARD_SW идет на ура....
Думал, что модбин не сохраняет результат. Изменил BIOS Message - сохранилось... А пароль не сохраняется...
Пробовал модбины:
modbin6.1.00.37, modbin6.1.00.37 - оба при попытке сохранить вываливаются с ошибкой.
modbin6.2.00.00beta - сохраняет, но рез-ат см. выше...
2. хеш мастер-пароля хранится в распакованном образе гланого модуля биос по смещению 1EC60 - всего 8 байт - если они первоначально раны 0 - большая вероятность что в коде биос не определен Support_AWARD_Default_Password и соответственно нет мастер-пароля
я так понимаю главный модуль - находится по смещению 20000?
распаковал его, им оказался - 6omm7e.bin
т.к. у меня AWARD_SW весьма и весьма неплохо проходит, предполагаю, что Support_AWARD_Default_Password у меня определена...
по смещению 1EC60 нашел:
22 F2 22 52 82 FA 72 F2
это и есть хеш?
да - он самый - хэш по умолчанию
MASTER_PASS_HASH DB 22h,0f2h,22h,52h,82h,0fah,72h,0f2h
Хмм... или я что-то не так делаю, или у биосов какой-то странный метод LHA - паковки...
1. СBROM.EXE говорит, что:
No. Item-Name: 0. System BIOS
Original-Size: 20000h(128.00K)
Compressed-Size: 142DDh(80.72K)
Original-File-Name: 6omm7e.BIN
2. Вырываю его из биоса в файл 6omm7e.lzh
3. lha.exe x 6omm7e.lzh - извлекаю 6omm7e.bin
4. lha.exe a 6omm7ex.lzh 6omm7e.bin - запаковывыю 6omm7e.bin в другой архив
кто-нить знает из-за чего это?
итог: 6omm7ex.lzh больше чем 6omm7ex.lzh на 1 байт, который равен FF. Мало того:
Сравниваются файлы
C:\TMP\qwe\6OMM7E.lzh
C:\TMP\qwe\6OMM7EX.LZH
------------------------------
000002> 2A > 4B
000010> 00 > F6
000011> 00 > 8B
000012> 00 > 9D
000013> 50 > A6
000018> 6F > 4F
000019> 6D > 4D
00001A> 6D > 4D
00001C> 65 > 45
000023> 20 > 4D
------------------------------
Всего 10 несовпадений
хе-хе - там заголовок разный получается у архива
вот в том-то и дело... и че теперь никак?
а cbrom'ом через /other [address] добавлять?
неа, он только в конец добавляет...
че-нить придумаем
StarGaz0r
Bizquit
Может пригодится программка
Вот ReadMe.rus к ней:
==BEGIN of ReadMe.rus================================================================
Встраивание модифицированных модулей
(в т.ч. ORIGINAL.TMP)
в файл образа БИОС (AWARD)
==========================
{ Неоценимую помощь в создании этого минируководства оказала информация с
homepage1.nifty.com/dangan/en/Content/Program/Java/jLHA/Notes/Level0Header... }
Для того, чтобы записать обновленный ORIGINAL.TMP обратно в файл прошивки,
нужно:
1. Заархивировать его. Есть 2 способа:
а) архиватором LHA:
lha a
б) CBROM'ом :
CBrom /PCI
(вместо /PCI может быть что угодно: /ACPI, /OEM0 ...)
любой файл, который не жалко (хоть нулевой длины)
в результате CBROM ругается и подвиснет
(это нормальная реакция на файл )
жмем Ctrl+Break
получаем нужный нам файл файл BIOS.ROM в текущей директории
2. В порлученном архиве модифицировать следующие байты (в HEX-редакторе):
а) #0Fh=00h #10h=00h
(если архив создавался с помощью LHA, то по этим байтам обычно расположено
ВРЕМЯ последней модификации файла)
б) #11h=00h #12h=50h - идентификаторы основного образа;
{ID остальных образов можно глянуть на:
rom.by/phpBB2/viewtopic.php?t=2079&postdays=0&postorder=asc&st... }
(если архив создавался с помощью LHA, то по этим байтам обычно расположена
ДАТА последней модификации файла)
в) и желательно ExtendedArea1,2,3 (=20h{OSID},00h,00h)
(если архив создавался с помощью LHA, то там обычно (=4Dh{MS-DOS},00h,00h))
г) если не устраивает регистр букв в названии файла, то можно изменить его;
можно также полностью сменить название на другое такой же длины;
3. Пересчитать и подправить ChkSum (байт #01h)
{вручную или с помощью моей программки:
cp.people.overclockers.ru/cgi-bin/dl.pl?id=1535&filename=myLHAhdr.rar }
4. Проверить полученный архив с помощью LHA:
lha t BIOS.ROM <-- если выдаст ошибку, то проблемы с CRC или ChkSum
lha -t BIOS.ROM <-- если выдаст ошибку, то проблемы с ChkSum
5. Далее подправленный архив с пожатым ORIGINAL.TMP можно встраивать в
файл образа БИОСа, как описано в статье { rom.by/biosedit.htm }
Единственное, чего там не нет, но что очень важно: как рассчитать байт CRC,
который расположен в файле биоса сразу же за пожатым ORIGINAL.TMP.
На форуме ROM.BY я спрашивал об этом местного Гуру.
{ rom.by/phpBB2/viewtopic.php?p=15149#15149 }
Но Гуру молчит, как партизан.
Либо блюдет профессиональную тайну, либо сам не знает, а использует какой-то
обходной путь, но стыдится в этом признаться.
Со временем может сам разберусь с этим проклятым CRC.
Может и не нужен он вовсе.
==END of ReadMe.rus================================================================
PS: Пункт 5 актуален, конечно же, только при добавлении ORIGINAL.TMP
PPS: Программа только показывает правильную контрольную сумму. Заносить его в файл придется вручную с помощью HEX-редактора.
ПС [13-06-2006] Идеальный скриншот BIOS'а ? Запросто ! // K.V.
Поскольку на мой вопрос на конфе Оверклокерсов уважаемый xKVtor не ответил отрицательно , привожу здесь выдержку из его поста в тамошней теме:
Например, несложно написать программу-ревизор, которая проверяла бы содержимое CMOS-памяти и сравнивала бы его с эталоном.
Во время ПОСТ, если она находит отличие/отклонение, то немедленно исправляет его и принудительно ребутит компьютер.
Много места программка не займет -- всего то потребуется пересылать/читать байты по двум портам.
Ее можно было бы запихнуть в биос, оформив в виде дополнительного ROM-модуля.
Это даст возможность использовать ее на большинстве материнских плат практически без изменений.
Желательно предусмотреть откат, иначе любая мало-мальская необходимость в смене настроек биоса может потребовать перешивки хот-свапом. Откат можно реализовать способом, который я предлагал здесь. Его преимущества по сравнению с откатом по отсутствию клавиатуры: он проще (меньше кода), надежнее (потому что проще и нет зависимости от контроллера клавиатуры), безопаснее (злоумышленнику сложнее сбросить CMOS, чем вытащить клавиатуру).
Вот только кто бы взялся за реализацию этого CMOS-ревизора ?
Мысль, IMHO, достаточно интересная чтобы зажечь кого-нибудь...
- Ситчик веселенький есть?..
- Приезжайте, обхохочетесь!..
Отправить комментарий