微軟 8 月份 Patch Tuesday Windows 安全更新出包,造成部份啟用 Secure Boot 的雙重開機功能的電腦 Linux 故障無法開機。
這次出包是起因於 Patch Tuesday 內含 Linux 版 GRUB2 安全開機漏洞的 Secure Boot Advanced Targeting (SBAT) 更新程式。 SBAT 更新原是為了解決 CVE-2022-2601 UEFI shim boot loader 繞過漏洞。微軟說,這波更新理應不會部署到啟用雙 OS 開機的機器上,但是微軟坦承,其系統沒有偵測到某些啟用雙重開機的機器,因而部署該更新,且使用了 SBAT 值。微軟上周說,這會造成某些舊版 Linux 無法安裝 ISO 開機。
但其實許多安裝新近版 Linux 的雙 OS 機器也因此無法開啟。受害者包含 Ubuntu 、 Linux Mint 、 Zorin OS 、 Puppy Linux 等其他發行版。有人看到 shim SBAT 資料錯誤、或 SBAT 自主檢查失敗等違反安全政策訊息。有人電腦連訊息都沒看到就關機了。
微軟提供暫時性的解決方案。針對已經安裝 8 月 Windows 更新,且 Linux 無法關機的用戶,微軟建議刪除 SBAT 更新,且設定未來不再安裝。
刪除作法:先到韌體設定,關閉安全開機、執行 Linux 開機,再執行 sudo mokutil –set-sbat-policy delete 指令,再重開機。
取消 SBAT 安裝:輸入 mokutil –list-sbat-revocations 指令,確保已經空了。再以韌體開機重新開機。
在 Windows 預防未來 SBAT 更新:以管理員權限在指令提示中輸入以下指令:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecureBoot\SBAT /v OptOut /d 1 /t REG_DWORD
之後,用戶應該未來就可以像過去方法安裝 Linux 或 Windows,這時就可以重新安裝 Linux 安全更新了。
