Skip to main content
QUICK REVIEW

[論文レビュー] From MMU to MPU: adaptation of the Pip kernel to constrained devices

Nicolas Dejon, Chrystel Gaber|arXiv (Cornell University)|Jan 11, 2023
Security and Verification in Computing参考文献 15被引用数 5
ひとこと要約

本論文では、MMUベースのメモリ保護からMPUベースのメモリ保護へと形式的検証済みのPipマイナーカーネルを適合させることで、制限付きの組み込みデバイス向けに安全で柔軟なメモリ隔離カーネルPip-MPUを提示する。98%の攻撃表面積削減と99%の特権操作削減という強固なセキュリティ保証を達成し、パフォーマンスおよびエネルギー消費量のオーバーヘッドは16%にとどまり、nRF52840プラットフォームではFlashメモリが10 kB未満、RAMが550 B未満で動作する。

ABSTRACT

This article presents a hardware-based memory isolation solution for constrained devices. Existing solutions target high-end embedded systems (typically ARM Cortex-A with a Memory Management Unit, MMU) such as seL4 or Pip (formally verified kernels) or target low-end devices such as ACES, MINION, TrustLite, EwoK but with limited flexibility by proposing a single level of isolation. Our approach consists in adapting Pip to inherit its flexibility (multiple levels of isolation) but using the Memory Protection Unit (MPU) instead of the MMU since the MPU is commonly available on constrained embedded systems (typically ARMv7 Cortex-M4 or ARMv8 Cortex-M33 and similar devices). This paper describes our design of Pip-MPU (Pip's variant based on the MPU) and the rationale behind our choices. We validate our proposal with an implementation on an nRF52840 development kit and we perform various evaluations such as memory footprint, CPU cycles and energy consumption. We demonstrate that although our prototyped Pip-MPU causes a 16% overhead on both performance and energy consumption, it can reduce the attack surface of the accessible application memory from 100% down to 2% and the privileged operations by 99%. Pip-MPU takes less than 10 kB of Flash (6 kB for its core components) and 550 B of RAM.

研究の動機と目的

  • MMUではなくMPUを用いた低価格組み込みシステムにおける柔軟で形式的検証済みのメモリ隔離の欠如を解消すること。
  • MMUを搭載しないリソース制限付きデバイス(例:ARM Cortex-M)において複数のメモリ隔離レベルを実現すること。
  • Pipカーネルのセキュリティおよび合成可能性の利点を維持しつつ、MPUのハードウェア制約に適合させる。
  • 実際の組み込みプラットフォーム上でのアプローチの実現可能性と効率性を、リソースおよびパフォーマンスメトリクスを測定して示すこと。

提案手法

  • Pipマイナーカーネルの形式的検証および隔離モデルを、メモリ管理ユニット(MMU)ではなくメモリ保護ユニット(MPU)上で動作するように適合させること。
  • Pipの複数の隔離レベルを、MPUの限られた数のメモリ領域およびアクセス権限にマッピングする新しいメモリ管理抽象化を設計すること。
  • 実行時における動的メモリ領域の設定と保護を可能にする、カスタムのMPU設定メカニズムを実装すること。
  • 新しいPip-MPUバージョンにおけるMPUベースのメモリ隔離論理の正しさを形式的手法で検証すること。
  • リアルタイム組み込みシステム(nRF52840)にカーネルを統合し、パフォーマンス、メモリ使用量、エネルギー消費量を評価すること。
  • 標準ワークロードを用いてベンチマークを実施し、CPUサイクル、エネルギー使用量、攻撃表面積の削減を測定すること。

実験結果

リサーチクエスチョン

  • RQ1Pipカーネルの形式的検証および多層隔離モデルを、MPUベースの制限付きデバイスに効果的に移植可能か?
  • RQ2MMUベースのシステムと比較して、MPUベースの隔離はどの程度のパフォーランスおよびエネルギーオーバーヘッドを引き起こすか?
  • RQ3MPUベースの隔離は、アプリケーションメモリおよび特権操作の攻撃表面積をどの程度削減できるか?
  • RQ4低価格のMPU搭載デバイスに形式的検証済みカーネルをデプロイする際の実用的メモリおよび実行時リソース制約は何か?
  • RQ5隔離の細粒度および信頼性の観点から、Pip-MPUのセキュリティモデルは、既存の軽量カーネルと比較してどのように異なるか?

主な発見

  • Pip-MPUは、利用可能なアプリケーションメモリの攻撃表面積を100%から2%にまで削減し、露出度を98%低減した。
  • 非隔離システムと比較して、特権操作の数は99%削減され、特権昇格の可能性が顕著に制限された。
  • カーネルはFlashメモリの10 kB未満(コアコンponentsで6 kB)およびRAMの550 B未満を消費し、超制限付きデバイスに適している。
  • Pip-MPUのパフォーマンスおよびエネルギーオーバーヘッドは、非隔離ベースラインと比較して16%にとどまり、セキュリティのための妥当なトレードオフを示している。
  • nRF52840開発キットへの実装により、形式的検証済みの多層隔離カーネルがMPU専用プラットフォームにデプロイ可能であることが確認された。
  • 設計は、ハードウェア制約に適合させつつも、元のPipカーネルの合成可能性および形式的検証の利点を効果的に維持した。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。