Skip to main content
QUICK REVIEW

[論文レビュー] Beyond Full Abstraction: Formalizing the Security Guarantees of Low-Level Compartmentalization

Yannis Juglaret, Cătălin Hriţcu|arXiv (Cornell University)|Feb 14, 2016
Security and Verification in Computing参考文献 60被引用数 1
ひとこと要約

本稿では、最小限の特権と明確に定義されたインターフェースを持つシステムにおける低レベルのコンパートメンタル化の保証を特徴付ける形式的なセキュリティ特性「セキュアコンパートメンタル化」を導入する。著者らは、完全抽象性を拡張することで、三つの主要な制限を克服し、不安全な手続き型言語とそのコンパートメンタル化された抽象機械へのコンパイラに対して、確立された証明技法を用いてセキュアコンパートメンタル化を証明する。

ABSTRACT

Compartmentalization is widely regarded as good security-engineering practice: if we break up a large software system into mutually distrustful components that run with minimal privileges, restricting their interactions to conform to well-defined interfaces, we can limit the damage caused by lowlevel attacks such as control-flow hijacking. But the formal guarantees provided by such low-level compartmentalization have seen surprisingly little investigation. We propose a new property, secure compartmentalization, that formally characterizes the security guarantees provided by lowlevel compartmentalization and clarifies its attacker model. We rationally reconstruct the secure compartmentalization property starting from the well-established notion of fully abstract compilation, by identifying and lifting three important limitations that make standard full abstraction unsuitable for compartmentalization. The connection to full abstraction allows us to prove secure compartmentalization for language implementations by adapting established proof techniques; we illustrate this for a simple unsafe imperative language with procedures and a compiler from this language to a compartmentalized abstract machine.

研究の動機と目的

  • 最小限の特権と隔離されたコンponentを備えたシステムにおける低レベルのコンパートメンタル化が提供するセキュリティ保証を形式的に特徴付けること。
  • 標準的な完全抽象性がコンパートメンタル化への直接適用を妨げる三つの重要な制限を同定し、それらに対処すること。
  • 完全抽象性のwell-establishedな原則に基づいて、新たなセキュリティ特性「セキュアコンパートメンタル化」を合理的に再構築すること。
  • 現実的な低レベル言語とそのコンパイルスタックにおいて、セキュアコンパートメンタル化を証明する可能性を示すこと。
  • 特にコントロールフローハイジャックおよび特権昇格を含むコンパートメンタル化の文脈における、攻撃者モデルを明確化すること。

提案手法

  • 標準的な完全抽象性の三つの制限を同定し、それを克服するための:(1) 特権分離のサポート不足、(2) 明示的な攻撃者モデルの欠如、(3) 低レベルのサイドチャnel相互作用の不十分な取り扱い。
  • 完全抽象的コンパイルから得られる確立された証明技法を、手続きを備えた単純な不安全な手続き型言語に適応して、セキュアコンパートメンタル化を証明すること。
  • 各コンponentに対して隔離と最小限の特権を強制するコンパートメンタル化された抽象機械の設計。
  • 高レベルの手続き型言語から抽象機械へのコンパイラの形式的定式化。このコンパイラは、セキュアコンパートメンタル化の性質を保持する。
  • 論理的関係およびステップインデックス付き論理的関係を用いて、コンパイル層を跨ぐセキュリティ保証をモデル化・検証すること。
  • コントロールフローハイジャックやサイドチャnel漏洩といった低レベルの脅威を捉える、正確な攻撃者モデルの統合。

実験結果

リサーチクエスチョン

  • RQ1完全抽象性の概念をどのように拡張すれば、低レベルのコンパートメンタル化のセキュリティ保証を形式的に捉えることができるか?
  • RQ2特権分離コンponentを備えたシステムに標準的な完全抽象性を適用した場合、その際の主な制限は何であるか?
  • RQ3現実的な低レベル言語とそのコンパートメンタル化された機械へのコンパイルに対して、セキュアコンパートメンタル化を形式的に証明できるか?
  • RQ4コントロールフローハイジャックといった現実の脅威を捉えるために、適切な攻撃者モデルは何か?
  • RQ5完全抽象性から得られる確立された証明技法を、セキュアコンパートメンタル化の検証にどのように適応できるか?

主な発見

  • 本稿では、低レベルのコンパートメンタル化の意図されたセキュリティ保証を捉える形式的性質として、セキュアコンパートメンタル化を成功裏に定義した。
  • 標準的な完全抽象性の三つの主要な制限——特権モデリングの欠如、弱い攻撃者モデリング、サイドチャネル相互作用の不十分な取り扱い——が形式的に同定され、それらに対処された。
  • 手続きを備えた単純な不安全な手続き型言語と、そのコンパートメンタル化された抽象機械へのコンパイルに対して、セキュアコンパートメンタル化の性質が正当に証明された。
  • 証明技法は、完全抽象性から得られる確立された手法を活用しており、セキュアコンパートメンタル化が既存の検証フレームワークに適合可能であることを示した。
  • 攻撃者モデルは、コントロールフローハイジャックなどの低レベルの脅威を含むように明確化され、性質が現実の脅威シナリオを反映していることが保証された。
  • 結果として、セキュアコンパートメンタル化が、実際のコンパートメンタル化システムのセキュリティについての形式的推論の基盤を提供することが示された。

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

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

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

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