目次
セキュアブートの話
2026-03-22
ストーリーを整理
自分の理解確認用。
関連ツール
結論を急ぐ人への説明
Windows利用者はWindowsUpdateでKEKの差し替えを実施しよう!
KEK差し替えを実施しないと、お前のPCは詰むぞ!
登場要素
- KEK:更新を許可する鍵(管理者)
- DB :起動していい名簿(ホワイトリスト)
- DBX:絶対ダメな名簿(ブラックリスト)
- Win:Windowsのブートローダー
要素の更新順
この順で更新が行われる。
- 新しいKEKに更新
- 新しいDBに更新
- 新しいブートローダーに更新
- 新しいDBXに更新
まずい事が起きるシナリオ
期限を過ぎても起動できるのはDBXに失効日が登録されていない場合。要素が古くても動き続けられる。
しかし、ユーザのあずかり知らないところでシレっとDBXに更新が入っていると詰む事になる。
シナリオ的には大きく2点ある。
- シナリオ1:WindowsUpdateがDBXを更新して詰む
- シナリオ2:ファームウエアアップデートがDBXを更新して詰む
どちらもKEKが無効になっているので起動不可イベントに遭遇してしまうとOS側から対処できず手遅れとなる。
シナリオ1:WindowsUpdateがDBXを更新して詰む
WindowsUpdateがDBXに失効日を登録して詰むパターン。
1. 2026年6月前その1
2. WindowsUpdateがDBXを更新
3. 2026年6月KEK期限切れ
WindowsUpdateでKEKの更新をしていなければ、KEKの期限切れでKEK自身を更新できなくなった。
KEKが期限切れのままなので、DB・DBXの更新もできなくなった。
4. 失効日が来た
KEK無効でWindowsUpdateはDB・DBXを変更できずWindowsは起動できなくなった。
シナリオ2:ファームウエアアップデートがDBXを更新して詰む
UEFIファームウェアアップデートによりDBXが更新されて詰むパターン。
1. 2026年6月前
2. 2026年6月KEK期限切れ
DBXに失効日が無いので、そのままWinはWindowsを起動し続ける。
3. ファームウエアがDB・DBXを更新
WindowsUpdateではなくファームウエアアップデートによりDBXに失効日が登録された時、失効日を過ぎているならWindowsは起動できなくなる。
回復方法?
Win(ブートローダー)を現在のDB・DBXの内容に対応する版に差し替えるか、UEFIのファームウエア側アップデートでKEK・DB・DBXを更新した後にWinの再インストールが行えれば動く。
DBXを更新前の状態に戻せればWinはそのまま動作するだろうけど、セキュリティ上DBXはロールバックできない建前なので、失効日の情報を無かった事にはできない。


