Дамп биоса что это: Бекап Биоса Universal BIOS Backup ToolKit 2.0 – Бекап Биоса Universal BIOS Backup ToolKit 2.0

Бекап Биоса Universal BIOS Backup ToolKit 2.0

Бекап Биоса

Бекап Биоса

Представляю универсальную программу для снятия прошивок и бекапов БИОСа с любых моделей ноутбуков и персональных компьютеров.

Дамп БИОСа необходимо делать всегда, когда мы хотим сделать обновление, update или откат БИОС. Иногда просят сделать копию БИОСа ноутбука или материнской платы персонального компьютера, для ремонта аналогичного оборудования.

А что же такое БИОС и как это расшифровывается эта аббревиатура ?

БИОС это сокращения от английских слов Base_Input_Output_System и переводится это как базовая_система_ввода_вывода. Более подробно можно почитать в вики

Сделать дамп БИОСа ноутбуков и компьютеров при помощи этой программы очень легко и просто. Поехали…

Краткая инструкция как пользоваться программой Universal BIOS utility Backup ToolKit 2.0 для создания bios damp, а по-русски резервную копию.

Сначала скачиваем эту программу по ссылке снизу.

скачать Universal BIOS Backup ToolKit 2.0

Многие антивирусы определяют эту программу как вирус, но это не так.

После скачивания можете проверить этот архив на сайте www.virustotal.com который, скажет что половина антивирусов найдут в нём различные вирусы, а вторая половина не найдёт.

После проверки этого файла посмотрите, находит ли ваш антивирус в нём вирус. Если да то отключите его на время работы программы.

Потом распаковываем архив и запускаем полученный файл с именем Universal BIOS Backup ToolKit 2.0.exe

Обязательно запускаем с правами администратора — правой клавишей мыши по этому файлу и жмём пункт запустить от имени администратора.

После этого открывается окно программы, в которой мы видим информацию о типе, версии, размере, производителе и дате вашего БИОСа.

Universal BIOS Backup ToolKit 2.0

Universal BIOS Backup ToolKit 2.0

После этого, жмем кнопку Read и ждем, пока не закончится процесс чтения БИОСа.

После этого появится табличка с надписью, что чтение БИОСа завершено успешно.

Жмём ОК. Потом жмём кнопку Backup.

Universal BIOS Backup ToolKit 2.0

Universal BIOS Backup ToolKit 2.0

Нам предлагают выбрать место, куда мы сохраним дамп БИОСа. Выбираем нужную папку и жмём кнопку сохранить.

Universal BIOS Backup ToolKit 2.0

Universal BIOS Backup ToolKit 2.0

Все мы с вами сделали резервную копию БИОСа.

Просто ?

Думаю да!

Теперь можно обновить версию, шить новую или старую стабильную версию БИОСа.

Бекап Биоса Universal BIOS Backup ToolKit 2.0

Универсальная программа для снятия прошивок и бекапов БИОСа с любых моделей ноутбуков и персональных компьютеров.

Дамп надо делать всегда, когда мы хотим сделать прошивку, обновление, update или откат БИОС. Иногда просят сделать копию БИОСа ноутбука или материнской платы персонального компьютера, для ремонта аналогичного оборудования.

А что же такое БИОС и как это расшифровывается эта аббревиатура.

БИОС это сокращения от английских слов Base_Input_Output_System и переводится это как базовая_система_ввода_вывода

Делать дамп БИОСа ноутбуков и компьютеров при помощи этой программы очень легко и просто.

Краткая инструкция как пользоваться программой Universal BIOS utility Backup ToolKit 2.0 для создания bios damp, а по-русски резервную копию.

 

 

Видео инструкция по работе с этой программой.

 

Многие антивирусы определяют эту программу как вирус, но это не так.

После скачивания можете проверить этот архив на сайте www.virustotal.com который, скажет что половина антивирусов найдут в нём различные вирусы, а вторая половина не найдёт.

Мой AVG определяет его то же как вирус. А на буке каспер говорит, что всё нормально.

