Найти тему
4ib

Ищем вирусы в UEFI (BIOS). Часть 1. Дескрипторы UEFI.

Анализ бинарного файл на предмет содержания вредоносного кода.
Анализ бинарного файл на предмет содержания вредоносного кода.

Получение данных UEFI

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

База данных дескрипторов UEFI

База данных дескрипторов (хендлов) состоит из объектов, называемых дескрипторами(хендлами) и протоколами. Она является центральным репозиторием для объектов поддерживаемых прошивкой UEFI.

Дескрипторы UEFI - коллекции, состоящие из одного и более протоколов.

Протоколы UEFI - структуры данных, использующие GUID (Globally Unique Identifer) в качестве имени. Структуры данных протокола могут содержать поля с данными, сервисы (службы), поля с данными и сервисы, либо не содержать совсем ничего из выше перечисленного.

Каждый дескриптор UEFI идентифицируется по уникальному номеру, этот номер является ключом к данной записи в базе данных дескрипторов UEFI. Различные типы протоколов (именуются при помощи GUID) привязываются к дескриптору UEFI и тем самым определяют его тип.

Дескриптор UEFI может представлять следующие компоненты:

  • Исполняемые образы, например, драйвера или приложения UEFI
  • Устройства, такие как, сетевой контроллер или раздел жёсткого диска
  • Службы UEFI, доступные как драйверы, например, EFI Decompress и EBC Interpreter.
 Схема базы данных дескрипторов UEFI. Спецификация: Driver Writers Guide for UEFI 2.3.1.
Схема базы данных дескрипторов UEFI. Спецификация: Driver Writers Guide for UEFI 2.3.1.