ケース2: 秘密鍵をカーネル/ハイパーバイザ空間に保存 9 Normal World EL0 EL1 Secure World Secure-EL0 Secure-EL1 秘密鍵をユーザー空間からアクセス不能なカーネル、ハ イパーバイザ空間に保存! 実例: PlayStation3ハイパーバイザ, AMD SEV
TEE (Trusted Execution Environment)の策定 13 Normal World EL0 EL1 Secure World Secure-EL0 Secure-EL1 鍵生成の依頼、取得 Trusted OSシステムコール これらWorld間や内部のインターフェースを2009年 GlobalPlatformがTEEとして策定
TEE API 14 Normal World EL0 EL1 Secure World Secure-EL0 Secure-EL1 TEE Client API TEE Core internal API ● TEE Client API … Normal - Secure World間のやり取りの規約、API ● TEE Core internal API … TA - Trusted OS間のシステムコール規約、内部API ioctl(2)
Trust Zone セキュリティの”現実” 18 Normal World EL0 EL1 Secure World Secure-EL0 Secure-EL1 Trusted App, OSの脆弱性を使って権限昇格.... #大規模で複雑な実装が多いため脆弱性がある 鍵生成の依頼、取 得 セキュアモニタ Digital Rights Management 多種多様なシステムコール
Nintendo Switch 42 42 Normal World EL0 EL1 Secure World 鍵生成の依頼、取得 Secure WorldにOSが存在せず、サービスのみ実装 (TEE Serviceアーキテクチャ) Demystifying Arm TrustZone: A Comprehensive Survey https://dl.acm.org/citation.cfm?id=3291047
Nintendo Switch BootROM hack Nintendo Switchのブートローダーに脆弱性があった!! (正確にはNVIDIA製) ブートローダー上で任意コード実行が可能になったため、カスタマイズしたSecure Worldをデ プロイできる。結果的に全てのゲームソフト等の著作権保護鍵が読み取れる状態に 45 Nomal World EL0 EL1 Secure World 署名検証バイパスに成功