После проверки этого файла посмотрите, находит ли ваш антивирус в нём вирус. Если да то отключите его на время работы программы.

 

Потом распаковываем архив и запускаем полученный файл с именем Universal BIOS Backup ToolKit 2.0.exe

 

Если ваша система скажет что требуются права администратора. Тогда щелкаем правой клавишей мыши по этому файлу и жмём пункт запустить от имени администратора.

После этого открывается окно программы, в которой мы видим информацию о типе, версии, размере, производителе и дате вашего БИОСа.

backup bios

 

После этого, жмем кнопку Read и ждем, пока не закончится процесс чтения БИОСа.

После этого появится табличка с надписью, что чтение БИОСа завершено успешно.

Жмём ОК. Потом жмём кнопку Backup.

backup bios 3

 

Нам предлагают выбрать место, куда мы сохраним дамп БИОСа. Выбираем нужную папку и жмём кнопку сохранить.

backup bios 4

 

Все мы с вами сделали резервную копию БИОСа, можно обновить версию, шить новую или старую стабильную версию БИОСа.

знакомство с UEFITool / Habr

Прикрываясь полумифическими «безопасностью» и «защитой простого пользователя от буткитов» производители UEFI все сильнее закручивают гайки с каждым новым поколением своих продуктов. При этом поддержка предыдущих поколений быстро сходит на нет, и их пользователям ничего не остается, кроме как брать эту самую поддержку в свои руки. Конечно, при отсутствии исходного кода вносить какие-то изменения довольно сложно, но и без него можно сделать многое.
В своих предыдущих статьях об UEFI я планировал описать различные полезные модификации, которые помогают преодолеть некоторые заложенные производителями ограничения, но тогда до них руки не дошли, зато теперь — самое время.
В первой части этой статьи я опишу работу с написанным мной инструментом для модификации образов UEFI, а вторая будет посвящена самим модификациям.

Вступление, отказ от ответственности


Прошивка UEFI BIOS на современных платах, несмотря на наличие различных технологий вроде USB BIOS Flashback, Dual BIOS, Flash Recovery и т.п. — все равно лотерея. Прошивка же модифицированных образов — лотерея вдвойне.
Именно поэтому я прошу до начала любых экспериментов с прошивкой сделать при помощи аппаратного SPI-программатора полный дамп содержимого микросхемы, иначе восстановление после неудачной прошивки (а она рано или поздно случится) будет долгим, дорогим и болезненным.
SPI-программатор в данный момент может быть собран в домашних условиях из чего угодно, от пары резисторов и конденсаторов (SPIPGM) до Arduino или Raspberry Pi. Мой вариант дешевого и быстрого SPI-программатора описан здесь. Любителям вытравить пару-тройку плат советую обратить внимание на этот проект, а почитателям устройств «все-в-одном» — на этот.
Далее по тексту я полагаю, что у вас есть программатор, возможность восстановления после сбоя прошивки и готовность к экспериментам. Безумству храбрых, конечно, тоже можно петь песни, но не говорите потом, что я не предупреждал.
Традиционно, все, что вы тут сейчас прочитаете, написано в образовательных целях, автор не несет ответственности за возможную порчу вашего оборудования, недополученную прибыль, потерю времени и веры в человечество, вы пользуетесь предоставленным софтом на свой страх и риск и так далее.

UEFITool


Устав от ограничений существующих утилит для работы с образами UEFI (ну и пораженный синдромом NIH в самое сердце), я написал кроссплатформенную утилиту с открытым исходным кодом — UEFITool.
Это редактор образов UEFI, написан на C++\Qt, распространяется под лицензией BSD, готовые сборки выкладываются сюда.
Проект находится в активной разработке, поэтому код не блещет красотой и баги нет-нет, да попадаются. Если вдруг наткнетесь — буду рад репортам.
Для нормальной работы с утилитой стоит прочитать предыдущие статьи о структуре образа UEFI, иначе непонятно будет, что вообще происходит, но я постараюсь все же пояснить некоторые моменты. Будем считать, что это заготовка для будущей документации.
В качестве примеров в обеих частях статьи я буду использовать полные дампы с Zotac Z77-ITX WiFi (AMI Aptio4) и Dell Vostro 3360 (Phoenix SCT 2.3). К сожалению, у меня нет тестового стенда на платформе Insyde h3O, поэтому рассказать о ней мне нечего. Возможно, Falseclock знает о них немного больше.
С точки зрения UEFITool’а разницы между образами UEFI разных производителей практически нет, поэтому я остановлюсь на ней при описании патчей.
Итак, запускаем UEFITool, открываем образ (Ctrl+O) и видим примерно такое:

