Пара слов о состоянии BootGuard в UEFI-совместимых прошивках
Представьте прошивку, где криптозащита начального загрузчика вроде бы настроена полностью. Все компоненты на месте, фьюзы прошиты, при каждой загрузке честно инициализируется ACM, сверяются подписи и хеши. Вот только блок, куда должны быть записаны эти хеши, пустой. Проверять нечего, потому что проверять никто и не просил, а сборочный инструмент Intel довольно долго вообще не считал это ошибкой. Такие прошивки реально уходили в релиз.
И это лишь одна из дыр, через которую атакующий с доступом к флешу может тихо дописать свои драйверы в образ. Автор, который сам пишет инструмент для анализа таких прошивок, проходит по всему зоопарку реализаций от Intel до вендорских продолжений AMI, Insyde и Phoenix.
Где-то утёкший ключ обнуляет всю защиту сразу, где-то том с кодом помечен как игнорируемый, а на одном скриншоте прямо видно чужой засвеченный ключ в чужой прошивке.