PCオペレーティングシステムとユーザーデータが存在するファイルパーティションが、BIOS測定専用のいくつかのPCR(プラットフォーム構成レジスタ)によってシールされていると仮定します。 BIOSがルートキットに感染している場合、起動プロセス中に何が起こりますか?
TPMによる信頼のブートストラップ:
マシンの電源がオンになると、測定の信頼のルートが自動的にBIOSを測定し、TPM内のPCRレジスタをその測定で拡張します。次に、BIOSに制御が移ります。 BIOSは次に、制御を転送する前にブートローダーを測定します。このプロセスは、OSカーネルのロードを続行します。次に、カーネルは、制御を転送する前に、実行用のロードであるすべてのコードを測定します。
つまり、BIOSの最初の認証(BIOSがルートキットに感染しているため、計算されたハッシュは以前と同じではありません)は失敗します。したがって、コントロールがブートローダーに転送されず、オペレーティングシステムが起動しませんか?
TPMは起動を停止しません。起動は続行されますが、PCRの値は以前とは異なります(BIOSが以前とは異なるため)。その結果、システムは封印されたデータを開封できなくなります。もちろん、ブートローダーまたはカーネルが封印されたパーティションの封印を解除できない場合、その書き込み方法によっては、封印されたデータにアクセスせずに実行を継続できる場合とできない場合があります。
背景:データを封印すると、データはTPMの特定の状態に関連付けられたキーで暗号化されます。その後、TPMが同じ状態にある場合にのみ、データのシールを解除できます。 「状態」とは、PCRの状態を意味します。
例:BitLockerを使用してドライブを暗号化するとします。 BitLockerは、TPMの特定の状態に関連付けられた(つまり、特定のBIOS、ブートローダー、カーネルに関連付けられた)ハードドライブ上のデータをシールします。ここで、後でBIOSを変更するとします。その後、起動後のTPMの状態は異なります。 BitLockerはデータのシールを解除できなくなり、ハードドライブ上のデータにアクセスできなくなります。データにアクセスするには、BitLockerの回復キーを使用する必要があります。あなたがあなたの回復キーを忘れたなら...まあ、あなたはあなたが嫌いです。
さらに詳しい情報:
トラステッドプラットフォームモジュール(TPM)およびシールドストレージ 。ブライアンパルノ、2007年。
TPMを使用したBitLockerの理解と構成 、Microsoft Certified Professional Magazine、2008。(特に「BitLocker回復パスワード」のセクションを参照してください。)
Anti Evil Maid 、Joanna Rutkowska、2011。(特に最初のいくつかの段落を参照してください。TPMではBIOSへの変更を防止できないと彼女は説明しています。変更があったことを遡及的に検出できます。その時点で、変更されたソフトウェアが以前のソフトウェアによって封印された封印されたデータにアクセスすることを拒否します。