В левой части окна отображается структура открытого образа в виде дерева, справа — информация о выбранном элементе дерева, снизу — сообщения, указывающие на ошибки в формате файла, в данном случае — использование разработчиками Phoenix секций с типом 0xF0, назначение которых не описано в спецификации UEFI PI. Двойной щелчок по сообщению раскроет дерево так, чтобы был виден либо на сам элемент, который это сообщение вызвал, либо его родительский элемент. В это же окно выводятся результаты поиска, который можно вызвать нажатием Ctrl+F (оба варианта одной картинкой):

Здесь следует немного пояснить терминологию. Практически все структурные элементы в образе UEFI имеют заголовок, в котором хранятся служебные данные вроде GUID, атрибутов, контрольных сумм и т.п., и тело — в нем хранятся собственно данные. Текст же в заголовках не хранится, поэтому для него такой выбор не нужен.
На первом уровне дерева находятся Flash-регионы, в данном случае это Descriptor, ME и BIOS:

При выборе региона Descriptor можно узнать настройки доступа к регионам, в данном случае доступ полный, но такие настройки встречаются очень редко. Intel рекомендует производителям оборудования закрывать доступ к региону МЕ на чтение/запись и региону Descriptor на запись, именно поэтому на большинстве плат встроенными средствами полный дамп снять без «танцев с бубном» практически невозможно. При выборе региона ME можно узнать версию ME firmware, если же она не отображается — это не к добру и такой образ лучше не шить.
Перейдем еще на уровень ниже, к содержимому региона BIOS:

На этом уровне могут встречаться два типа элементов: тома и свободное место. Свободное в данном случае — не обязательно пустое, к примеру, в этом образе в самом начале Padding’а хранится прошивка
EC
.
Тома делятся на обыкновенные (формат файловой системы известен), загрузочные (формат ФС известен, содержат Security Core, изменять стоит с особой осторожностью) и неизвестные (либо неизвестен формат ФС, либо разбор еще не реализован). В нашем случае первый том после свободного пространства в начале — обычный, затем два неизвестных (на самом деле, в первом хранится NVRAM, а во втором — ключи и БД для SecureBoot, но программе я это пока еще не объяснил), последний том является загрузочным.
Откроем теперь обычный том, в данном случае в нем хранятся файлы, загружаемые в фазе DXE.

Такая структура (основной том внутри сжатой секции) используется довольно часто, она позволяет сэкономить приличное количество места в микросхеме. Есть еще вариант сжимать не весь том целиком, а каждый файл по отдельности — это несколько менее экономно в плане места, зато стартует такой UEFI BIOS быстрее, т.к. нет смысла распаковывать файлы, к которым не было обращений.
Теперь заглянем внутрь файла:

Все данные в нем хранятся внутри GUID-defined-секции (в заголовке таких секций обычно хранится ЭЦП или контрольная сумма, в данном случае — 4 байта, похожие на КС, которую, однако, никто не проверяет), и делятся на 4 секции: образ PE32 — собственно исполняемый файл в формате PE/COFF, секция зависимостей DXE — определяет порядок загрузки DXE-драйверов, секция UI — в ней хранится текст «SystemCapsuleRt.efi» в формате Unicode и неизвестная секция типа 0xF0 (скорее всего, её содержимое каким-то образом связано с вышеупомянутой КС).
Все это хорошо, конечно, но редактирования пока не видно. Не беда, вызываем для любого элемента контекстное меню, в котором видно, что с этим элементом можно сделать.

