概要
- Raspberry Pi RP2350 のセキュリティ機能に対する物理攻撃の実証
- Photon-emission microscopy とレーザー注入で Secure debug アクセスを復元
- OTPメモリ の秘密情報をリカバリリセット後に抽出
- 攻撃には 物理アクセス・高額機材 ・破壊的準備が必要
- セキュリティ設計の 脆弱性と今後の課題 を示唆
RP2350のセキュリティモデルと攻撃対象
- RP2350 はRaspberry Pi製デュアルコアマイクロコントローラ
- 各ソケットで Arm Cortex-M33 または RISC-V Hazard3 コアを選択可能
- 主なハードウェアセキュリティ機能
- セキュアブート :OTPメモリに格納された公開鍵で署名ファームウェアを認証
- TrustZone によるセキュア/ノンセキュア状態の分離
- デバッグ無効化 の恒久設定
- グリッチ検出器 によるタイミング異常の検知
- OTPメモリ でセキュリティ設定・公開鍵フィンガープリントを保持
- 各ビットは一度だけ0→1に書き換え可能、元に戻せない
- 128バイト単位のページ構成、 2種類のロック で保護
- DEBUGENレジスタ でデバッグ無効化を上書き可能
- セキュアソフトウェアが明示的に全ビットをセットすると デバッグが再度有効化
- この上書き機構が攻撃の主なターゲット
攻撃の実験構成と準備
- Raspberry Pi Hacking Challenge の構成を模倣
- OTP1に格納された128ビット秘密情報の抽出が課題
- セキュアブート有効化、デバッグ恒久無効化、グリッチ検出器最大感度などを設定
- ページ48のロックをSecure読み書き可能、Non-secure不可に設定
- チップ背面のデキャップ (樹脂除去)で赤外線透過性を確保
- チップを Scaffoldプラットフォーム に実装し、テストベンチを構築
- GND線の再接続 など物理的な準備作業
Photon-emission microscopyによるDEBUGEN局所化
- DEBUGENビット の格納位置を特定するために photon-emission microscopy(PEM) を利用
- 切り替えループで特定ビットをON/OFFし、その際の赤外線発光を観測
- ノイズ低減のためフレームを平均化・差分処理
- これにより、各DEBUGENビットに対応する 数μm領域 を特定
レーザー故障注入(Laser Fault Injection, LFI)の実施
- 980nmパルスレーザー を使用し、PEMで特定した領域にレーザー照射
- DEBUGENの特定ビット がセットされるまで位置とパラメータを調整
- PROC1(コア1のMem-AP有効化)、PROC1_SECURE(セキュアアクセス許可)の2ビットを順次セット
- 位置が数μm単位で異なるため、狭いビーム径が必須
- 両ビットがセットされると Secure debug アクセスが復元
- DebuggerでSecureメモリ読み書き、コア停止・ステップ実行、レジスタ観察が可能
秘密情報の抽出プロセス
- リカバリリセット 直後、ファームウェアがランタイムロックを適用する前にSecure debugでOTPを読み出し
- このタイミングなら Secure属性でOTPページが読める
- これにより OTP1から秘密情報を抽出 に成功
攻撃のコストと現実性
- 攻撃には 物理アクセス ・ 背面デキャップ ・ 約25万ドル相当の実験機材 が必要
- チップの物理的破壊を伴うため 量産品の大量攻撃には不向き
- しかし 高度な攻撃者 によるターゲット攻撃の脅威を示唆
セキュリティ設計への示唆
- DEBUGEN のような上書き可能なレジスタは物理攻撃の弱点となりうる
- セキュリティクリティカルな制御信号への 冗長化・耐故障設計 の重要性
- 物理攻撃耐性 を考慮したセキュリティ設計の必要性
この研究は、 物理層攻撃 によるマイクロコントローラのセキュリティバイパスの現実性と、 設計段階での対策強化 の重要性を示しています。