適用於 Linux 的 Microsoft 安全啟動憑證過期:該怎麼辦?

關鍵點:
  • 微軟 2011 年頒發的簽署 Linux 發行版「shim」層的憑證將於 2026 年 6 月底到期。
  • 過期不會阻止現有系統啟動,因為 UEFI 安全啟動僅在金鑰被明確撤銷 (DBX) 時才會鎖定金鑰。
  • Fedora 和其他發行版已經開始分發包含微軟 2023 年新憑證的雙簽章 shim 層。
  • 建議使用 fwupdmgr 更新韌體,以安全地整合新密鑰。
  • 切勿手動從韌體中刪除 2011 密鑰,因為它用於驗證外圍硬件,刪除它可能會導致設備無法使用。

安全啟動 Linux

幾天前,有消息稱,用於對 Linux shim 層進行數位簽名的微軟證書將於本月底(2026 年 6 月)到期。由於這是現代 Linux 發行版(例如 Fedora、Ubuntu 和 openSUSE)在啟用 UEFI 安全啟動的系統上啟動所必需的關鍵元件,因此該訊息引發了一些擔憂也就不足為奇了。然而,Fedora 開發人員已明確表示:無需恐慌;您的電腦仍可正常啟動。

要理解為什麼不會出現大規模的 Linux 系統宕機,就必須了解信任鏈的工作原理。在啟動過程中,UEFI 系統不會檢查憑證是否過期,因為它唯一關注的是驗證加密簽章是否有效,以及金鑰是否因洩漏而被明確撤銷。 2011 年憑證的過期僅僅意味著微軟將無法再使用它來簽署新版本的引導程式。

向2023年新鑰匙的過渡

為了保持相容性並確保 Linux 系統能夠安裝在現代硬體上,微軟在 2023 年產生了一個新的憑證。向這個新密鑰的過渡被設計成對使用者完全透明。

目前,像 Fedora Rawhide(即將發布的 Fedora 45 的基礎)這樣的軟體倉庫已經包含了一個雙簽名 shim 引導管理器。這意味著它同時通過了 2011 年和 2023 年密鑰的認證,確保了它既兼容不識別新密鑰的舊式計算機,也兼容已經預裝了新密鑰的現代主機板。最終,未來版本的 shim 將只使用 2023 年金鑰進行簽署。

真正的漏洞:危險在於舊程式碼

真正能阻止系統啟動的並非憑證過期,而是透過 UEFI 憑證撤銷清單(簡稱 DBX)進行的撤銷。近期發布的安全報告詳細揭露了兩個嚴重漏洞(CVE-2026-8863 和 CVE-2026-10797),攻擊者可以利用這兩個漏洞繞過安全啟動保護,執行惡意程式碼。

幸運的是,這些漏洞僅影響極舊版本的 shim(0.9 及更早版本,2016 年之前創建)。這些易受攻擊層的簽章已被加入到停用簽章資料庫 (DBX) 中。如果您使用的是非常過時的系統(例如 CentOS 7.2 或 RHEL 7.2),並且您的 UEFI 資料庫已更新,則出於安全原因,您的電腦將無法啟動。

你應該做什麼(以及不應該做什麼)?

雖然金鑰過期不會導致您目前的系統發生故障,但開發者強烈建議您更新韌體的金鑰資料庫,以取得新的 2023 年金鑰,確保未來相容性。以下是檢查設備狀態的命令:

檢查您使用的是 UEFI 還是 BIOS(傳統模式):

[[ -d /sys/firmware/efi ]] || echo BIOS

檢查是否啟用安全啟動:

mokutil --sb-state

列出韌體中的公鑰:

mokutil --db --short (這裡你應該可以看到 2011 年的金鑰,如果你的系統是最新的,你還會看到 2023 年的金鑰)。

自動更新韌體和金鑰:

sudo fwupdmgr update (從 Linux 廠商韌體服務下載更新)。

驗證您的 shim 使用的是哪個金鑰進行簽署(需要 pesign 套件):

sudo pesign -S -i /boot/efi/EFI/fedora/shimx64.efi

最後值得一提的是,Fedora 開發人員已經發出警告:

除非您是專家,否則請勿嘗試手動更新資料庫,並且在任何情況下都不得刪除或撤銷 2011 年金鑰。此金鑰未洩露,仍用於驗證週邊設備(選購件 ROM)中的 ROM。刪除此金鑰可能會導致硬體元件故障,並阻止系統啟動雙簽章版本的 shim。

如果您有興趣了解更多信息,可以點擊以下連結查看詳情。


在 Google 中將其新增為首選來源