[論文レビュー] HYDRA: HYbrid Design for Remote Attestation (Using a Formally Verified Microkernel)
HYDRAは、形式的に検証されたseL4マイクロカーネルを用いてメモリの隔離とアクセス制御を強制することで、ハードウェアの変更なしに一般ハードウェア上で安全かつ効率的なリモートアテステーションを実現する、初めてのハイブリッドリモートアテステーション方式を提示する。SpeckベースのMACを用いて10 MBのメモリを500 ms未塔でアテステーションを達成し、形式的検証による強固なセキュリティ保証と実用性を示している。
Remote Attestation (RA) allows a trusted entity (verifier) to securely measure internal state of a remote untrusted hardware platform (prover). RA can be used to establish a static or dynamic root of trust in embedded and cyber-physical systems. It can also be used as a building block for other security services and primitives, such as software updates and patches, verifiable deletion and memory resetting. There are three major classes of RA designs: hardware-based, software-based, and hybrid, each with its own set of benefits and drawbacks. This paper presents the first hybrid RA design, called HYDRA, that builds upon formally verified software components that ensure memory isolation and protection, as well as enforce access control to memory and other resources. HYDRA obtains these properties by using the formally verified seL4 microkernel. (Until now, this was only attainable with purely hardware-based designs.) Using seL4 requires fewer hardware modifications to the underlying microprocessor. Building upon a formally verified software component increases confidence in security of the overall design of HYDRA and its implementation. We instantiate HYDRA on two commodity hardware platforms and assess the performance and overhead of performing RA on such platforms via experimentation; we show that HYDRA can attest 10MB of memory in less than 500msec when using a Speck-based message authentication code (MAC) to compute a cryptographic checksum over the memory to be attested.
研究の動機と目的
- 形式的に検証されたソフトウェアコンponentsを統合することで、ハイブリッドリモートアテステーションの新たな設計領域を探索し、セキュリティ信頼性を向上させること。
- seL4マイクロカーネルの形式的検証を活用してメモリの隔離とアクセス制御を実現することで、専用ハードウェアへの依存度を低減すること。
- 一般プラットフォーム上でハイブリッドRAの実用的性能を示しながらも、強固なセキュリティ保証を維持すること。
- 単純で低価格のデバイスにとどまらず、マルチプロセス対応の組み込みおよびサイバーフィジカルシステムをカバーするハイブリッドRAの拡張。
- 検証済みカーネルと暗号的アテステーションを組み合わせることで、将来のセキュアシステムの基盤を提供すること。
提案手法
- HYDRAは、形式的に検証されたseL4マイクロカーネルを用いて、メモリの隔離とアクセス制御を強制し、承認されたプロセスのみがアテステーション対象メモリ領域にアクセスできることを保証する。
- アテステーションプロセスは3段階に構成される:リクエスト検証、メモリマッピング、鍵付きMACを用いた暗号的チェックサム計算。
- ターゲットプロセスのメモリ領域は、seL4のセキュアなメモリマッピングプリミティブを介してアテステーションプロセスのアドレス空間にマップされる。
- アテステーション対象メモリ領域に対してMAC関数(例:Speck-64-128)を用いて暗号的チェックサムが計算され、整合性が保証される。
- 設計は形式的に検証されたseL4実行可能コードを活用しており、実装が検証済み仕様と一致することを保証する。
- パフォーマンス評価は、さまざまなメモリサイズとプロセス数を用いて、2つの一般ボード(Sabre LiteとODROID-XU4)で実施された。
実験結果
リサーチクエスチョン
- RQ1ハードウェア拡張を要せず、形式的に検証されたソフトウェアコンponentsのみを用いても、ハイブリッドリモートアテステーション方式が強固なセキュリティ保証を達成できるか?
- RQ2形式的に検証されたマイクロカーネルを用いた場合、メモリサイズの増加に伴いリモートアテステーションのパフォーマンスはどのように変化するか?
- RQ3形式的に検証された環境におけるメモリマッピングと暗号的チェックサム計算の相対的パフォーマンスオーバーヘッドはどの程度か?
- RQ4ハードウェアの変更なしに一般ハードウェアプラットフォームにハイブリッドRAを実用的に展開できるか、低遅延を維持できるか?
- RQ5同時に実行されるプロセス数の増加が、形式的に検証された環境におけるアテステーションパフォーマンスに与える影響はいかほどか?
主な発見
- HYDRAは、一般ハードウェア上でSpeckベースのMACを用いて10 MBのメモリを500 ms未塔でアテステーションを達成し、実用的性能を示している。
- 1 MBのメモリをアテステーションする際、暗号的チェックサム計算($MacMem$)が合計アテステーション時間の84.89%を占め、パフォーマンスの主要なボトルネックである。
- メモリマッピング($RetrieveMem$)は合計実行時間の16%未塔に留まり、seL4のアクセス制御メカニズムが最小限のパフォーマンスオーバーヘッドをもたらしていることが示された。
- $MacMem$のパフォーマンスはメモリサイズに対して線形的であるため、アテステーション対象メモリが10 MBまで予測可能なスケーリングが可能である。
- $MacMem$の実行時間はプロセス数に対して合理的に線形的であるため、HYDRAはマルチプロセス環境でも良好にスケーリングできることを示している。
- Speck-64-128とBLAKE2SはseL4上で最も高速なMACパフォーマンスを示し、Sabre LiteプラットフォームではCBC-AESやHMAC-SHA-256を33%以上上回っている。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。