Skip to main content
QUICK REVIEW

[論文レビュー] Designing Robust API Monitoring Solutions.

Simone Nicchi, Matteo Mariani|arXiv (Cornell University)|May 1, 2020
Advanced Malware Detection Techniques参考文献 29被引用数 7
ひとこと要約

本論文では、高い正確性、信頼性、透明性を備えた、ユーザー空間ライブラリおよびシステムコールを正確に追跡することを目的とした、堅牢でオープンソースのAPIモニタリングシステムSNIPERを提示する。本研究は、ハードウェア支援仮想化と動的バイナリ翻訳の2つの実装バリアントを用いることで、同種の一般的なユーザー空間トレーサーとして初めて実現した。

ABSTRACT

Tracing the sequence of library and system calls that a program makes is very helpful in the characterization of its interactions with the surrounding environment and ultimately of its semantics. Due to entanglements of real-world software stacks, accomplishing this task can be surprisingly challenging as we take accuracy, reliability, and transparency into the equation. To manage these dimensions effectively, we identify six challenges that API monitoring solutions should overcome and outline actionable design points for them, reporting insights from our experience in building API tracers for software security research. We detail two implementation variants, based on hardware-assisted virtualization (realizing the first general-purpose user-space tracer of this kind) and on dynamic binary translation, that achieve API monitoring robustly. We share our SNIPER system as open source.

研究の動機と目的

  • 複雑なソフトウェアスタックにおける正確で信頼性が高く、透明性のあるAPIモニタリングの課題に対処すること。
  • 効果的なシステムコールトレースを妨げる現実世界のソフトウェア環境の複雑さを克服すること。
  • ハードウェア支援仮想化と動的バイナリ翻訳の両方をサポートする、汎用的なユーザー空間APIトレーサーを設計すること。
  • ソフトウェアセキュリティ研究およびシステム分析に向けた生産的でオープンソースのソリューションを提供すること。

提案手法

  • ハードウェア支援仮想化を活用して、高忠実度で低オーバーヘッドなユーザー空間トレーサーを構築する。
  • 幅広い実行環境での互換性を確保するため、動的バイナリ翻訳に基づくバリアントを実装する。
  • 制御フローとシステムコールのインターセプトを慎重に処理することで、実行時干渉を最小限に抑え、高い透明性を実現する。
  • 両アプローチを統合したフレームワークを設計し、パフォーマンス、ポータビリティ、正確性のバランスを図る。
  • 制御フローとシステムコールインターセプトの処理を丁寧に設計することで、正しさと堅牢性を確保する。
  • SNIPERとしてシステムを公開し、再現可能で拡張可能なソフトウェア分析のためのツールを提供する。

実験結果

リサーチクエスチョン

  • RQ1現実世界のソフトウェアスタックにおいて、正確で信頼性が高く、透明性のあるAPIモニタリングを達成するための主な課題は何か?
  • RQ2ハードウェア支援仮想化を効果的に活用することで、汎用的なユーザー空間APIトレーサーを実装するにはどうすればよいか?
  • RQ3動的バイナリ翻訳は、多様な実行環境にわたる堅牢なAPIモニタリングの代替手段として、どの程度実用的か?
  • RQ4両方のトレーシング手法を統合するための設計原則は何か?

主な発見

  • 著者らは、複雑なソフトウェア環境における正確性、信頼性、透明性に影響を与える6つの核心的課題を同定した。
  • ハードウェア支援仮想化バリアントにより、同種の一般的なユーザー空間APIトレーサーとして初めて実現され、高い忠実度と低オーバーヘッドを達成した。
  • 動的バイナリ翻訳バリアントは、多様な実行プラットフォームにわたって堅牢性を維持するポータブルな代替手段を提供した。
  • SNIPERシステムは、両アプローチを組み合わせることで、包括的で正確かつ透明なシステムコールトレースを実現したことを示した。
  • SNIPERのオープンソース化により、ソフトウェアセキュリティおよびシステム分析分野における再現可能で拡張可能な研究が可能になった。
  • 設計原則と実装の知見は、将来的なシステムレベルのモニタリングおよびランタイム分析分野への応用に直接的に適用可能である。

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

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

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

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