[論文レビュー] HornDroid: Practical and Sound Static Analysis of Android Applications by SMT Solving
HornDroid は、プログラムの意味を Horn 範図でモデル化し、SMT 解法を用いて情報フロー特性を検証する、Android アプリ向けの音声静的解析ツールである。高精度かつ高性能を達成しており、既存のツールを上回り、Android 静的解析における正当性の形式的証明を初めて提供する。
We present HornDroid, a new tool for the static analysis of information flow properties in Android applications. The core idea underlying HornDroid is to use Horn clauses for soundly abstracting the semantics of Android applications and to express security properties as a set of proof obligations that are automatically discharged by an off-the-shelf SMT solver. This approach makes it possible to fine-tune the analysis in order to achieve a high degree of precision while still using off-the-shelf verification tools, thereby leveraging the recent advances in this field. As a matter of fact, HornDroid outperforms state-of-the-art Android static analysis tools on benchmarks proposed by the community. Moreover, HornDroid is the first static analysis tool for Android to come with a formal proof of soundness, which covers the core of the analysis technique: besides yielding correctness assurances, this proof allowed us to identify some critical corner-cases that affect the soundness guarantees provided by some of the previous static analysis tools for Android.
研究の動機と目的
- Android アプリ向けの実用的で正当な静的解析フレームワークを開発し、情報フロー解析の正しさを保証すること。
- Android アプリのセキュリティ特性の自動検証に、市販の SMT ソルバを活用すること。
- 既存の Android 静的解析ツールよりも精度とパフォーマンスを向上させること。
- コア解析手法の正当性を形式的に証明し、過去のツールが見過ごした重要なコーナーケースを特定すること。
提案手法
- Android アプリの制御フローおよびデータフロー動作を表すために、Horn 範図を用いて抽象的なプログラム意味を定義する。
- セキュリティ特性を Horn 範図フレームワーク内で表現された証明義務としてエンコードする。
- 市販の SMT ソルバを用いて、これらの証明義務を自動的に解決する。
- 解析の精度とパフォーマンスのバランスをとるために、微調整機構を統合する。
- コア解析手法の正当性について形式的証明を構築し、正しさの保証を確保する。
実験結果
リサーチクエスチョン
- RQ1既存の検証インfraストラクチャを活用して、Android アプリの静的解析を精度よくかつスケーラブルに行うにはどうすればよいか?
- RQ2Horn 範図は、セキュリティ特性検証のための Android アプリの意味を効果的にモデル化できるか?
- RQ3SMT ソルバは、Android アプリにおける情報フロー特性の検証を自動化するためにどの程度活用可能か?
- RQ4過去の Android 静的解析ツールの正当性を損なう重要なコーナーケースは何か?
- RQ5実用的な Android 静的解析フレームワークに対して、形式的正当性証明を構築できるか?
主な発見
- HornDroid は、コミュニティが提案したベンチマークにおいて、最先端の Android 静的解析ツールを上回っている。
- このツールは、コア解析手法の形式的正当性証明を提供する最初のものである。
- 形式的証明により、過去の静的解析ツールの正当性を損なう重要なコーナーケースが特定された。
- SMT 解法の活用により、市販の検証技術を用いて高精度を維持しながらスケーラビリティを確保できる。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。