fwupdmgr – «Исполняемый файл в ESP заблокирован, убедитесь, что grub и shim обновлены».

Вопрос или проблема

Обновление прошивки через fwupdmgr приводит к следующей ошибке:

$ fwupdmgr update

Устройства без доступных обновлений прошивки: 
 • USB2.0 Hub
 • USB2.0 Hub
 • USB3.1 Hub
 • USB3.1 Hub
 • Integrated Camera
 • SSD 970 EVO Plus 1TB
 • UEFI Device Firmware
 • UEFI Device Firmware
 • UEFI Device Firmware
 • UEFI Device Firmware
 • UEFI Device Firmware
Устройства с последней доступной версией прошивки:
 • Prometheus
 • Prometheus IOTA Config
 • System Firmware
╔══════════════════════════════════════════════════════════════════════════════╗
║ Обновить UEFI dbx с 77 до 217?                                              ║
╠══════════════════════════════════════════════════════════════════════════════╣
║ Это обновление dbx до последнего релиза от Microsoft, которое добавляет    ║
║ небезопасные версии grub и shim в список запрещённых подписей из-за        ║
║ обнаруженных обновлений безопасности.                                      ║
║                                                                           ║
║ Перед установкой обновления, fwupd проверит наличие затронутых            ║
║ исполняемых файлов в ESP и откажется обновляться, если найдёт любые       ║
║ загрузочные бинарники, подписанные любой из запрещённых подписей. Если    ║
║ установка не удастся, вам потребуется обновить пакеты shim и grub,        ║
║ прежде чем обновление будет применено.                                    ║
║                                                                           ║
║ После установки этого обновления dbx, любые DVD или USB образы установщиков,║
║ подписанные старыми подписями, могут работать некорректно. Возможно, вам  ║
║ придётся временно отключить secure boot при использовании                 ║
║ восстановительных или установочных носителей, если вашей                 ║
║ дистрибуцией не были предоставлены новые образы.                          ║
║                                                                           ║
╚══════════════════════════════════════════════════════════════════════════════╝

Выполнить операцию? [Y|n]: 
Загрузка…             [***************************************]
Загрузка…             [***************************************]
Распаковка…           [***************************************]
Аутентификация…       [***************************************]
Ожидание…             [***************************************]
Запись…               [***************************************]
Распаковка…           [                                       ]
Заблокирован исполняемый файл в ESP, убедитесь, что grub и shim обновлены: /boot/efi/EFI/BOOT/BOOTX64.EFI Контрольная сумма Authenticode [af79b14064601bc0987d4747af1e914a228c05d622ceda03b7a4f67014fee868] присутствует в dbx

Что делать дальше? Я предполагаю, нужно заменить /boot/efi/EFI/BOOT/BOOTX64.EFI. Стоит ли его взять из последнего установочного образа Debian? Это единственный файл, который нужно заменить? Какова вероятность повредить систему?

$ uname -a
Linux p14s 6.1.0-1-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.4-1 (2023-01-07) x86_64 GNU/Linux
$ sudo tree /boot/efi/
/boot/efi/
└── EFI
    ├── BOOT
    │   ├── BOOTX64.EFI
    │   ├── fbx64.efi
    │   └── grubx64.efi
    └── debian
        ├── BOOTX64.CSV
        ├── fbx64.efi
        ├── fw
        │   └── fwupd-01453b71-da0c-4832-9f4f-e378245339c7.cap
        ├── fwupdx64.efi
        ├── grub.cfg
        ├── grubx64.efi
        ├── mmx64.efi
        └── shimx64.efi

Редактировать:

$ sudo efibootmgr -v | grep "Boot$(sudo efibootmgr -v | awk '/BootCurrent/{print $2}')"
Boot0000* debian    HD(1,GPT,488c1b76-c8f0-4e08-a48d-d4a0a3a4fa81,0x800,0x106000)/File(\EFI\debian\shimx64.efi)

Обратите внимание на File(\EFI\debian\shimx64.efi) — означает ли это, что файл /boot/efi/EFI/BOOT/BOOTX64.EFI, на который ругается fwupdmgr, вообще не используется?

Это лучшая помощь, которую я нашёл:

https://github.com/fwupd/fwupd/wiki/Blocked-executable-in-the-ESP,-ensure-grub-and-shim-are-up-to-date

Источник: https://github.com/fwupd/fwupd/issues/5121

Ответ или решение

Ошибка, которую вы видите при попытке обновления прошивки с помощью fwupdmgr, указывает на наличие заблокированного исполняемого файла в разделе EFI System Partition (ESP). Это связано с тем, что текущая версия базы данных UEFI dbx не допускает ряд старых и небезопасных версий GRUB и Shim. Эти файлы имеют подписи, которые были добавлены в список запрещённых из-за обнаруженных уязвимостей.

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

Ваше текущее окружение UEFI использует shimx64.efi в качестве загрузчика, как следует из вывода efibootmgr -v. Это файл, который вы указываете как используемый загрузчик, располагается в каталоге /EFI/debian/, и он вероятно не вызывается напрямую из ESP в пути /boot/efi/EFI/BOOT/BOOTX64.EFI, на который ссылается ошибка fwupdmgr.

Как исправить?

Чтобы устранить ошибку и позволить обновлению прошивки продолжиться без блокировки:

  1. Обновите пакеты shim и grub:
    Вам необходимо убедиться, что у вас установлены последние версии этих пакетов из репозиториев Debian. Используйте apt для обновления:

    sudo apt update
    sudo apt upgrade shim grub-efi-amd64
  2. Проверьте целостность системы:
    Убедитесь, что все важные компоненты вашей системы EFI обновлены. Если вы обнаружили, что обновления не применяются или недоступны, ручная замена может оказаться необходимой, но это крайняя мера.

  3. Подготовьте резервную копию:
    Всегда рекомендуется иметь резервную копию всех важных данных перед работой с критическими компонентами системы, такими как UEFI и загрузчики.

  4. Проверьте, используется ли BOOTX64.EFI:
    Поскольку вы выяснили, что ваш текущий загрузчик — это shimx64.efi, вам действительно может потребоваться только обновление этого файла. На основании ваших выводов, если BOOTX64.EFI не используется для загрузки, дальнейшие действия с ним не требуются.

5.Отключение Secure Boot:
Если по-прежнему возникают проблемы, и если ваша система это позволяет, вы можете временно отключить Secure Boot в параметрах UEFI/BIOS, чтобы пропустить проверку подписи во время тестирования новых настроек.

Вероятность возникновения проблем

Когда выполняются подобные операции, всегда есть небольшой риск нарушения работы системы, особенно если изменения производятся вручную и без предварительной проверки. Тем не менее, если всё выполнить правильно, риск "загрузочного кирпича" минимален. Убедитесь, что у вас есть доступ к средствам восстановления или установочным носителям для вашего дистрибутива Debian на случай, если что-то пойдёт не так.

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

Оцените материал
Добавить комментарий

Капча загружается...