Получение данных UEFI
Для того чтобы не просто абстрактно искать вирусы, а ещё и попытаться на самом деле их найти, перво-наперво нам потребуется собрать необходимую для исследования информацию и проанализировать её.
База данных дескрипторов UEFI
База данных дескрипторов (хендлов) состоит из объектов, называемых дескрипторами(хендлами) и протоколами. Она является центральным репозиторием для объектов поддерживаемых прошивкой UEFI.
Дескрипторы UEFI - коллекции, состоящие из одного и более протоколов.
Протоколы UEFI - структуры данных, использующие GUID (Globally Unique Identifer) в качестве имени. Структуры данных протокола могут содержать поля с данными, сервисы (службы), поля с данными и сервисы, либо не содержать совсем ничего из выше перечисленного.
Каждый дескриптор UEFI идентифицируется по уникальному номеру, этот номер является ключом к данной записи в базе данных дескрипторов UEFI. Различные типы протоколов (именуются при помощи GUID) привязываются к дескриптору UEFI и тем самым определяют его тип.
Дескриптор UEFI может представлять следующие компоненты:
- Исполняемые образы, например, драйвера или приложения UEFI
- Устройства, такие как, сетевой контроллер или раздел жёсткого диска
- Службы UEFI, доступные как драйверы, например, EFI Decompress и EBC Interpreter.