[論文レビュー] TPM-FAIL: TPM meets Timing and Lattice Attacks
本論文は、TPM 2.0デバイスにおけるタイミング側帯域攻撃の脆弱性——特にインテルのファームウェアベースTPMおよびSTマイクロエレクトロニクスのハードウェアTPMにおいて——が、ラティスベースの暗号解析を用いて256ビットECDSAおよびECSchnorr秘密鍵を回復可能であることを示している。攻撃は、インテルfTPMでは約1,300回の観測後に2分未満で成功し、CC EAL 4+認証を取得したハードウェアTPMからも40,000回未満の観測で鍵が回復された。
Trusted Platform Module (TPM) serves as a hardware-based root of trust that protects cryptographic keys from privileged system and physical adversaries. In this work, we perform a black-box timing analysis of TPM 2.0 devices deployed on commodity computers. Our analysis reveals that some of these devices feature secret-dependent execution times during signature generation based on elliptic curves. In particular, we discovered timing leakage on an Intel firmware-based TPM as well as a hardware TPM. We show how this information allows an attacker to apply lattice techniques to recover 256-bit private keys for ECDSA and ECSchnorr signatures. On Intel fTPM, our key recovery succeeds after about 1,300 observations and in less than two minutes. Similarly, we extract the private ECDSA key from a hardware TPM manufactured by STMicroelectronics, which is certified at Common Criteria (CC) EAL 4+, after fewer than 40,000 observations. We further highlight the impact of these vulnerabilities by demonstrating a remote attack against a StrongSwan IPsec VPN that uses a TPM to generate the digital signatures for authentication. In this attack, the remote client recovers the server's private authentication key by timing only 45,000 authentication handshakes via a network connection. The vulnerabilities we have uncovered emphasize the difficulty of correctly implementing known constant-time techniques, and show the importance of evolutionary testing and transparent evaluation of cryptographic implementations. Even certified devices that claim resistance against attacks require additional scrutiny by the community and industry, as we learn more about these attacks.
研究の動機と目的
- TPM 2.0デバイスが楕円曲線署名生成中に秘密依存のタイミング挙動を示すかどうかを調査すること。
- TPMにおけるタイミング側帯域漏洩を用いた256ビットECDSAおよびECSchnorr秘密鍵の回復可能性を評価すること。
- ネットワークベースのタイミング測定を用いて、StrongSwan IPsec VPNに対する実用的なリモート鍵回復攻撃を実装すること。
- 暗号化ハードウェアにおける現在の定数時間実装手法および認証プロセスの限界を浮き彫りにすること。
提案手法
- 一般システムに実装されたTPM 2.0デバイスに対してブラックボックスでのタイミング分析を実施し、署名生成中の実行時間の変動を測定した。
- ECDSAおよびECSchnorr署名操作中に、ファームウェアベース(インテルfTPM)およびハードウェアベース(STマイクロエレクトロニクス)のTPMからタイミング測定値を収集した。
- 収集したタイミングデータにラティスベースの暗号解析技術を適用し、観測されたタイミング漏洩から秘密鍵を回復した。
- 45,000回のネットワークベースの認証ハンドシェイクのタイミング測定を用いて、StrongSwan IPsec VPNに対するリモート攻撃を構築した。これによりサーバーの秘密鍵が完全に回復された。
- 統計的モデリングを用いて、楕円曲線演算における秘密スカラ値とタイミング変動の相関関係を特定した。
- 定数時間実装の主張やCommon Criteria認証にもかかわらず、タイミング漏洩の利用可能性の有効性を評価した。
実験結果
リサーチクエスチョン
- RQ1TPM 2.0デバイスにおけるECDSAおよびECSchnorr署名生成中に、タイミング側帯域漏洩を悪用して256ビット秘密鍵を回復可能か?
- RQ2Common Criteria EAL 4+で認証を受けたTPM、例えばSTマイクロエレクトロニクスのハードウェアTPMは、どの程度タイミングベースの鍵回復攻撃に対して脆弱であるか?
- RQ3ネットワークベースのタイミング側帯域を活用したリモート攻撃が、TPM保護システムから秘密鍵を回復する上で実用的か?
- RQ4IPsecのような広く展開された暗号プロトコルにおけるTPMのタイミング漏洩が、セキュリティに及ぼす影響は何か?
- RQ5実世界のTPM実装において、低精度のタイミング測定値からも、ラティスベースの技術が秘密を効果的に回復可能か?
主な発見
- インテルのファームウェアベースTPM(fTPM)は、ECDSAおよびECSchnorr署名生成中に秘密依存のタイミングを示し、約1,300回のタイミング観測で2分未満で鍵回復が可能であった。
- Common Criteria EAL 4+で認証を受けたSTマイクロエレクトロニクスのハードウェアTPMも、40,000回未満のタイミング観測で侵害された。これは、認証がタイミング攻撃に対する耐性を保証しないことを示している。
- 45,000回のネットワークベースの認証ハンドシェイクのタイミング測定を用いたStrongSwan IPsec VPNに対するリモート攻撃が成功し、完全な秘密鍵回復が達成された。
- TPMの定数時間実装の主張にもかかわらず攻撃が成功した。これは、形式的検証および認証を受けたシステムでさえ、微細なサイドチャネル漏洩が残存する可能性があることを示している。
- ラティスベースの暗号解析は、観測回数が限定的で、タイミング分解能が不完全であっても、256ビット楕円曲線秘密鍵の回復に有効であった。
- 結果として、定数時間コードの正しく実装することは極めて難しく、暗号実装の継続的コミュニティ監視および段階的テストの必要性が浮き彫りになった。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。