А сделать можно следующее:
  • сохранить элемент в файл либо целиком (Extract as is), либо только данные, без заголовков (Extract body)
  • пересобрать элемент (Rebuild), в этом случае при сохранении измененного образа для него (и всех его родительских элементов) будут пересчитаны размеры, контрольные суммы, исправлено выравнивание, т.е. структура образа будет приведена в соответствие со спецификацией UEFI PI
  • вставить элемент из файла, либо перед выбранным (Insert before), либо после (Insert after), либо внутрь него (Insert into, в данном случае внутрь PE32-секции ничего вставить не получится)
  • заменить элемент на другой элемент из файла, либо целиком (Replace as is), либо только его тело (Replace body)

Последнее действие является наиболее полезным, т.к. позволяет произвести модификацию какой-либо части UEFI, не затрагивая при этом структуры всего образа.

Пример использования


Рассмотрим в качестве примера полезную для пользователей MacOS X на ПК модификацию: обход установки бита LOCK (0x0F) в регистре MSR_PMG_CST_CONFIG_CONTROL (0xE2). Бит этот устанавливается DXE-драйвером PowerManagement, чтобы ОС не могла управлять множителем CPU путем записи в этот регистр. Для Windows и Linux это не большая проблема, а вот MacOS X не может стерпеть от UEFI такой наглости. Можно, конечно, пропатчить драйвер AICPM.kext (в 10.8) или ядро (в 10.9), но лучше пропатчить DXE-драйвер и не бояться, что очередное автоматическое обновление сломает загрузку. Патч этот нужен только системам на базе процессоров Intel SandyBridge, IvyBridge и Haswell и их *-E вариантов и делается так:
  1. Открываем свой дамп в UEFITool, очищаем Messages нажатием Ctrl+Backspace, чтобы не мешали
  2. Открываем поиск, выбираем Hex-pattern, Body only, ищем строку «75080FBAE80F»
  3. Делаем двойной щелчок на сообщении о том, что строка найдена, сохраняем тело указанного элемента в файл
  4. Исправляем в Hex-редакторе «75080FBAE80F» на «EB080FBAE80F» (JE становится JMP), сохраняем изменения
  5. Заменяем содержимое выбранного элемента на измененное, старый элемент будет помечен на удаление (Remove), новый — на замену (Replace), все родительские элементы до корня — на перестроение (Rebuild)

  6. Сохраняем измененный образ (Ctrl+S), если сохранение прошло успешно, будет выдан запрос на открытие только что сохраненного образа, если нет — сообщение об ошибке

Прошиваем полученный образ тем же SPI-программатором, которым он был сделан, и получаем отсутствие паники ядра при загрузке MacOS X.

Подробности, другие модификации, заключение


Если вам интересно, откуда взялся магический паттерн «75080FBAE80F» и на какие еще патчи стоит обратить внимание — читайте вторую часть этой статьи, которая будет опубликована немного позже. В ней я постараюсь подготовить побольше примеров в формате «что за модификация, зачем нужна, как сделать, кем и как была найдена», не углубляясь каждый раз в то, как именно вынуть подлежащий модификации элемент и как вставить его обратно.
Надеюсь, что статья не показалась слишком скучной и нудной. Если у вас есть вопросы и предложения — буду рад выслушать и ответить по мере сил. Баг-репортам буду рад еще больше. Спасибо заранее и удачных прошивок.

P.S. Уважаемая администрация и лично НЛО, сделайте для таких вот постов хаб UEFI, пожалуйста.

UEFI Capsule и Intel Flash Image / Habr

Выпуск материнских плат на чипсетах Intel шестой серии (P67 и его братьях) принес на массовый рынок ПК новый вариант BIOS — UEFI. В этой статье мы поговорим об устройстве файлов UEFI Capsule и Intel Flash Image.
Структура EFI Firmware Volume и полезные в хозяйстве патчи будут описаны во второй части.

UEFI Capsule

