この特定の問題への別のアプローチは、TPMを使用して暗号化キーを格納することですが、防御はそれを有効にするためにユーザーに依存します。基本的なRHEL7ベースのソリューションは、tpm-luks(https://github.com/GeisingerBTI/tpm-luks)です。
それが機能する方法はブート時です。ブートプロセスの各ステップは次のステップを測定し、この測定値をTPMのPCRに保存します。ブートプロセスが完了すると、tpm-luksはPCRのステータスを「既知の正常な」構成と照合します。「既知の正常な」構成の場合、TPMはLUKSキーのシールを解除し、tpm-luksはこのデータを渡してルートLUKSパーティションのロックを解除します。
重要なものはすべて暗号化ハッシュで測定されるため、悪意のあるメイドがGRUB / kernel / ramdiskを置き換えて、FDEパスフレーズを不正に収集する方法は基本的にありません。追加のボーナスとして、FDEパスフレーズはまったく必要ありません。理論的には、人間が読み取れるパスフレーズを完全に削除してtpm-luksに完全に依存することもできますが、そのルートを使用する場合は、LUKSヘッダーを保存してバックアップとして保持することをお勧めします。
すでに述べたように、これにはユーザーの注意が必要です。コンピュータを放置したままパスフレーズプロンプトが表示された場合は、調査が完了するまで入力するのは悪い考えです。その時点で、ライブCD環境を起動して、tpm-luksにバグがないかどうか、または/boot
パーティションが本当に変更されているかどうかを確認する必要があります。/boot
パーティションは暗号化されていないままですが、重要なものが変更されても、メインディスクは復号化されません。