Secure Boot
Secure Boot — модуль современных UEFI, который проверяет цифровые подписи. Официально нужен для загрузки операционной системы от всирания левого кода, но на практике скорее призвана бороться с пиратством.
Описание[править]
Ещё в 1990-х годах в системах на базе BIOS использовались простые механизмы контроля целостности, но они были легко обходными. С переходом индустрии на интерфейс UEFI, появилась возможность внедрения криптографических механизмов на уровне прошивки.
В 2011 году, готовясь к выпуску Windows 8, Microsoft объявила, что все устройства, претендующие на логотип Certified for Windows 8, должны поддерживать UEFI и Secure Boot в обязательном порядке. Это решение было объяснено ростом угроз буткитов, херобринного ПО, внедряющегося на самом раннем этапе загрузки и практически не обнаруживаемого антивирусами, работающими уже внутри ОС.
Secure Boot работает на этапе выполнения DXE, фазы UEFI, когда запускаются драйверы и загрузчики. После включения питания процессор выполняет код прошивки, хранящийся в SPI-флеш-памяти материнской платы. Каждый исполняемый PE/COFF-файл проверяется на наличие корректной цифровой подписи по алгоритму RSA-2048 или выше с хешем SHA-256. Подпись сверяется с ключами, хранящимися в NVRAM UEFI. Если подпись валидна, управление передаётся следующему компоненту. Если нет, то загрузка прерывается с выводом ошибки.
После успешной проверки загрузчика ОС управление передаётся ядру операционной системы.
Нынче, чтобы поставить Windows, наличие секуре боота практически обязательно.