Как извлечь дамп bios из exe файла hp
Восстановление повреждённой прошивки BIOS на ноутбуке программатором, в случае, если ноутбук не загружается. Часть 3. Извлечение прошивки BIOS из exe файла для обновления БИОСа. Редактирование файла прошивки в HEX-редакторе и её запись в микросхему BIOS
Перейдем на сайт компании Acer на страницу поддержки ноутбука Acer Aspire E1-532.
И выполним скачивание всех доступных прошивок BIOS.
Например, откроем папку с прошивкой версии 2.10.
В данной папке мы видим обычный exe файл, запустим его.
После запуска файла V5WE2210.exe получаем вот такое окно с ошибкой, в котором говориться о том, что данная прошивка BIOS не подходит для данного ноутбука или компьютера. Кнопку ОК пока не нажимаем, так как нам нужно из файла V5WE2210.exe извлечь файл прошивки BIOS для нашего ноутбука Acer Aspire E1-532.
Переходим на раздел С: по пути
C:\Пользователи\Имя пользователя\AppData\Local\Temp (имя пользователя может быть любым в зависимости от того, с каким именем создана учетная запись). В папке Temp видим временную папку 7zS2C4E.tmp, которая появилась после запуска файла V5WE2210.exe.
Откроем папку 7zS2C4E.tmp и видим в ней файл isflash.bin, который и является файлом прошивки микросхемы BIOS. Скопируем данный файл на флешку.
Файл isflash.bin, скопированный на флешку.
Размер данного файла прошивки BIOS составляет 9.45 MB.
Микросхемы могут быть разных объёмов, рассмотрим это на примере микросхем Winbond. Как видно из таблицы, объём микросхемы может составлять 512, 256, 128, 64, 32 Mbit и так далее.
Микросхема W25Q64FV имеет объём 64 Mbit (или 8 MB).
Так как наш файл прошивки BIOS isflash.bin, извлечённый выше из exe файла весит 9.45 MB, а объём микросхемы BIOS на материнской плате ноутбука Acer Aspire E1-532 составляет 8 MB, то для успешного восстановления прошивки BIOS нам необходимо уменьшить файл isflash.bin с 9.45 MB до 8 MB. Для этих целей воспользуемся hex редактором, например HxD. Переходим по адресу
Щёлкаем по скачанному файлу и запускаем установку.
Щёлкаем по ярлыку hex редактора HxD и запускаем его.
Главное окно HxD.
Щёлкаем по File-Open.
Выделяем файл isflash.bin и жмём "Открыть"
Таким же образом открываем файл поврежденной прошивки BIOS isflash01.bin (который мы сохранили во второй части статьи).
Рассмотрим внимательно структуру файла isflash01.bin. Как видим, файл прошивки isflash01.bin начинается со значений FF (строка 00000000), а в строке 00000010 присутствуют значения 5A A5 F0 0F.
Теперь рассмотрим структуру файла isflash.bin. Видим, что данный файл прошивки начинается со значений 4D 5A 00 00 (строка 00000000). Нам нужно сделать так, чтобы файл isflash.bin начинался точно так же, как и файл isflash01.bin, то есть чтобы началом файла isflash.bin были значения FF (строка 00000000).
В открытом файле isflash.bin жмём Search-Find.
И выполняем поиск значения 5A A5 F0 0F.
Видим, что значение 5A A5 F0 0F в файле isflash.bin находится в строке 0001F340, также выше в строке 0001F330 видим значения FF.
Выделим в файле isflash.bin диапазон строк 00000000-0001F320. Для этого выбираем Edit-Select block.
Указываем начальную (00000000) и конечную (1F320) строки выделяемого диапазона.
Выделенный диапазон строк 00000000-1F320.
Удалим выделенный диапазон строк из файла isflash.bin, щёлкнув Delete.
Как видим, после удаления выделенных строк файл прошивки isflash.bin теперь начинается точно так же, как и файл isflash01.bin, а именно в строке 00000000 присутствуют значения FF, а в строке 00000010 значения 5A A5 F0 0F.
Вернёмся к файлу прошивки isflash01.bin. Пролистаем его до конца и видим, что он заканчивается строкой 007FFFF0.
Если пролистать до конца файл isflash.bin, то видим, что он заканчивается строкой 009548F0.
Удалим из файла isflash.bin все строки, находящиеся в диапазоне 00800000-9548F0, то есть сделаем так, чтобы файл isflash.bin заканчивался строкой 007FFFF0. Жмём Edit-Select block.
Указываем диапазон выделяемых строк.
Выделенный диапазон строк 00800000-9548F0.
Удалим выделенный диапазон срок 00800000-9548F0, щёлкнув Delete.
Как видим, теперь файл прошивки isflash.bin заканчивается строкой 007FFFF0.
Сохраним файл прошивки BIOS под новым именем, выбрав Save as…
Указываем имя, например isflash_new и жмём Сохранить.
Новый файл прошивки BIOS isflash_new.bin.
Следует обратить внимание на то, что файл isflash_new.bin весит столько же, сколько и файл isflash01.bin, который мы сохранили во второй части, а именно 8 MB.
Так как микросхема W25Q64FV, как было сказано выше имеет объём 64 Mbit (или 8 MB), и наш редактированный файл прошивки isflash_new.bin весит 8 MB то мы можем приступать к перепрошивке. Подключаем программатор CH341A к микросхеме BIOS таким же образом, как это делали во второй части статьи.
Запускаем программу CH341A-USB. Указываем производителя и модель микросхемы и удаляем старую прошивку BIOS, нажав "Стирание".
Универсальная программа для снятия прошивок и бекапов БИОСа с любых моделей ноутбуков и персональных компьютеров.
Дамп надо делать всегда, когда мы хотим сделать прошивку, обновление, update или откат БИОС. Иногда просят сделать копию БИОСа ноутбука или материнской платы персонального компьютера, для ремонта аналогичного оборудования.
А что же такое БИОС и как это расшифровывается эта аббревиатура.
БИОС это сокращения от английских слов Base_Input_Output_System и переводится это как базовая_система_ввода_вывода
Делать дамп БИОСа ноутбуков и компьютеров при помощи этой программы очень легко и просто.
Краткая инструкция как пользоваться программой Universal BIOS utility Backup ToolKit 2.0 для создания bios damp, а по-русски резервную копию.
Видео инструкция по работе с этой программой.
Многие антивирусы определяют эту программу как вирус, но это не так.
Мой AVG определяет его то же как вирус. А на буке каспер говорит, что всё нормально.
После проверки этого файла посмотрите, находит ли ваш антивирус в нём вирус. Если да то отключите его на время работы программы.
Потом распаковываем архив и запускаем полученный файл с именем Universal BIOS Backup ToolKit 2.0.exe
Если ваша система скажет что требуются права администратора. Тогда щелкаем правой клавишей мыши по этому файлу и жмём пункт запустить от имени администратора.
После этого открывается окно программы, в которой мы видим информацию о типе, версии, размере, производителе и дате вашего БИОСа.
После этого, жмем кнопку Read и ждем, пока не закончится процесс чтения БИОСа.
После этого появится табличка с надписью, что чтение БИОСа завершено успешно.
Жмём ОК. Потом жмём кнопку Backup.
Нам предлагают выбрать место, куда мы сохраним дамп БИОСа. Выбираем нужную папку и жмём кнопку сохранить.
Все мы с вами сделали резервную копию БИОСа, можно обновить версию, шить новую или старую стабильную версию БИОСа.
Как извлечь файлы BIOS Dell?
Скопируйте файл BIOS.exe на диск C:
Запустить командную строку в режиме администратора и напишите это:
cd\
bios.exe /writeromfile
bios.exe /writebinfile
bios.exe /writehexfile
» bios.exe — это файл загруженный c сайта Dell. «
Распакованный файл bios, будет скопирован на диск C:!
Распаковка новых BIOS Dell.
cd\
cd Python27
python DecompNewDell.py biosupdate.exe
Должно получиться как на фото ниже.
И в папке с Python (обычно это C:\Python27), появится файл biosupdate.exe_decompressed.hdr.
- с программой PFSExtractor.exe, извлекаем программу в ту же папку где у нас был создан файл.hdr (обычно это C:\Python27).
- В командной строке Windows пишем:
Получится как на фото ниже.
И будет создана папка biosupdate.exe_decompressed.hdr.extracted, внутри которой находятся все извлеченные файлы из которых можно собрать дамп для прошивки на программаторе. Готово!
Собственно, оригинальный способ, оснастку и микрокоды можно найти (непосредственно инструкция по AMI ), и в большинстве случаев использование этого способа не несет никаких проблем и не имеет подводных камней, но я в своей практике регулярно сталкивался с такой проблемой:
Т.е. имела место банальная нехватка свободного места внутри образа. Когда модифицируешь BIOS для себя под конкретный процессор, на это можно не обращать внимания, т.к. всегда можно загрузить всего один микрокод именно под свой процессор, либо удалить какой-нибудь старый микрокод для освобождения места, но когда модифицируешь потоком, нужно искать другое решение, компромиссное.
В качестве компромисного я выбрал следующее решение — берем последние версии микрокодов для всех процессоров поколения CORE во всех конструктивах (Celeron E, Pentium E, Core 2 Duo, Core 2 Quad, Xeon *3xxx/*5xxx) и подменяем ими всё что было до того. Набор микрокодов получился следующий:
Объём этого набора — всего 76 килобайт. Данный файл получился путём объединения этих файлов:
cpu00010676_plat00000001_ver0000060f_date20100929.bin
cpu00010676_plat00000004_ver0000060f_date20100929.bin
cpu00010676_plat00000010_ver0000060f_date20100929.bin
cpu00010676_plat00000040_ver0000060f_date20100929.bin
cpu00010677_plat00000010_ver0000070a_date20100929.bin
cpu0001067a_plat00000011_ver00000a0b_date20100928.bin
cpu0001067a_plat00000044_ver00000a0b_date20100928.bin
cpu000006f2_plat00000001_ver0000005d_date20101002.bin
cpu000006f6_plat00000001_ver000000d0_date20100930.bin
cpu000006f6_plat00000004_ver000000d2_date20101001.bin
cpu000006f7_plat00000010_ver0000006a_date20101002.bin
cpu000006f7_plat00000040_ver0000006b_date20101002.bin
cpu000006fb_plat00000001_ver000000ba_date20101003.bin
cpu000006fb_plat00000004_ver000000bc_date20101003.bin
cpu000006fb_plat00000010_ver000000ba_date20101003.bin
cpu000006fb_plat00000040_ver000000bc_date20101003.bin
cpu000006fd_plat00000001_ver000000a4_date20101002.bin
Сама процедура модификации тоже немного изменилась и стала если не проще, то быстрее:
Шаг 1 — открываем образ BIOS в программе MMTool:
Шаг 2 — для проверки переходим на последнюю вкладку (CPU PATCH) и смотрим количество микрокодов. Здесь их к примеру 31 штука:
Шаг 3 — переходим на вкладку Replace и ищем на ней пункт «P6 Micro Code»:
Шаг 4 — выбрав пункт «P6 Micro Code» жмём кнопку Икщцыу, выбираем файл ncpucode.bin, описанный выше и заменяем его кнопкой Replace:
Шаг 5 — для проверки переходим на последнюю вкладку (CPU PATCH) и смотрим количество микрокодов. После подмены микрокодов осталось 17, версия самая последняя:
По традиции публикую ссылку на архив с инструментами — (zip, 234KB). Архив содержит исполняемый файл MMTOL.exe (версия 3.22 BKMOD), файл с микрокодами на все 45/65nm процессоры поколения core/xeon ncpucode.bin , а так же два файла 45nm.bin и 65nm.bin с микрокодами только на 45nm процессоры и только на 65нм. Использование этих файлов может быть полезным в тех случаях когда необходимо освободить дополнительный объём в BIOS, например, для новой firmware какого-то контроллера, сетевого, дискового и пр.
!NB : Ни в файле ncpucode.bin, ни в файлах 45nm.bin/65nm.bin нет поддержки процессоров Pentium 4, Celeron (без буквенных индексов), Pentium D, Celeron D и Xeon W (Xeon 5080 например). Это процессоры поколения NetBrust.
Восстановление повреждённой прошивки BIOS на ноутбуке программатором, в случае, если ноутбук не загружается. Часть 3. Извлечение прошивки BIOS из exe файла для обновления БИОСа. Редактирование файла прошивки в HEX-редакторе и её запись в микросхему BIOS
После запуска файла V5WE2210.exe получаем вот такое окно с ошибкой, в котором говорится о том, что данная прошивка BIOS не подходит для данного ноутбука или компьютера. Кнопку ОК пока не нажимаем, так как нам нужно из файла V5WE2210.exe извлечь файл прошивки BIOS для нашего ноутбука Acer Aspire E1-532.
C:\Пользователи\Имя пользователя\AppData\Local\Temp (имя пользователя может быть любым в зависимости от того, с каким именем создана учетная запись). В папке Temp видим временную папку 7zS2C4E.tmp, которая появилась после запуска файла V5WE2210.exe.
Откроем папку 7zS2C4E.tmp и видим в ней файл isflash.bin, который и является файлом прошивки микросхемы BIOS. Скопируем данный файл на флешку.
Файл isflash.bin, скопированный на флешку.
Размер данного файла прошивки BIOS составляет 9.45 MB.
Микросхемы могут быть разных объёмов, рассмотрим это на примере микросхем Winbond. Как видно из таблицы, объём микросхемы может составлять 512, 256, 128, 64, 32 Mbit и так далее.
Так как наш файл прошивки BIOS isflash.bin, извлечённый выше из exe файла весит 9.45 MB, а объём микросхемы BIOS на материнской плате ноутбука Acer Aspire E1-532 составляет 8 MB, то для успешного восстановления прошивки BIOS нам необходимо уменьшить файл isflash.bin с 9.45 MB до 8 MB. Для этих целей воспользуемся hex редактором, например HxD. Переходим по адресу
Таким же образом открываем файл поврежденной прошивки BIOS isflash01.bin (который мы сохранили во второй части статьи).
Рассмотрим внимательно структуру файла isflash01.bin. Как видим, файл прошивки isflash01.bin начинается со значений FF (строка 00000000), а в строке 00000010 присутствуют значения 5A A5 F0 0F.
Теперь рассмотрим структуру файла isflash.bin. Видим, что данный файл прошивки начинается со значений 4D 5A 00 00 (строка 00000000). Нам нужно сделать так, чтобы файл isflash.bin начинался точно так же, как и файл isflash01.bin, то есть чтобы началом файла isflash.bin были значения FF (строка 00000000).
Видим, что значение 5A A5 F0 0F в файле isflash.bin находится в строке 0001F340, также выше в строке 0001F330 видим значения FF.
Как видим, после удаления выделенных строк файл прошивки isflash.bin теперь начинается точно так же, как и файл isflash01.bin, а именно в строке 00000000 присутствуют значения FF, а в строке 00000010 значения 5A A5 F0 0F.
Вернёмся к файлу прошивки isflash01.bin. Пролистаем его до конца и видим, что он заканчивается строкой 007FFFF0.
Удалим из файла isflash.bin все строки, находящиеся в диапазоне 00800000-9548F0, то есть сделаем так, чтобы файл isflash.bin заканчивался строкой 007FFFF0. Жмём Edit-Select block.
Следует обратить внимание на то, что файл isflash_new.bin весит столько же, сколько и файл isflash01.bin, который мы сохранили во второй части, а именно 8 MB.
Так как микросхема W25Q64FV, как было сказано выше имеет объём 64 Mbit (или 8 MB), и наш редактированный файл прошивки isflash_new.bin весит 8 MB то мы можем приступать к перепрошивке. Подключаем программатор CH341A к микросхеме BIOS таким же образом, как это делали во второй части статьи.
Запускаем программу CH341A-USB. Указываем производителя и модель микросхемы и удаляем старую прошивку BIOS, нажав "Стирание".
Комментарии (21)
Рекламный блок
Подпишитесь на рассылку
Навигация
Облако тегов
Архив статей
Сейчас обсуждаем
Гость Алекс
Очень жду эту фитчу! Честно из-за ее отсутствия я откатился на 10ку, хотя в 11 много чего нравится,
Grey3
Цитата: Гость Виталий России нужен отечественный VPN. Пользуйтесь Kaspersky VPN - ежемесячно
Гость Алексей
При попытке открыть получившийся ISO в пустой виртуалке, пишет "Fatal: Could not read from the boot
rediffusion
rediffusion
Как будут выглядеть параметры, если ссылаться на уже извлечённый install.wim из .ISO?
RemontCompa — сайт с огромнейшей базой материалов по работе с компьютером и операционной системой Windows. Наш проект создан в 2010 году, мы стояли у истоков современной истории Windows. У нас на сайте вы найдёте материалы по работе с Windows начиная с XP. Мы держим руку на пульсе событий в эволюции Windows, рассказываем о всех важных моментах в жизни операционной системы. Мы стабильно выпускаем мануалы по работе с Windows, делимся советами и секретами. Также у нас содержится множество материалов по аппаратной части работы с компьютером. И мы регулярно публикуем материалы о комплектации ПК, чтобы каждый смог сам собрать свой идеальный компьютер.
Наш сайт – прекрасная находка для тех, кто хочет основательно разобраться в компьютере и Windows, повысить свой уровень пользователя до опытного или профи.
Разделы сайта
Социальные сети
Собственно вопрос уже задан. Есть файл прошивки от Фуджика Амило ПА 3553. Чем можно его извлечь?
Насколько мне известно, универсальной нет.
Есть прога UniExtract - распаковщик EXE-шников, но он очень редко распаковывает БИОС.
А вообще чаще всего EXE-шники - простые архивы и распаковываю я их Total Commander'ом.
Для exe-шников от Dell (в командной строке): filename.exe -writeromfile
или: filename.exe /writeromfile
согласен. Универсальной проги нет и БЫТЬ НЕ МОЖЕТ! Можно придумать и записать некие общие соображения, которые будут помогать находить способ к распаковке. Но не более. Ниже напишу.
не для всех. Самые новые уже этот ключ не поддерживают. Увы. Есть еще ключ -writehdrfile. Он записывает некий hdr-файл в каталог с exe'шником, но зачем он нужен, я пока не догнал.
ИТАК, варианты
1) Dell - написано выше: запуск с ключом -writeromfile
2) Samsung - натравливаем или Samsung FW Extractor, или утилиту find_gz на файл и получаем rom
3) IBM/Lenovo - распаковываем exe'шник с сайта и видим кучу файлов: прошивальщик PHLASH.EXE, файлы $XXXXXXX.FL1, $XXXXXXX.FL2. Эти файлы содержат БИОС. Зачастую один из двух файлов бывает упакован. Для распаковки нужна утилита PHCOMP (гугль в помощь, коллеги).
4) LG. Лучше найти ISO-образы дисков с БИОСами. Там они лежат в бинарном виде. Иногда требуется PHCOMP для распаковки. Если же скачивать с оф. сайта, то БИОС можно найти в ресурсах EXE-файла и выковырять его оттуда. Проги для просмотра ресурсов - PE Explorer, ResThief и многие другие.
При прочих равных ВЫГОДНЕЕ загрузить не EXE под Win, а загрузочный образ ISO для прожига на CD/DVD-болвани. *Всегда* можно извлечь загрузочную информацию с ISO-образа. Я предпочитаю это делать программой WinImage, но можете подобрать любую аналогичную. Обычно загрузочная область выглядит как образ дискеты 1.44МБ. Ее извлекаем и открываем опять в WinImage, после чего распаковываем. Линуксоиды могут смонтировать файл как контейнер с ФС. Иногда загрузочная область выглядит как образ HDD. Тут тоже проблем нет.
Еще достаточно универсальный метод - порыскать в каталоге TMP. В винде, напоминаю, их несколько - как минимум для каждого пользователя и общесистемный.
По поводу FTS_BIOSWindowsFlashWinflashAMILOPa3553__1031757 :
1) записывает файл P15V116.EXE и кучу всякой мишуры в каталог C:\WINDOWS (офигеть, не охамели ли они!?)
2) далее запускаются батники, производится выбор правильных ключей итд итп. В конечном счете запускается p15v116.exe, который и прошивает ноут.
Внутри этого файла прошивка лежит открытым текстом. Незашифрованная. Не пожатая. Что нужно сделать? С помощью hex-редактора отметить начало, конец и вырезать в новый файл. Для того, чтобы это сделать нужно знать структуру файла БИОСа. Это приходит с опытом. Можно начать с открытия множества файлов прошивок и их сравнения друг с другом. Могу подсказать, что в файле P15V116.EXE начало самой прошивки где-то в районе смещения ~0D9020, а конец - ~2D9E40. Дальше думайте сами. Неглупые ведь!
Несколько способов которые всегда работают
1. В Total Commander-е Ctrl-PgDn на екзешнике
2. Некотрые БИОСы упакованы 7-Zip, аналогично учтанавливаем архиватор и распаковываем.
3. Чистим Видовс Темп, запускаем екзешник с БИОСом на совсем другой машине. Программа прошивки ругается на неверную платформу.
Не нажимая ничего в программе лезем в Видовс Темп, и там ищем все, прошивку.
Метод работает на 99%
Утилиты для бэкапа/прошивки/редактирования биоса.
1. Universal BIOS Backup ToolKit - бэкап "любого" биоса на рабочей машине из под Win (бэкап не всегда рабочий).
3. RW-Everything - Powerful utility for hardware engineers, firmware (BIOS) engineers
4. SLIC ToolKit V3.2 - редактирование SLIC-таблицы (whitelist-ы).
Утилиты для бэкапа/прошивки/редактирования видео-биоса.
1. NiBiTor Util - NVIDIA BIOS Editor
Утилиты для распаковки/правки биоса.
0. Распаковка *.exe-шников.
Первым делом нужно попробовать распаковать exe-шник архиватором (лучше 7-Zip-ом, т.к. последние версии поддерживают большое кол-во упаковщиков), если не помогло, то пробуем распаковать плагином InstallExplorer 0.9.2 (перекочевал плагин из FAR-а) для Total Commander-а.
На выходе должны получить кучу файлов из которых на интересуют FD-файлы - Insyde, FLx-, WPH-файлы - Phoenix, ROM-, BIN-файлы - и Phoenix и AMI (универсальное расширение файла).
Далее по тексту: бинарник - это вытянутый из архива FD-, FLx-, WPH-, ROM-, BIN-файл.
1. Расшифровка, зашифрованного алгоритмом RSA, бинарника InsydeH20 (HP G62-a50ER и подобные).
1) качаем PhoenixTool
2) в пакет утилит PhoenixTool входит программка hewprsa.exe
С помощью неё расшифровываем зашифрованный бинарник
Запуск: hewprsa.exe -d bios_in.fd -o bios_out.fd
bios_in.fd - на входе
bios_out.fd - на выходе
Альтернатива1: hewprsa_universal.exe + hewprsa_universal.bat (скормить BAT-нику зашифрованный файл, в консольном окне нажать пробел после появлении каких-либо строк после "Processing. This might take a few seconds.")
Альтернатива2: просто запускаем PhoenixTool.exe и открываем бинарник биоса. После отработки программы получим расшифрованный бинарник с расширением DEC.
2. Распаковка других InsydeH20 бинарников.
1) качаем прогу EzH2O 2.1.0.13
2) File\Load File. если не ругнулась, то File\Save As.
3. Распаковка бинарников Phoenix начинающихся со строк: BCPVPD or $COMPIBM - у Lenovo такие
1) распаковываем exe-шник с помощью InnoUnp через плагин MultiArc к ТС, получаем файл *.FL1
[InnoSetup]
Description="Inno Setup [ARS]"
Extension=exe
Archiver=%Commander_Path%\..\Arc\!UnPackers\Inno\InnoUnp\innounp.exe
ID=49 6E 6E 6F 20 53 65 74 75 70 20 53 65 74 75 70 20 44 61 74 61 20 28
IDPos=
IgnoreErrors=0
Start="^--------------------------------------"
End="^--------------------------------------"
Format0="zzzzzzzzzz yyyy.tt.dd hh:mm nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn"
List=%P -v -m %AQ
Extract=%P -e -m -c%R %AQ @%LQ
ExtractWithPath=%P -x -m -c%R %AQ @%LQ
SkipSfxHeader=0
SkipEmpty=0
SkipDirsInFileList=0
SearchForUglyDirs=0
BatchUnpack=1
SkipLIST=1
2) в состав PhoenixTool входит e_bcpvpw. Распаковываем сам бинарник:
Запуск: e_bcpvpw.exe bios_in.fl1 bios_out.fl1
4. Распаковка некоторых Compaq-овских бинарников.
Awesome Dirty Do Checksum Checker V3
7. Распаковка EXE-обновления Dell
Dell_HDR_Extract. Подробное описание работы тут.
! | Ciber SLasH писал(а): |
В архивах никаких вирусов нет - всё проверено лично в работе (и не один год). |
Распаковка exe-шника, который не удалось распаковать ни архиватором, ни InstallExplorer-ом.
1. Находим программу PE Explorer
2. Открываем в ней подопытный exe-шник.
3. Далее "View\Section Headers" и видим (или не видим) под секциями находится приклеенные к файлу дополнительные данные:
8. Полученный файл лучше сравнить с дампом боиса снятого на программаторе на предмет того, какими данными начинается бинарник. В моём примере extra-данные начинаётся сказачной строкой "ANDERSON" - это данные для прошивальщика. Их размер, как пишется здесь - 2Fh (47 байт). Но похоже всё таки не 2Fh, а 30h, т.к. бинарник не должен начинаться с символа "A" (41h) - это соображение было получено из того, что в архиве подопытного биоса есть отдельный бинарник в папке DOS и его начало без символа "A". Значит из нового файла нам нужно удалить с начала файла 30h данных или начинать копировать на шаге 6 не с адреса начала extra-данных, а с адреса "адрес начала" + 30h.
Удаляем с нового файла 30h данных с начала файла в HxD: Ctrl+E (Выделить блок)
смещение начала: 0
длина: 30
Выделили нужный блок и жмём Del (удалить).
Я делаю проще - отсчитываю X МБайт от строчки ANDERSON и ищу окончание БИОСа. Оно обычно типовое. Т.е., например, последовательность байтов
резать нужно перед второй строкой. Сигнатуры тут это байты 1, 9 (инструкции перехода с опкодами E9, EA, возможны варианты), слово начиная с 13-байта (F0 00 00 00) - это особенная константа Phoenix, которая нам говорит о размере прошивки. Начиная со второй строки начинается служебная информация для прошивальщика. В текстовом виде она начинается с букв "BC"
Короче, к чему я клоню? К тому, что имея небольшие познания о структуре БИОСов, но при этом умея фильтровать и анализировать входящий поток информации, научиться отличать что есть БИОС, а что - нет, не так уж и сложно.
P.S. рассмотрел на примере феникса, т.к. именно в его прошивальщике встречается строка ANDERSON. Ни в AMI, ни в Insyde такого нет, но там точно так же легко убедиться в том являются ли последние 16 байтов прошивки корректными или нет (т.е. мы неправильно порезали).
нормалек все у Ciber SLasH получилось, главное начальную строку найти, а ненужное программатор сам отрежет.
3. Распаковка бинарников Phoenix начинающихся со строк: BCPVPD or $COMPIBM - у Lenovo такие
1) распаковываем exe-шник плагином InstallExplorer к ТС, получаем файл *.FL1
2.1) качаем прогу e_bcpvpw и распаковываем сам бинарник:
Запуск: e_bcpvpw.exe bios_in.fl1 bios_out.fl1
2.2) или качаем другую прогу phcomp и распаковываем ею:
Запуск: phcomp.exe /d bios.fl
Уважаемый Ciber SLasH, подскажите пожалуйста для "идиота", не хотят работать ни e_bcpvpw.exe, ни phcomp.exe. Я понимаю, что я что-то не так делаю, но единственное, что я получил , это $0186000.FL2 . До этого на ноутах биос не трогал, только на стационарах. Можно-ли как-то из FL1 или FL2 BIN сделать? Или WPH? Или как FL-ки эти прошить?
Заранее огромное спасибо.
Если это получилось после распаковки, то этот файл и заливается в флешку. Расширение не имеет значения.
Естественно. Распакованный биос нужен только для программатора. Иначе шить родным прошивальщиком. По прошивальщикам ничего не могу сказать.
Модификация BIOS-а с помощью PhoenixTool
Замена модуля относящегося к северному мосту 216-0674024 на модуль к 216-0674022:
0. Нашли гуглом, что чип 216-0674024 - это север RS780MC, который имеет VEN&DEV = VEN_1002&DEV_9613, а чип 216-0674022 - это север RS780M, который имеет VEN&DEV = VEN_1002&DEV_9612
1. Нашли гуглом ноут, в котором стоит чип 216-0674024 - это Toshiba L355D-S7815
2. Скачали биос к ноуту.
3. Открыли биос PhoenixTool-ом.
4. Total Commander-ом нашли в папке DUMP (которую делает PhoenixTool) видеобиос по запросу "RS780MC" - модуль имел название 8DFAE5D4-B50E-4C10-96E6-F2C266CA2008_1_715.ROM. Скопировали модуль в другую папку. Очистили папку DUMP.
Сразу же небольшая ремарка: Для других ноутбуков, других производителей, других платформ алгоритм может меняться, но за частую не сильно.
Качаем с сайта производителя BIOS. Он, как сейчас модно, упакован в exe-шник, внутри которого может оказаться еще один exe-шник. Прям, игла в яйце, яйцо в утке, утка в зайце, заяц в шоке.
Первым делом надо распаковать exe-шники. Это можно сделать 7-Zip-ом, плагинами для FAR-а и Total Commander-а и т. д. У меня, к примеру, с каких-то давних пор установлен UniExtract, он тоже это умеет.
Далее нам понадобится PhoenixTool. В его пакет входит программка hewprsa.exe , с ее помощью расшифровываем зашифрованный бинарник. Запускаем из командной строки:
Где bios_in.bin это зашифрованный бинарик, а bios_out.bin - то что мы получим после расшифровки.
На выходе получаем уже более менее читаемый бинарик, но, как сейчас модно, он в себе содержит прошивку основного BIOS-а (Main), прошивку для мультиконтроллера (EC) и еще кучу всякой инфы, которая нам неинтересна.
Теперь настала очередь Hex-редактора. Опять-таки их чуть менее чем дохрена. Есть плагины для тех же самых FAR-а и Total Commander-а, есть отдельные проги.
Открываем полученный на предыдущем шаге файл bios_out.bin и перво-наперво ищем начало прошивки. Все они начинаются с одинаковой последовательности, ее и вбиваем в поиск.
Вырезаем все, что находится до этой последовательности и в остатке получаем 4096 КБ, которые похожи на то, что написано про эту микросхему на схеме. Это и есть основной BIOS.
Теперь посмотрим, что же в вырезанном куске.
Где-то там должна находиться прошивка для мультиконтроллера. И сместившись к 00001000 видим что-то, что более менее похоже на прошивку EC.
Весит этот кусочек кода всего 128 КБ. На схеме от ноута, правда, написано, что микросхема на 512 КБ. Ну да ладно, главное, что не больше. И вообще, у меня есть дамп слитый с этой микросхемы, содержимое совпадает, а остальное тупо забито нулями.
В общем-то, полученные результаты можно шить. Бывает, что еще необходимо скопировать со старой прошивки DMI информацию, которая содержит информацию о модели, серийном номере, ключ от Windows etc. Но это не тот случай. HP, когда производили этот ноут, еще до такого не дошли. Так что об этом как-нибудь в другой раз.
Скопируйте файл BIOS.exe на диск C:
Запустить командную строку в режиме администратора и напишите это:
cd
bios.exe /writeromfile
bios.exe /writebinfile
bios.exe /writehexfile
» bios.exe — это файл загруженный c сайта Dell. «
Распакованный файл bios, будет скопирован на диск C:!
Как распаковать exe-файл с прошивкой BIOS ASRock ?
Иногда бывают случаи когда производители материнских плат распостраняют bios для своих продуктов используя упакованный exe-файл. Такой файл распаковать и просто достать заветный бинарник не получится никаким архиватором. Распаковать такой файл и и извлечь файл прошивки нам поможет инструмент AMIUCP(AMI Utility Configuration Program). Пользоваться утилитой очень просто. Покажу как распаковать exe-файл с прошивкой bios на примере ASRock. Есть файл N68CSU1.60.EXE. Это файл для обновления bios материнской платы ASRock N68C-S UCC. Запускаем AMIUCP, открываем упакованный exe-файл с прошивкой.
Далее. На закладке UAF Configuration просто отмечаем пункт Extract. В таблице выбираем строку с ID в которой значится @ROM. Указываем путь и имя файла под которым будет извлечен и сохранен файл бинарник для прошивки.
Распаковка exe-файла с BIOS от ASRock. : 26 комментариев
Спасибо огромное за эту программу, сэкономила кучу времени и сил!
еще R00 иCMD, где BIOS?
Посмотрите по размеру и сравните с объемом Вашей флеш.
Здравствуйте, имеется ASRock B85M-HDS версия bios P1.10, CPU G1840. Есть желания подружить, но нужно обновить биос. есть программатор но не могу извлечь bin файл, есть есть добрые люди помогите. Уже все перепробовал.
На сайте Asrock для этой платы есть версия bios 1.70 для Instant Flash. Это и есть Ваш чистый биос. Берите его и зашивайте программатором.
Начиная с версии 1.3 и далее все файлы больше на 4Кb,
M25p80 bios на гарячую поставил на другую плату, с таким же BIOS немогу ничем залить файл Rom. Есть ли какие то варианты?
Поправьте пожалуйста ссылку на утилиту AMIUCP. Не работает.
Добрый день, нужно прошить плату MSI Z97. Скачал с сайта bios .exe . При открытии программой появляется только CMD а BIN нет. В чём может быть проблема?
А можно указать точную модель платы?
Z97 PC Mate
ms-7850
v.1.2
Да., действительно в архиве есть файлик с таким размером, только с расширением 4А0, переименовал в BIN, его и писать?
- OFF Автор записи 18.11.2015
- OFF Автор записи 18.11.2015
Вы хотите прошить флешку программатором?
В последнее время шибко участились просьбы сделать из того, что лежит на сайте Intel под видом прошивки — то, пригодно для перешивки на программаторе, то бишь образ BIOS (точней — образ EFI ).
Капсула
Полуспособ номер один — оживляем через BootBlock
Способ номер два — собираем прошивку
CapsuleToImage
Попробовал. Загрузчик нашел без проблем, а вот как сохранить его непонял. Отметил его, нажал "Сохранить как", но ничего не сохраняется, файл не создается.
Роман, спасибо — в аккурат, вовремя пришлось (чтоб её, эту маму) ; Ысчо раз, очень вовремя и как всегда грамотно.
— Ситчик веселенький есть.
— Приезжайте, обхохочетесь.
Роман, у меня есть самые свежие исходные коды BIOS-ов для материнских плат на современных чипсетах AMD любых вариантов — RS690 (все варианты), RS780 (все варианты), наверное, еще какие-то. BIOSы c поддержкой AGESA все версий: 3,4,6. В комплекте куча фирменного софта для отладки BIOS-ов. Интересует?
Очень интересует, хоть я и не Роман
Либо нечему гореть, либо нечем поджечь!
blaster, аналогично, меня тоже очень интересует.
Партизан подпольной луны aka (R)soft
В комплекте куча фирменного софта для отладки BIOS-ов. Интересует?
Дайте пожалуйста ссылочку именно на патчер, окно которого изображено в этой статье, все перерыл не могу найти.
Не понял, где взять ПАтчер 7.
-=Кто сказал что бесполезно биться головой об стену. =- (НП)
Пх’нглуи мглв’нафх Ктулху Р’льех вгах’нагл фхтагн
Хочешь сделать хорошо — сделай это сам
А вот если у меня Insyde BIOS, и там нет капсул.
Только три FFS (очевидно, что это логотип, собственно биос и бутблок). Могу я такое сразу зашить через программатор?
Вот скриншот:
А поясните, пожалуйста следующую вещь.
Пользуюсь указанным альфа патчером.
Делаю, как и написано. Сохраняю бутблок.
Но! Что смущает!
Так там с нулевого адреса идёт EA D0 FF .
Хотя эта команда должна идти на 16 байте. (чтобы она была первой инструкцией по FFFF:FFF0).
Размер сохранённого файла 0x10000
То есть, дописывая в конец (как указано ) 4-мегбитного (512Kб) биос-файла, ничего не сдвинется.
(
Полученный код с помощью любого hex-редактора вставляем в самый конец "заготовки" прошивки (пустой файл, равный по объёму требуемой прошивке)
Ребят, как вообще эта программа работает? Как можно вставить выход с неё в заготовку?
Я, хоть убей, не пойму как первая выполняемая инструкция при таком выходе должна попасть в FFFF:FFF0. Либо нужно писать программу, чтобы она по 16 байт переписывала. или что. Объясните, пожалуйста.
lsvmo
1. При подобных вопросах было бы неплохо приводить ссылку на разбираемый образ прошивки.
2. Вместо картинки весом 232 кб можно было бы дать сохраненный bootblock весом 64 кб .
3. Глубоко наплевать, что у вас оказалось по нулевому адресу в bootblock’е . Вас интересует инструкция, лежащая в конце bootblock’а (начиная с последних 16 байт).
Плата от Intel DG31GL.
По ссылкам.
Ссылка на то, что получилось у меня с помощью альфа-программы
DG31GL.rom
Насколько я знаю, начиная с 16-ого байта от конца должна быть инструкция EA адрес.
то есть jmp адрес
А у меня её нет. А есть она только по нулевому адресу. Вот я и говорю, как так?
Подскажите, пожалуйста.
Может у кого есть образ прошивки этой платы?
P.S. Кстати, на других BIOS от Intel программа почему-то вообще сама завершается. Открываешь файл, а она раз — и нет её. Например, на DG965RY.
Насколько я знаю, начиная с 16-ого байта от конца должна быть инструкция EA адрес.
то есть jmp адрес
А у меня её нет.
Нда, какую чушь только не пишут гости, в частности Батов Дмитрий Евгеньевич .
Спасибо, очень хороший "цикл" статей о EFI.
Очень не хватает информации как при помощи BIOSPatcher7 вставить модуль в капсулу.
-= Материнская Intel DZ68DB =-
"Научена" производителем запарывать себя саму при перепрошивке БИОСа штатными средствами (по моему опыту с двумя материнскими — F7 точно, из Win может просто ничего не обновиться или сбиться настройки БИОСа, материнская остаётся работоспособной). Надо обязательно включать параметр в БИОСе (по умолчанию Disabled) "Flash Update Sleep Delay" (некая отсрочка при обновлении).
"Вскрытие" показало, что биос потёр область FFS (первоначальной инициализации, с SecCore) и не успел ничего записать взамен (т.к. он сам же при перепрошивке сделал reset или power cycle).
-= Аппаратная часть =-
Intel на матерях использует микросхемы для хранения БИОСа с интерфейсом SPI. В сети имеет хождение программа и схема программатора spipgm, созданного чехом (нужно 4 резистора и барарейку). Подключаться надо непосредственно к контактам самой микросхемы ПРЯМО НА ПЛАТЕ. Используется специальная колодочка или же подручные средства. В моём случае использовал кусочки из IDE-шлейфа на 40 пин. Отделить от него две группы по 4 проводка в каждой. Аккуратно снимается изоляция с одной стороны проводников длинной 4-5 мм, необходимо зачищать именно отступив от края (обреза) кабеля чтобы оставшаяся его незачищенная часть изоляции фиксировала проводники, не давала им распушаться. Эти зачищенные части нужно совместить с ножками микросхемы и надёжно зафиксировать. Предварительно необходимо припаять эти кусочки шлейфа к резисторам, LPT-разъему и отсеку для батареек (некоторые через несколько диодов подключают к +5В, у меня запитывалось от двух аккумуляторов типа AA; запитывание от батарейки, снятой с материнской платы быстро садит эту батарейку и, возможно, батарека должна быть обязательно на плате).
-= О прошивке =-
Предварительно переписывал из микросхемы запоротый БИОС. Рассмотрение его в hex-ах выявило, что стерты данные, где должен быть FFS первоначальной инициализации с SecCore. Это с адреса 3A0000 h и до конца файла.
Пробовал:
1) вписать отсутствующий фрагмент (FFS с SecCore по адресу 3A0000h) в имеющийся образ из микросхемы;
2) как тут написано изготавливать "прошивку" из пустого файла с записанной в конец FFS, содержащей веточку SecCore.
При заливке в материнскую — циклическое включение/выключение последней.
Она посвящена процедуре прошивки платы как программно (когда плата функционирует), так и с аппаратным сторонним программатором. Нас интересует второй вариант и особенно стр. 25 документа ("Step 5. Prepare the Target PC").
Процедура ПОДГОТОВКИ по пунктам (чего я не делал и потому не получал нужного результата):
CAUTION: To avoid damaging the motherboard and/or other components, AUX power to the machine must be OFF, and the power cord unplugged from AC power.
CAUTION: To avoid damaging the motherboard and/or other components, make sure you follow standard anti-static precautions, including the use of ground straps.
CAUTION: Overwriting the BIOS with a new image can be problematic while the management engine is active, because the management engine can create activity on the SPI bus.
1. On the target PC, make sure power is off.
2. Disconnect the power cable from AC power.
3. There is a green standby power LED next to the SATA connector on the motherboard. Wait until this LED turns off.
4. On the host PC, plug the USB end of the Dediprog cable into a USB port.
5. Отключить SATA кабели, если мешают.
6. Set motherboard in configuration mode (BIOS CFG Jumper, pin 2-3).
7. On the target PC, connect the programmer by connecting the ISP-TC-8 alligator clip to the SPI flash device on the motherboard. Make sure pin 1 on the alligator clip is connected to pin 1 on the flash device. The white line on the SPI plug should line up with the white dot or arrow on the motherboard.
8. Note the configuration of the BIOS CFG jumper.
CAUTION: Make sure the target PC is powered down and the power cable disconnected from AC power before moving the BIOS CFG jumper. Moving the jumper with the power on may result in unreliable computer operation.
9. Grasp the tab on the BIOS CFG jumper, carefully remove the jumper, and set the jumper aside. For detailed information about removing the BIOS CFG jumper, refer to the motherboard product guide.
10. Reconnect the power cable to the target PC, enabling AUX power.
11. Press and hold the power button on the target PC until the system powers up, then powers back off.
12. Locate the green standby power LED. It should now be lit (and the red Intel® ME status LED should be off если материнская плата с поддержкой ME).
Процедура после прошивки описана на стр. 40 ("Step 10. Exit Dediprog and reassemble the target PC").
Для тех, кто не владеет английским приведу СВОЙ перевод. Разумеется, никакой ответственности за качество и правильность перевода. Делайте всё на свой страх, риск и кошелёк.
ПРЕДУПРЕЖДЕНИЕ: Чтобы избежать повреждения материнской платы и/или других компонентов, питание компьютера должно быть отключено и вилка 220 В физически _вытащена_ из розетки.
ПРЕДУПРЕЖДЕНИЕ: Чтобы избежать повреждения материнской платы и/или других компонентов, убедитесь, что Вы принимаете все надлежащие меры по защите от статического электричества, включая заземляющие браслеты.
ПРЕДУПРЕЖДЕНИЕ: Только для материнских плат с технологией управления (intel Management Engine). Например, на чипсетах Q-серий. Запись в БИОС нового образа может быть затруднена при активном "движке" технологии ME, т.к. он также использует шину SPI и может передавать по ней данные при прошивке БИОСа.
1. Выключите питание прошиваемого компьютера (пациента).
2. Физически _вытащите_ вилку 220 В из розетки прошиваемого компьютера (пациента).
3. Отключите кабели от монитор, если от был подключен (в ряде случаев с монитора приходит питание на материнскую плату) + отключите ещё и все другие периферийные устройства (принтеры и проч.). Оставьте только клавиатуру.
4. На плате есть зелёный светодиод дежурного питания. Дождитесь, что он ПОЛНОСТЬЮ ПОГАСНЕТ (разрядится блок питания и не поступает питания от других устройств, например, по USB).
5. Установить перемычку на плате-пациенте в режим конфигурации БИОСа ("BIOS CFG", положение уточняйте в инструкции от материнской платы).
>>>
6. На втором (рабочем) компьютере подключить программатор к USB.
7. На плате-пациенте подключить колодку-клипсу программатора к флеш-микросхеме. При установке убедиться, что метки контакта 1 на микросхеме и на колодке совпадают. Контакт 1 на материнской плате помечен белой точкой или стрелочкой.
драйверы->BIOS). Скопировать на usb-флешку ту же версию БИОСа, что была на плате до неудачной попытки прошить её!
18. USB-flash’ку вставить в плату-пациент.
19. Подключите питание компьютера-пациента чтобы загорелся светодиод дежурного питания НА ПЛАТЕ (включить вилку в 220 В и выключатель на САМОМ БЛОКЕ ПИТАНИЯ).
20. Нажать кнопку питания на передней панели компьютера-пациента. Он может сам же тут же сделать цикл "перевключения". Если всё пойдёт ОК: USB-флешка на определённом моменте начнёт показывать обращения к ней (если на ней есть такой светодиод) и на мониторе будет отражаться ход операций прошивания. По окончании на мониторе будет фраза, что обновление БИОСа успешно окончено и необходимо отключить компьютер и установить перемычку режима БИОСа в другое положение.
21. Выключить питание компьютера-пациента, вытащить вилку из розетки 220 В компьютера-пациента.
22. Отключить кабель монитора от компьютера.
23. Дождаться ПОЛНОГО погасания зелёного светодиода НА ПЛАТЕ-пациенте.
24. Установить перемычку на плате-пациенте в режим конфигурации БИОСа ("BIOS CFG", положение уточняйте в инструкции от материнской платы).
25. Подключить монитор, подать и включить питание, СДЕЛАТЬ СБРОС НАСТРОЕК БИОСа по умолчанию (BIOS defaults).
26. Выключить питание компьютера-пациента, вытащить вилку из розетки 220 В компьютера-пациента.
27. Отключить кабель монитора от компьютера.
28. Дождаться ПОЛНОГО погасания зелёного светодиода НА ПЛАТЕ-пациенте.
29. Установить перемычку на плате-пациенте в "нормальный" (Normal/default) режим БИОСа ("BIOS CFG", положение уточняйте в инструкции от материнской платы).
Читайте также: