暗号チップ内のデータへのアクセスを可能にする TPM 2.0 のリファレンス実装の脆弱性

TPM 2.0 (Trusted Platform Module) 仕様の参照実装を含むコードで、割り当てられたバッファの境界を超えたデータの書き込みまたは読み取りにつながる脆弱性 (CVE-2023-1017、CVE-2023-1018) が特定されました。 脆弱なコードを使用して暗号プロセッサ実装が攻撃されると、暗号キーなどのオンチップに保存された情報が抽出または上書きされる可能性があります。 TPM ファームウェアのデータを上書きする機能は、攻撃者が TPM のコンテキストでコードの実行を組織するために使用される可能性があります。これは、たとえば、TPM 側で動作する検出されないバックドアの実装に使用される可能性があります。オペレーティングシステムによって。

この脆弱性は、CryptParameterDecryption() 関数のパラメータのサイズが正しく検証されていないことが原因で発生します。これにより、ExecuteCommand() 関数に渡され、TPM2.0 コマンドを含むバッファの境界を越えて XNUMX バイトの書き込みまたは読み取りが可能になります。 ファームウェアの実装によっては、上書きされる XNUMX バイトにより、未使用のメモリとスタック上のデータまたはポインタの両方が破損する可能性があります。

この脆弱性は、特別に設計されたコマンドを TPM モジュールに送信することによって悪用されます (攻撃者は TPM インターフェイスにアクセスできる必要があります)。 この問題は、2.0 月にリリースされた TPM 1.59 仕様アップデート (1.4 Errata 1.38、1.13 Errata 1.16、1.6 Errata XNUMX) で解決されました。

TPM モジュールのソフトウェア エミュレーションとハイパーバイザーへの TPM サポートの統合に使用される libtpms オープン ライブラリにも脆弱性があります。 この脆弱性は libtpms 0.9.6 リリースで修正されました。

出所: オープンネット.ru

コメントを追加します