В качестве примера файла UEFI Capsule возьмем образ BIOS для ASUS P8Z77-V версии 2003.
Это типичный представитель семейства AMI Aptio4 UEFI с несколькими расширениями ASUS, не сильно влияющими на его формат. В качестве примера он взят потому, что в нем присутствуют все составляющие файла UEFI Capsule, о которых я хотел бы рассказать сегодня.

Для работы с этим файлом в первой части статьи нам понадобятся:

  • Hex-редактор на ваш вкус, я буду использовать HxD
  • Утилита Intel Flash Image Tool подходящей версии, для чипсетов 7 серии — это версия 8.xx

Распаковав архив, получаем файл размером 0х800800 байт с расширением CAP.
Это файл UEFI Capsule, формат которого был описан AMI на одной из конференций UEFI Plugfest и выглядит так:

Открываем файл hex-редактором и проверяем его на соответствие этому формату, в нашем случае заголовок выглядит так:

Размер заголовка действительно 0x0000001C, общий размер файла действительно 0x00800800, начало образа FFS действительно находится по смещению 0x800 — сомнений не остается.
Сразу же возникает соблазн разобраться досконально, как именно устроены блоки FW Certificate и OEM Header, но это не нужно. Закрытого ключа ASUS у нас пока нет, а без него подписать модифицированный файл невозможно, даже зная формат блока FW Certificate, а взламывать RSA2048 и SHA256 — дело гиблое.
На самом деле, формат этот в секрете никто и не держит, он описывается знакомой знатокам PE32+ структурой WIN_CERTIFICATE, описание которой можно найти, например, здесь, но в нашем случае это все не важно.
Ни одного байта из этого двухкилобайтного заголовка в микросхему BIOS’а не попадает, и используется этот заголовок только для проверки валидности файла перед прошивкой стандартными утилитами ASUS. При прошивке аппаратным программатором, а также низкоуровневыми утилитами вроде Intel Flash Programming Tool или flashrom этот заголовок нужно просто удалить.
Более того, микроконтроллер, осуществляющий прошивку по технологии UBF, хоть и проверяет наличие этого заголовка, но не проверяет при этом сертификаты и прошивает модифицированные файлы ничуть не хуже оригинальных.
Поэтому, если для прошивки не будет использоваться UBF, смело отрезаем 0x800 байт заголовка и сохраняем получившийся файл с расширением ROM.
Если в файле вашего BIOS’а заголовка UEFI Capsule не оказалось, значит он либо достаточно старый, например для платы на P67 или Z68, либо производитель не пожелал его использовать, несмотря на настойчивые рекомендации Intel. Считайте, что производитель уже удалил его за вас и читайте дальше.

А дальше могут быть несколько вариантов.
Если у вас десктопная плата на Intel, как в нашем примере, то получившийся файл будет состоять из нескольких регионов: дескриптора, региона GbE при наличии встроенной сетевой карты Intel, региона ME и региона BIOS.
Если у вас десктопная плата или ноутбук на AMD, то из всего вышеперечисленного остается только регион BIOS.
Если у вас ноутбук на Intel, то в файле BIOS’а, который вы можете скачать с сайта производителя и использовать для обновления, содержатся чаще всего образ только региона BIOS и прошивка для EC, хранящаяся обычно в отдельной микросхеме flash. Сам файл может быть при этом достаточно хитро структурирован или зашифрован, но при этом в микросхеме BIOS он хранится в том же виде, что и на десктопных платах, поэтому все эксперименты лучше проводить не с файлом обновления, а с дампом уже имеющегося BIOS’а, который можно снять при помощи FPT.

Intel Flash Image

AMD’шники могут смело пропустить весь текст ниже и читать вторую часть этой статьи, а мы продолжаем разбирать получившийся файл ROM.
Intel рассказывает о структуре своих BIOS’ов на страницах даташита на соответствующие чипсеты. Для всех чипсетов, начиная с 6 серии, этот формат в общем не менялся, поэтому его можно смело взять оттуда. Файл делится на 3-5 регионов:

