Skip to main content
QUICK REVIEW

[論文レビュー] Deemon: Detecting CSRF with Dynamic Analysis and Property Graphs

Giancarlo Pellegrino, Martin Johns|arXiv (Cornell University)|Aug 29, 2017
Web Application Security Vulnerabilities参考文献 28被引用数 4
ひとこと要約

Deemonは、動的解析とプロパティグラフモデリングを用いて認証済みクロスサイトリクエストフォージェリ(aCSRF)脆弱性を自動検出する最初のフレームワークである。実行時トレースから統一モデルを推論し、グラフ走査により不審な状態変更リクエストを特定し、自動テストを通じて脆弱性を検証することで、実世界のWebアプリケーションに14件の以前未知のaCSRF脆弱性を発見した。

ABSTRACT

Cross-Site Request Forgery (CSRF) vulnerabilities are a severe class of web vulnerabilities that have received only marginal attention from the research and security testing communities. While much effort has been spent on countermeasures and detection of XSS and SQLi, to date, the detection of CSRF vulnerabilities is still performed predominantly manually. In this paper, we present Deemon, to the best of our knowledge the first automated security testing framework to discover CSRF vulnerabilities. Our approach is based on a new modeling paradigm which captures multiple aspects of web applications, including execution traces, data flows, and architecture tiers in a unified, comprehensive property graph. We present the paradigm and show how a concrete model can be built automatically using dynamic traces. Then, using graph traversals, we mine for potentially vulnerable operations. Using the information captured in the model, our approach then automatically creates and conducts security tests, to practically validate the found CSRF issues. We evaluate the effectiveness of Deemon with 10 popular open source web applications. Our experiments uncovered 14 previously unknown CSRF vulnerabilities that can be exploited, for instance, to take over user accounts or entire websites.

研究の動機と目的

  • 認証済みCSRF(aCSRF)脆弱性の自動検出手法の不足に応えること。これらは現在まで主に手動での調査によって発見されている。
  • 実行トレース、データフロー、アーキテクチャ層を統一表現として捉えるモデルベースのアプローチを開発すること。
  • GUI操作記録のみを入力として用いることで、手動設定を最小限に抑えた、非教師ありでトレース駆動のモデル構築を可能にすること。
  • 実アプリケーションにおける候補脆弱性の実行可能性を検証するため、自動的にテストを生成・実行すること。
  • 現実のWebアプリケーションにおけるセキュリティセンシティブな操作の保護状況の現状を評価し、保護が一貫していない事例を特定すること。

提案手法

  • DeemonはWebアプリケーションを動的インストルメンテーションし、ネットワークリクエスト、サーバーサイド操作、データベースインタラクションを含む実行トレースを収集する。
  • 状態遷移、データフロー、アーキテクチャコンポonentsを統合した1つの分析可能な表現として、プロパティグラフモデルを構築する。
  • グラフ走査技術を用いて、適切なCSRF保護メカニズムが欠如した状態変更HTTPリクエストを特定する。
  • 拡張されたランタイム環境を活用し、候補脆弱性の実行可能性を検証するため、エクスプロイトに類似したテストを自動生成・実行する。
  • モデル推論を非教師ありで実施し、記録されたGUI操作のみを入力として用いることで、スケーラブルで低負荷の展開を可能にする。
  • プロパティグラフ上のクエリ言語を活用し、不審なまたは脆弱な行動パターンを表現・検出する。

実験結果

リサーチクエスチョン

  • RQ1動的解析とモデルベース推論を用いて、スケール的にaCSRF脆弱性を自動検出できるか?
  • RQ2プロパティグラフベースのモデリングパラダイムは、CSRFに関連する現代のWebアプリケーションのクロスティアーやクロスファンクション要因を的確に捉えられるか?
  • RQ3推論モデルに基づく自動テスト生成は、発見されたaCSRF候補の実行可能性を信頼性高く検証できるか?
  • RQ4現実のWebアプリケーションにおけるセキュリティセンシティブな操作の保護状況は、現在どの程度の認識・保護がなされているか?
  • RQ5セキュリティセンシティブな操作が選択的に保護されているパターンは存在するか?これは、誤設定や見過ごされた脆弱性を示唆するか?

主な発見

  • Deemonは、10の代表的なオープンソースWebアプリケーションにおいて、14件の以前未知のaCSRF脆弱性を発見した。そのうちには、ユーザーのアカウント乗っ取りやデータベースの改ざんを可能にする深刻な脆弱性も含まれた。
  • フレームワークは、14件すべての脆弱性について自動テスト実行により実行可能性を正当化し、それらが実世界に影響を及えることを確認した。
  • 2件の事例で、セキュリティセンシティブな操作が一貫性なく保護されている驚くべき保護パターンを発見し、誤設定の可能性を示唆した。
  • プロパティグラフモデリングアプローチにより、従来のスキャナーや静的解析器が見逃しがちな複雑なクロスティア相互作用の検出が有効に行えた。
  • 評価では、動的でトレース駆動のモデリングが、aCSRFのような論理的・状態ベースの脆弱性を検出する際、従来のクローリングベースのスキャナーよりも優れていることが示された。
  • 結果から、現在の手動検出手法の限界が浮き彫りになり、aCSRF検出のための自動的でスケーラブルなソリューションへの緊急の必要性が浮き彫りになった。

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

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

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

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