а вот статей про “Hello, World” на UEFI да с графикой действительно не хватает. Больше того — я таких вообще не припомню.» (MinimumLaw)Под катом мы пошагово перепишем ту бутсекторную демку под UEFI, и она будет работать в полноцветном видеорежиме с высоким разрешением. С другой стороны, вместо 512 байт она будет занимать несколько десятков КБ.
UEFI *
Unified Extensible Firmware Interface
Необычный дуалбут: ноутбук с «двойным дном»
Не так давно на Habr Q&A я наткнулся на интересный вопрос — как сделать, чтобы два жестких диска не видели друг друга? Чтобы вирус, попав на одну систему, никоим образом не мог заразить другую. В ответах предлагали достаточно стандартные способы — использовать полнодисковое шифрование, отключить диск в диспетчере устройств и даже поставить переключатель на питание. Но что если взглянуть на задачу совершенно с другого угла и сделать всё средствами самого HDD? Да-да, сегодня мы снова погружаемся в пучины модификации прошивок и реверс-инжиниринга!
Страшные сказки на ночь, о PCI шине
А тучи, тем временем, сгущались. Да, процессоры стали быстрее. Да, действительно, там стало больше ядер. И последнее, как раз, является серьезной архитектурной проблемой. По крайней мере, для наметившегося лидера гонки.
Кто сейчас помнит такой архаизм как «Архитектура»? Мало кто. Слово
Bare-Metal Provisioning инфраструктура с нуля
Приветствую, Хабр. Меня зовут Роман, я разработчик встраиваемых систем в Getmobit. Хочу поделиться кейсом по развёртыванию программного обеспечения на большом количестве устройств на производственной линии с нуля. Заставлять людей на производстве бегать вдоль конвейера с флешкой не хотелось, а для автоматизации мне необходимо было четко понимать: на какие шаги можно поделить этот процесс, что на каждом этапе должно происходить, а главное – как модифицировать стандартный процесс, чтобы в итоге выполнять специфичные для нашего продукта операции. Основой для решения этой задачи стала технология загрузки устройств по сети (PXE). Об этом и расскажу.
Истории
Вы всё ещё меряете FSB сотнями?
Что есть, Front Side Bus (FSB, системная шина)?
Шина, обеспечивающая соединение между x86/x86-64-совместимым центральным процессором и внутренними устройствами. Её опроная частота используется, с мультипликатором, процессором.
Весь инструментарий(я знаком с HwInfo64 и CPU-Z) именно на это (сотни) и заточен. Но вот, появился у меня процессор на котором я вижу частоту шины 25МГц.
Как запускается сервер: UEFI
Ранее мы уже разбирали последовательность запуска сервера на примере устаревшего Legacy. Настало время познакомиться с UEFI поближе.
Первая версия того, что сейчас известно как Unified Extensive Firmware Interface (UEFI), разрабатывалась в 90-е годы прошлого тысячелетия специально под системы на Intel® Itanium® и называлась Intel Boot Initiative, а позже — EFI.
Желание «обновить» процесс загрузки было ожидаемо. PC-BIOS, именуемый ныне Legacy, предлагает работать в 16-битном real mode, адресует всего 1 МБ оперативной памяти, а загрузчик вместе с таблицей разделов должен размещаться в первых 512 байтах накопителя. Более того, PC-BIOS передает управление первому найденному загрузчику без возможности возврата назад. При этом обработку случаев с несколькими операционными системами возлагают на плечи загрузчика.
Active Restore: С чего начать разработку в UEFI
Всем привет. В рамках проекта от компании Acronis со студентами Университета Иннополис (подробнее о проекте мы уже описали это тут и тут) мы изучали последовательность загрузки операционной системы Windows. Появилась идея исполнять логику даже до загрузки самой ОС. Следовательно, мы попробовали написать что-нибудь для общего развития, для плавного погружения в UEFI. В этой статье мы пройдем по теории и попрактикуемся с чтением и записью на диск в pre-OS среде.
Проблематика и особенности реализации UEFI на различных платформах
Как я купил заблокированный ноутбук на eBay и попробовал сделать свой AntiTheft на базе IntelAMT
TL;DR
Absolute Computrace — технология, которая позволяет заблокировать машину(и не только), даже если на ней переустановили операционную систему или даже заменили жесткий диск, за $15 в год. Я купил ноутбук на eBay, который был залочен этой штукой. В статье описывается мой опыт, как я с ней боролся и пытался сделать то же самое на базе Intel AMT, но бесплатно.
Микрокод и уязвимости в процессорах
Простейшим решением предлагается обновление БИОСа/UEFI с установкой новой версии микрокода. Но решает ли оно все проблемы, или собственно хотябы их часть?
Active Restore: может ли аварийное восстановление происходить быстрее? Намного быстрее?
Использование новых NVMe SSD в качестве загрузочного диска на старых системах с Legacy BIOS (для любой ОС)
Будущее уже здесь или кодим прямо в браузере
Ближайшие события
Расширяем функционал WDS: добавление возможности загрузки в UEFI
Всем привет!
В данной статье, описаны шаги, которые необходимо выполнить для добавления к вашему WDS, возможности загрузки в режиме UEFI.
Т.е. инструкция в данной статье, предполагает, что у вас уже имеется, примерно следующая конфигурация:
1. Windows Server 2012R2 (или новее)
2. Полностью настроенный DHCP для работы с WDS
3. Собственно сам WDS
4. IIS
5. Виртуальная машина или ПК с Ubuntu
Так же, здесь описаны действия, которые не принесли мне должного результата.
Описал я их, для облегчения поиска и экономии вашего времени.
Предисловие
Сделал как-то на работе WDS с множеством плюшек, т.к. устал постоянно бегать с кучей флешек и перезаписывать их.
Помогли мне кстати тогда вот эти статьи:
Добавляем WDS универсальности
Загрузочное меню PXE с System Center Configuration Manager
Эксплуатация подписанных загрузчиков для обхода защиты UEFI Secure Boot
Введение
Прошивки современных материнских плат компьютера работают по спецификации UEFI, и с 2013 года поддерживают технологию проверки подлинности загружаемых программ и драйверов Secure Boot, призванную защитить компьютер от буткитов. Secure Boot блокирует выполнение неподписанного или недоверенного программного кода: .efi-файлов программ и загрузчиков операционных систем, прошивок дополнительного оборудования (OPROM видеокарт, сетевых адаптеров).Secure Boot можно отключить на любой магазинной материнской плате, но обязательное требование для изменения его настроек — физическое присутствие за компьютером. Необходимо зайти в настройки UEFI при загрузке компьютера, и только тогда получится отключить технологию или изменить её настройки.
Большинство материнских плат поставляется только с ключами Microsoft в качестве доверенных, из-за чего создатели загрузочного ПО вынуждены обращаться в Microsoft за подписью загрузчиков, проходить процедуру аудита, и обосновывать необходимость глобальной подписи их файла, если они хотят, чтобы диск или флешка запускались без необходимости отключения Secure Boot или добавления их ключа вручную на каждом компьютере.
Подписывать загрузчики у Microsoft приходится разработчикам дистрибутивов Linux, гипервизоров, загрузочных дисков антивирусов и программ для восстановления компьютера.
Мне хотелось сделать загрузочную флешку с различным ПО для восстановления компьютера, которая бы грузилась без отключения Secure Boot. Посмотрим, как это можно реализовать.
Статический анализ «BIOS/UEFI» или как получить Dependency Graph
«Я вчера закончил ковку, Я два плана залудил…» … V.S. Vysotsky song... |
Уже почти 3 года назад (в начале 2016) в issue проекта UEFITool на GitHub появилось пожелание пользователей: построить «Dependency Graph» для исполняемых модулей, входящих в BIOS/UEFI.
Завязалось даже небольшое обсуждение, в результате которого окончательно выяснилось, что данная задача отнюдь не тривиальна, имеющегося функционала для её решения недостаточно, перспективы в тот момент туманны…
И остался этот вопрос в подвешенном состоянии, с перспективой реализации в неопределённом будущем (но желание, наверное, осталось, а надежда, как известно, умирает последней!).
Есть предложение: отыскать, наконец, решение этой проблемы!
LoJax: первый известный UEFI руткит, используемый во вредоносной кампании
Как я научился напрямую перезагружаться в нужную ОС через UEFI
Добрый вечер, Habrahabr!
Сегодня мы научимся перезагружаться из Linux прямиком в Windows и обратно всего за один (двойной) клик.
Пишем для UEFI BIOS в Visual Studio. Часть 3 — русифицируем Front Page
Пишем для UEFI BIOS в Visual Studio. Часть 2 – создаем свой первый драйвер и ускоряем отладку
Введение
В этой статье будут рассмотрены базовые вещи, касающиеся программирования текстового ввода-вывода. В программе, которую на этот раз создадим сами с нуля, вначале введем с клавиатуры, а потом выведем на экран текстовую строку, коснувшись по пути некоторых неочевидных особенностей программирования под UEFI.
Вторая половина статьи будет про ускорение загрузки драйвера при запуске на отладку, поскольку две минуты, что тратятся на это сейчас, при многократном запуске в процессе отладки своего драйвера будут сильно раздражать.
Те, кто заинтересовался — добро пожаловать под кат.