Подробный гайд: Secure Boot — безопасная загрузка в современных системах

Secure Boot — технология UEFI, защищающая систему от вредоносного кода при загрузке. Проверка цифровых подписей, безопасность на уровне прошивки.

2026.05.27                  


Подробный гайд: Secure Boot — безопасная загрузка в современных системахПодробный гайд: Secure Boot — безопасная загрузка в современных системах Secure Boot — это протокол безопасности, являющийся частью спецификации UEFI, который предотвращает запуск неподписанного или неавторизованного кода на этапе загрузки системы.


Оглавление

  1. Что такое Secure Boot и как он работает
  2. Ключевые компоненты и иерархия ключей
  3. Режимы работы Secure Boot
  4. Проверка статуса Secure Boot
  5. Пошаговая настройка
  6. Работа с собственными ключами
  7. Совместимость с ОС и драйверами
  8. Критические обновления 2026 года
  9. Устранение неполадок
  10. Рекомендации по безопасности

Что такое Secure Boot и как он работает

Secure Boot использует асимметричную криптографию для проверки цифровой подписи каждого EFI-приложения перед его выполнением.

Процесс авторизации включает:

1. Инициализация платформы при загрузке
2. Загрузка хранилища ключей из NVRAM
3. Проверка подписи/хеша образа в базе данных (db)
4. Проверка отсутствия в списке запрещённых (dbx)
5. Запуск образа ИЛИ отказ в загрузке

Преимущества:

  • Защита от руткитов и буткитов на уровне прошивки
  • Гарантия целостности загрузочной цепочки
  • Локальные политики безопасности для корпоративных сред

Ключевые компоненты и иерархия ключей

Ключ Назначение Кто управляет
PK (Platform Key) Корневой ключ владельца платформы. Подписывает изменения в других хранилищах Производитель / Пользователь
KEK (Key Exchange Key) Ключи для обновления баз подписей (db/dbx) ОС / Администратор
db (Signature Database) Список доверенных подписей и хешей разрешённых образов Система / Пользователь
dbx (Forbidden Database) Чёрный список отозванных/недоверенных подписей Система / Обновления
MOK (Machine Owner Key) Пользовательские ключи для Linux (реализация через shim) Пользователь

Важно: При работе в режиме пользователя (User Mode) изменения ключей требуют криптографической подписи вышестоящим ключом.


Режимы работы Secure Boot

Setup Mode (Режим настройки)

  • Активируется при удалении PK
  • Позволяет записывать любые ключи без аутентификации
  • Используется для первоначальной настройки

User Mode (Пользовательский режим)

  • Стандартный рабочий режим
  • Требуется подпись для изменения ключевых хранилищ
  • Выполняется валидация всех запускаемых образов

Audit Mode (Режим аудита)

  • Позволяет тестировать неподписанные образы
  • Все события валидации логируются для анализа
  • Полезен для отладки и разработки

Deployed Mode (Развёрнутый режим)

  • Максимально безопасный режим
  • Все переменные переводятся в режим только для чтения
  • Выход возможен только через аутентифицированную очистку PK

Проверка статуса Secure Boot

В Windows:

# Через System Information
Win + R → msinfo32 → раздел "Состояние безопасной загрузки"

# Через PowerShell
Confirm-SecureBootUEFI

В Linux:

# Проверка через systemd
bootctl | grep "Secure Boot"

# Прямая проверка переменной EFI
od --address-radix=n --format=u1 /sys/firmware/efi/efivars/SecureBoot-*

# Через mokutil (для систем с shim)
mokutil --sb-state

В UEFI/BIOS:

  1. Перезагрузите ПК и войдите в настройки (обычно Del, F2, F10)
  2. Найдите раздел SecuritySecure Boot
  3. Статус: Enabled / Disabled / Setup Mode

Пошаговая настройка Secure Boot

Для обычных пользователей (включение):

1. Подготовка
  • Убедитесь, что система использует UEFI (не Legacy BIOS)
  • Создайте резервную копию важных данных
2. Вход в UEFI Setup
   Перезагрузка → Быстрое нажатие Del/F2 → Security → Secure Boot
3. Включение функции
  • Установите Secure Boot: Enabled
  • При необходимости: Secure Boot Mode: Standard
4. Сохранение и перезагрузка
  • F10 → Save & Exit

Для продвинутых пользователей (свои ключи):

# Генерация ключей (Linux, требует efitools)
$ for var in PK KEK db; do
    openssl req -newkey rsa:2048 -nodes -keyout ${var}.key \
    -x509 -days 3650 -out ${var}.cert -subj "/CN=${var}/"
