2024年8月13日にリリースされた2024年8月のWindowsセキュリティ更新プログラム(KB5041585)をインストールした後、デバイスにWindowsとLinuxのデュアルブート設定が有効になっている場合、Linuxの起動に問題が発生する可能性があることをMicrosoftが発表しました。
この問題の結果として、デバイスがLinuxの起動に失敗し、「Verifying shim SBAT data failed: Security Policy Violation. Something has gone seriously wrong: SBAT self-check failed: Security Policy Violation.」(Shim SBATデータの検証に失敗しました: セキュリティポリシー違反。重大な問題が発生しました: SBATセルフチェックに失敗しました: セキュリティポリシー違反)というエラーメッセージが表示される可能性があります。
2024年8月のWindowsセキュリティ更新プログラムは、旧式の脆弱なブートマネージャーをブロックするために、Windowsを実行しているデバイスにSecure Boot Advanced Targeting(SBAT)設定を適用します。このSBAT更新は、本来デュアルブートが検出されたデバイスには適用されませんが、一部のデバイスでは、デュアルブートの検出が正しく動作せず、結果的に適用されるべきでない状況でSBAT値が適用されたことが原因のようです。
なお、一応Windows/Linuxデュアルブートに不具合が発生した場合の対処方法をMicrosoftが公開していますので、不具合に遭遇した場合はお試しください。また、現時点で2024年8月のセキュリティパッチを適用していない場合は、事前にオプトアウトすることで対処することも可能です。
不具合の回避策
Windows/Linuxデュアルブート不具合に対する対処法/回避策ですが、2024年8月のセキュリティパッチを適用する前か、後かで対処方法が異なります。
1.2024年8月のWindows更新プログラムを適用する前の場合
LinuxとWindowsのデュアルブートを使用しており、2024年8月のWindows更新プログラムのインストールを再起動せずにまだ完了していない場合は、以下のオプトアウトレジストリキーを使用できます。
このレジストリは、2024年8月のWindows更新プログラムや今後のWindows更新プログラムの一部としてSBAT更新が適用されないようにします。後で、SBAT更新をインストールしたい場合は、レジストリキーを削除することで対処可能です。
コマンド:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecureBoot\SBAT /v OptOut /d 1 /t REG_DWORD
2024年8月のWindows更新プログラムを適用した後の場合
2024年8月13日以降の更新プログラムをインストールした後、Linuxが起動しなくなった場合は、以下の手順に従ってLinuxシステムを復元できます。
a) Secure Bootを無効化する:
- デバイスのファームウェア設定に入ります。
- Secure Bootを無効にします(手順はメーカーによって異なります)。
b) SBAT更新を削除する:
- Linuxを起動します。
- ターミナルを開き、以下のコマンドを実行します:
sudo mokutil --set-sbat-policy delete
- プロンプトが表示されたら、rootパスワードを入力します。
- Linuxを再起動します。
c) SBATの失効を確認する:
- ターミナルで以下のコマンドを実行します:
mokutil --list-sbat-revocations
- 失効リストに何も表示されていないことを確認します。
d) Secure Bootを再度有効にする:
- ファームウェア設定に再度入り、Secure Bootを有効にします。
e) Secure Bootの状態を確認する:
- Linuxを起動します。以下のコマンドを実行します:
mokutil --sb-state
- 出力が「SecureBoot enabled」となることを確認します。そうでない場合は、手順4を再試行します。
f) Windowsで今後のSBAT更新を防ぐ:
- Windowsを起動します。
- コマンドプロンプトを管理者として開き、以下を実行します:
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecureBoot\SBAT /v OptOut /d 1 /t REG_DWORD
この時点で、以前のようにLinuxまたはWindowsを起動できるはずです。この機会に保留中のLinux更新をインストールして、システムのセキュリティを確保してください。
不具合への対処状況
Microsoftは現在Linuxパートナーと協力して問題を調査しており、詳細が判明次第、更新を提供します。
影響を受けるプラットフォーム
影響を受けるプラットフォームは以下の通りです。
■クライアント:
Windows 11, バージョン 23H2
Windows 11, バージョン 22H2
Windows 11, バージョン 21H2
Windows 10, バージョン 22H2
Windows 10, バージョン 21H2
Windows 10 Enterprise 2015 LTSB
■サーバー:
Windows Server 2022
Windows Server 2019
Windows Server 2016
Windows Server 2012 R2
Windows Server 2012
コメント