[論文レビュー] Interdiction in Practice -- Hardware Trojan Against a High-Security USB Flash Drive
この論文は、FPGAのビットストリームを操作することで、商用のFIPS-140-2 Level 2認証取得USBフラッシュドライブに、実用的である初めてのハードウェアトロイの挿入を実証した。これにより、AES-256 XTS暗号化が線形で cryptanalyzable(暗号解析可能)な関数に変換された。攻撃により、32個の既知の平文・暗号文ペアのみを用いて、すべてのユーザーデータを回復可能であることが示され、ビットストリーム改変が高セキュリティデバイスにおける現実的な脅威であることを証明した。
As part of the revelations about the NSA activities, the notion of interdiction has become known to the public: the interception of deliveries to manipulate hardware in a way that backdoors are introduced. Manipulations can occur on the firmware or at hardware level. With respect to hardware, FPGAs are particular interesting targets as they can be altered by manipulating the corresponding bitstream which configures the device. In this paper, we demonstrate the first successful real-world FPGA hardware Trojan insertion into a commercial product. On the target device, a FIPS-140-2 level 2 certified USB flash drive from Kingston, the user data are encrypted using AES-256 in XTS mode, and the encryption/decryption is processed by an off-the-shelf SRAM-based FPGA. Our investigation required two reverse-engineering steps, related to the proprietary FPGA bitstream and to the firmware of the underlying ARM CPU. In our Trojan insertion scenario, the targeted USB flash drive is intercepted before being delivered to the victim. The physical Trojan insertion requires the manipulation of the SPI flash memory content, which contains the FPGA bitstream as well as the ARM CPU code. The FPGA bitstream manipulation alters the exploited AES-256 algorithm in a way that it turns into a linear function which can be broken with 32 known plaintext-ciphertext pairs. After the manipulated USB flash drive has been used by the victim, the attacker is able to obtain all user data from the ciphertexts. Our work indeed highlights the security risks and especially the practical relevance of bitstream modification attacks that became realistic due to FPGA bitstream manipulations.
研究の動機と目的
- 商用でFIPS-140-2 Level 2認証取得済みの高セキュリティUSBフラッシュドライブへの実世界でのハードウェアトロイ挿入の可能性を調査すること。
- 信頼性のあるデバイスに使用されるFPGAのビットストリーム改変が引き起こすセキュリティリスクを評価すること。
- FIPS-140-2 Level 2認証取得製品でさえも、低レベルのFPGA論理改変によって危うくされ得ることを実証すること。
- XTSモードで動作する弱体化されたAES-256実装に対する実用的暗号解析の有効性を評価すること。
提案手法
- キングストンのDataTraveler 5000 USBフラッシュドライブの特許的なXilinx FPGAビットストリームを逆解析した。
- ビットストリーム内のAES-256 IPコアを改変し、線形関数に変換することで、暗号解析に脆弱な状態にした。
- 通常動作中に平文・暗号文ペアおよび初期セクタ番号をキャプチャするハードウェアトロイを挿入した。
- 悪意あるファームウェアペイロードを記述し、キャプチャしたペアを後で漏洩可能にするためにSPIフラッシュに保存した。
- XTSモードの性質を活用して、32個の既知ペアのみですべての暗号文を復号した。
- 改変されたデバイス上で実際に平文回復が成功したことを検証した。
実験結果
リサーチクエスチョン
- RQ1FPGAビットストリーム操作を用いて、商用でFIPS-140-2 Level 2認証取得済みUSBフラッシュドライブにハードウェアトロイを成功裏に挿入可能か?
- RQ2実世界の高セキュリティデバイスにおいてFPGAビットストリームを改変することは、どのような実用的影響を及ぼすか?
- RQ3低レベルの論理改変によって、暗号的に安全なAES-256実装はどの程度まで弱体化可能か?
- RQ4下位のAESコアが線形化された場合、XTSモードがデータ保護にどの程度有効であるか?
- RQ5FPGAベースのセキュリティシステムにおけるこのようなビットストリーム攻撃を防ぐための対策は何か?
主な発見
- FIPS-140-2 Level 2認証取得USBドライブのFPGAビットストリームが、実際に逆解析され、AES-256コアが弱体化された。
- 改変されたAES-256コアは線形関数に変換され、32個の既知の平文・暗号文ペアでのみ暗号解析可能となった。
- 攻撃は実際のデバイスで実装され、暗号化データからの平文回復が成功裏に検証された。
- 悪意あるファームウェアは、SPIフラッシュ経由で必要な暗号ペアをキャプチャ・漏洩し、完全なデータ回復を可能にした。
- 攻撃は、FPGAがマスターデバイスとして機能する場合、特に高信頼性システムにおいてもビットストリーム改変が現実的な脅威であることを示している。
- 本研究は、ビットストリームの整合性保護、ハードウェアベースの自己テスト、HSM支援の検証が、安全な埋め込みシステムにおいて極めて重要であることを強調している。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。