Необязательными являются регионы GbE (используется совместно с встроенными сетевыми картами Intel начального уровня) и PDR (предназначен для данных OEM, но я ни разу не видел, чтобы он где-то использовался).
Descriptor

Этот регион должен находится в первой (из двух поддерживаемых) микросхеме flash по нулевому адресу и подразделяется на 11 секций, суммарный размер которых не должен превышать 4 килобайта. Устроен он так:

Первые 16 байт не используются и всегда равны 0xFF, за ними следует сигнатура 0x0FF0A55A, затем секция Descriptor Map, указывающая смещение начальных пяти секций и их размер.
Секция Component содержит информацию об используемых микросхемах flash: их количество (1 или 2), плотность (от 512 Кб до 16 Мб), запрещенные команды (такие как chip erase, например) и частоты чтения, быстрого чтения и стирания/записи.
Секция Region содержит смещения и размеры других регионов.
Секция Master содержит настройки доступа каждого из трех возможных мастеров (BIOS, ME, GbE) к пяти возможным регионам.
Секции PCH/PROC Straps содержат параметры конфигурации процессора и северного моста.
Секция Upper Map содержит смещение и размер таблицы VSCC.
Таблица VSCC содержит идентификаторы JEDEC и данные VSCC всех поддерживаемых Management Engine микросхем flash.
Секция OEM может быть заполнена OEM-производителями по своему усмотрению, но я не видел её заполнения ни разу.

Проверим теперь структуру полученного нами файла ROM на соответствие вышеприведенной:

Легко видно, что структура вполне себе соответствует, но угадать, за что именно отвечает каждый байт каждой секции будет непросто.
К счастью, Intel избавил нас от угадывания, выпустив утилиту FITC, которая позволяет настроить дескриптор (и не только его) и содержит подсказки по каждому доступному для редактирования пункту. Утилита эта входит в набор для разработчиков материнских плат и не предназначена для конечных пользователей, но ссылку на нее всегда можно найти на форумах, посвященных модификации BIOS’ов.
Открываем наш файл ROM в FITC 8.xx и все настройки дескриптора как на ладони:

Я крайне не рекомендую ничего менять, кто не знает, зачем он это делает.
Самыми часто изменяемыми настройками здесь являются настройки доступа к регионам (выделены зеленым на скриншоте hex-редактора), которые в дикой природе встречаются двух видов: вышеприведенные «всем можно всё» и стандартные настройки Intel. Иногда открытость записи в регион МЕ помогает справится с нарушением его работоспособности, просто перезаписав его полностью. На платах со стандартными настройками это невозможно без получения доступа к МЕ, которое на разных платах реализовано по разному и может потребовать достаточно нетривиальных манипуляций (замыкания ног аудиочипа во время загрузки, например).
Обратная сторона открытости — вредоносный код может делать что угодно с дескриптором и всем остальным содержимым микросхемы BIOS. Почему-то об этом говорить не принято, при том, что абсолютно все платы ASUS на P67 с BIOS’ам версий 3ххх и все платы ASUS на Z68 имеют открытый дескриптор. И security никакая, и с obscurity проблемы, о чем инженеры думали — не знаю.
Вторая полезная настройка — плотность микросхемы BIOS, которую приходится менять в случае восстановления испорченного BIOS’а платы с микросхемой большого объема, используя работоспособную плату с микросхемой меньшего.

GbE

Присутствует только на платах со встроенными сетевыми картами Intel начального уровня, вроде 82579.
В даташите на этот чип в разделе 10 имеется описание структуры NVM, которая и хранится в регионе GbE целиком.
Главная настройка, которую может быть интересно изменить — MAC-адрес, находящийся в самом начале региона, в первых 6 байтах. Если вдруг вам нужно сменить аппаратный MAC своей встроенной карты Intel, и регион GbE на вашей плате имеется — вы знаете что делать.
В нашем примере регион GbE находится по смещению 0x1000 от начала и содержит стандартный MAC для всех образов NVM, выпускаемых Intel в качестве обновления — 88:88:88:88:87:88:

При прошивке стандартными средствами регион GbE не обновляется вообще, несмотря на присутствие обновленного NVM в файле с обновлением BIOS’а, поэтому Intel пришлось выпустить отдельную утилиту NVM Update, когда в результате ошибки в версии 1.3 карта переставала работать нормально после установки Windows 8.
Регион содержит кучу других настроек, о которых можно прочесть в указанном выше даташите.
ME

Здесь находится Management Engine Firmware и ее настройки. Про ME можно писать бесконечно, потому что там чего только нет. Лучшее описание структуры этого региона и возможных векторов атаки на него вы можете прочесть в докладе Игоря Скочински на Breakpoint 2012.
Для тех, кто еще не ушел читать его — краткая выжимка:
В чипсетах Intel имеется микроконтролер с архитектурой ARCompact, получающий питание от дежурной линии ATX, имеющий доступ ко всем устройствам, к RAM, собственный сетевой стек и работающий под управлением ОСРВ ThreadX. Вот он то и обеспечивает все рекламируемые Intel технологии, вроде Active Management, AntiTheft, Identity Protection, Rapid Start, Smart Connect, Protected Audio Video Path и так далее и тому подобное. А при помощи Dynamic Application Loader на нем можно даже Java-апплеты запускать.
На наше счастье, с безопасностью МЕ все более или менее в порядке, и пока я не слышал о случаях успешного внедрения вредоносного кода, но само по себе наличие в чипсете МК, исполняющего неизвестные никому, кроме Intel, программы и имеющего полный доступ к RAM и сети — уже повод для паранойи у склонных к ней людей.
Изменить доступные настройки МЕ можно при помощи той же Intel FITC:

В нашем примере регион ME начинается со смещения 0x3000 и имеет размер 1,5 Мб, что указывает на плату без поддержки AMT.
BIOS

Регион состоит из одного или нескольких EFI Firmware Volume, о структуре которых я напишу во второй части этой статьи.
Там же мы затронем процесс загрузки UEFI и полезные в некоторых случаях патчи.
Platform Data Region

Регион предназначен для описания каких-либо зависящих от платформы возможностей и по плану должен использоваться OEM-производителями, но по факту я не видел его ни разу.
Источники информации

  1. Secure Firmware Update, UEFI Plugfest presentation by Zachary Bobroff (AMI)
  2. Intel 6 Series Chipset and Intel C200 Series Chipset Datasheet
  3. Intel 82579 Gigabit Ethernet PHY Datasheet
  4. Rootkit in your laptop, Breakpoint 2012 presentation by Igor Skochinsky (Hex-Rays)

P.S.

Не знаю, в какой хаб следовало бы поместить эту статью. Может быть НЛО создаст для нас хаб UEFI?
Жду ваших комментариев и прошу прощения за возможные ошибки, о которых прошу докладывать в личном сообщении.
Спасибо за внимание и до встречи во второй части.

Экстренное восстановление BIOS на GIGABYTE (c Dual Bios)

Посмотреть вложение 30235Этот топик посвящен владельцам материнских плат GIGABYTE с опцией Dual Bios (т.е. с двумя системными флешами на борту).

Ниже описанная инструкция может очень сильно помочь тем, кто по какой либо причине, перманентно запорол себе биос на подобной мат. плате.

Начало:

Буквально вчера, я решил перепрошить биос метеринки GA-EX38-DS4 на более новый (F5). Перипрошивал утлитой @BIOS из под винды. Во время процесса записи информации на микросхему, произошел сбой и комп ушел глубокую перезагрузку.

Симптомы:

После перезагрузки, компьютер стал циклически включаться на несколько секунд и так-же быстро выключаться. При этом, монитор абсолютно ничего не отображает (работает в режиме standby), аварийные диски (в том числе и флоппи) не запускаются и не считываются, клавиатура не реагирует и если что-то на ней нажимать, в дальнейшем зависает.

Попытки восстановления:

1. Система автоматического восстановления Dual Bios не сработала, т.к. сумма размера флеша биоса, скорее всего была правильной, но сам биос был не работоспособным.