done

# Конвертация в формат ESL и подписание
$ cert-to-esl < PK.cert > PK.esl
$ sign-efi-sig-list -k PK.key -c PK.cert PK PK.esl PK.auth

Предупреждение: Неправильная замена ключей может привести к невозможности загрузки системы или обновлению прошивки.


Совместимость с ОС и драйверами

Windows

  • Полная поддержка с Windows 8 и новее
  • Драйверы должны иметь подпись Microsoft WHQL

Linux

  • Поддерживаемые дистрибутивы: Ubuntu, Fedora, openSUSE, Debian (через shim)
  • Shim — промежуточный загрузчик, подписанный ключом Microsoft, который проверяет пользовательские ключи (MOK)
Проблемные сценарии:
  • Неподписанные модули ядра (например, некоторые драйверы NVIDIA)
  • Кастомные ядра без подписи
  • Старые загрузчики без поддержки UEFI

Решение проблем с драйверами:

# Для NVIDIA в Linux с включённым Secure Boot:
$ sudo mokutil --import /path/to/public_key.der
# Перезагрузка → Регистрация ключа в меню MOK
# Подпись модулей:
$ sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 \
  /path/to/private_key /path/to/public_key \
  /lib/modules/$(uname -r)/kernel/drivers/.../nvidia.ko

Критические обновления 2026 года

ВНИМАНИЕ: В июне 2026 года истекает срок действия оригинальных сертификатов Secure Boot 2011 года.

Что это значит:

  • Системы без обновления не смогут получать обновления безопасности
  • Новые драйверы и загрузчики, подписанные только новыми ключами, не будут запускаться
  • Возможны проблемы с загрузкой после обновлений прошивки

Как проверить и обновить:

Windows:
# Проверка наличия сертификатов
Get-ChildItem -Path Cert:\LocalMachine\db | Where-Object {$_.Subject -like "*2011*"}

# Установка обновлений через Центр обновления или вручную:
# Скачать KB-пакеты с сайта поддержки производителя

Linux (RHEL/Fedora):
# Проверка версии shim
rpm -q shim

# Обновление через dnf/yum:
sudo dnf update shim shim-x64

Microsoft рекомендует выполнить обновление до июня 2026 года для обеспечения непрерывной защиты.


Устранение неполадок

Проблема Возможная причина Решение
"Secure Boot not supported" Система в Legacy/CSM режиме Переключить на UEFI в BIOS
"Invalid signature" при загрузке Образ не подписан или ключ отозван Подписать образ или добавить ключ в db
Драйвер не загружается (Linux) Модуль ядра без подписи Подписать модуль или использовать MOK
После обновления ПК не грузится Конфликт сертификатов 2011/2023 Обновить db/dbx через UEFI или Windows Update
Невозможно отключить Secure Boot Требует пароль администратора Установить/сбросить пароль в BIOS

Диагностика через журнал:

# Linux: проверка сообщений ядра
journalctl -kg 'secure boot'

# Windows: Event Viewer → System → фильтры по "SecureBoot"

Рекомендации по безопасности

  1. Не отключайте без необходимости — Secure Boot является важным слоем защиты на уровне прошивки
  2. Регулярно обновляйте сертификаты — особенно в свете истечения ключей 2011 года в 2026
  3. Используйте собственные ключи в корпоративной среде — это даёт полный контроль над цепочкой доверия
  4. Резервируйте ключи — перед изменением настроек экспортируйте PK/KEK/db
  5. Проверяйте совместимость — перед включением убедитесь, что все критические драйверы подписаны
  6. Комбинируйте с другими мерами — Secure Boot не заменяет шифрование диска, антивирус или контроль целостности

Полезные ресурсы

  • Официальная документация Microsoft по Secure Boot - learn.microsoft.com/en-us/windows-hardware/design/device-experiences/oem-secure-boot
  • ArchWiki: UEFI Secure Boot - wiki.archlinux.org/title/Unified_Extensible_Firmware_Interface/Secure_Boot
  • Инструмент sbctl для управления ключами - github.com/Foxboron/sbctl

Итог:

Secure Boot — это не «защита от пиратства», а технический механизм обеспечения целостности загрузочного процесса. При грамотной настройке он значительно повышает безопасность системы без ущерба для функциональности.


Последнее обновление гайда: май 2026. Актуальность информации о сертификатах рекомендуется проверять на сайтах производителей.


Информация предоставлена в ознакомительных целях. Применение описанных настроек в системах, должно осуществляться только после согласования с ответственными за информационную безопасность и в соответствии с требованиями ФСТЭК, ФСБ и иных уполномоченных органов.