2. Вынимание системной батарейки и замыкания клемм джампера сброса биоса, не помогло.

3. Различные «распальцовки», во время загрузки, на клавиатуре: F9, F12, Alt+F2, Alt+F1, Del, End, не помогли (клавиатура постоянно зависала).

4. Приводы CD-Rom, FDD и USB не работали. Думать о восстановлении биоса с аварийных носителей, просто нет смысла.

Что делать при таких симптомах?!? Вариантов тут обычно два: 1) Нести мать в СЦ, там отпаяют микруху и перепрошьют на биос программаторе. 2) Покупать новую мать, в случае если первый пункт, по какой либо причине, не прокатит..

Нет, друзья! Ничего этого делать не надо.. У нас же есть на материнке вторая микросхема с резервным работоспособным биосом!!! Так как-же заставить работать систему Dual Bios, в случае если она сама не запустилась и комп буквально «умер» у вас на глазах? Да все очень просто:

ВНИМАНИЕ!!! Перед тем как приступить к нижеизложенным действиям, имейте ввиду, что все что вы будете делать, вы делаете на свой страх и риск.

Восстановление BIOS:

1. Открываем корпус компьютера
2. Находим на материнке микросхему промаркированную на плате как M_BIOS (Это SPI flash 8-пин)
3. Берем пинцет, и при включении компа, буквально после 0,5-1-2 секунды,
однократно коротим выводы микросхемы 1 и 8 (наглядный скрин, какие ноги коротить, ниже. Обведено красным)

8pin_mb.jpg

ВАЖНО!!!
Обратите внимание на бирюзовую (на других материнских платах может быть другого цвета) точку на микросхеме. Это маркер, обозначающий первый пин, он послужит вам ориентиром, дабы не замкнуть не те ноги. Убедитесь в том, что вы замыкаете именно M_BIOS а не B_BIOS. В противном случае, вы обнулите/повредите резервную микросхему, что уже точно не позволит восстановить плату в домашних условиях.

Для тех, кто картинку не видит, принцип распиновки следующий:

— 1 — 8 —
— 2 — 7 —
— 3 — 6 —
— 4 — 5 —

(где 1, должна быть точка (маркер), обозначающая 1-ый вывод микросхемы) т.е., как видно на вышеприведенной схеме, 8-ой вывод находится ровно на противоположной стороне микросхемы. Всегда учитывайте расположение микросхемы, оно может быть разным (в зависимости от модели материнской платы). Микросхема может стоять боком, перевернута и т.п.. Точка (маркер) — ваш ориентир.

P.S./К.З.
Если закоротить контакты слишком рано — а биос еще не дошел до этапа подсчета CRC, то мы получим, через несколько секунд, постоянную перезагрузку без каких либо результатов.

Если закротить поздно — биос уже проверил «успешно» CRC прошивки и был скопирован в shadow. При этом, нужного результата, как правило, так-же не будет. Комп, при повторном включении, просто включится и будет работать в «холостую».

Необходимо повторять попытку замыкания с небольшим «сдвигом» по времени, в ту или иную сторону. Обычно, это не больше 10-20 попыток (может просто последовательно «перебирать» временные интервалы от нуля секунд и дальше. Главное не отчаивайтесь, это должно помочь!

Наконец — Удачная попытка!:
После несложных танцев с бубном, у мертвого «пациента», должен появится «пульс», в виде экрана с сообщением о повреждении BIOS и дальнейшей его перепрошивки с резервной микросхемы. Вы увидите сообщение: Warning: MAIN BIOS CHECKSUM ERROR! и ниже, спасательное для вас сообщение BIOS Auto-Recovering.. Вуаля! Мы починили свой компьютер.

З.Ы. Данный метод не может быть применен в случае физического повреждения микросхем или утери/повреждения данных с резервного биоса. Так же, этот метод применим исключительно для плат с системой Dual Bios т.е. для плат GIGABYTE с микросхемами в 8-pin

Leave a comment