Skip to main content
QUICK REVIEW

[論文レビュー] Leveraging AI to optimize website structure discovery during Penetration Testing

Diego Antonelli, Roberta Cascella|arXiv (Cornell University)|Jan 18, 2021
Web Application Security Vulnerabilities参考文献 27被引用数 4
ひとこと要約

本稿では、語彙リストの意味的クラスタリングを用いてウェブサイト構造の発見を最適化するAI強化型dirbusting手法を提案する。意味的意味で語をグループ化し、次に予測される語の知能的戦略を適用することで、有効なパスを発見するためのHTTPリクエスト数を削減し、8つのウェブアプリケーション全体で従来のブルートフォース手法に比べ最大50%の性能向上を達成した。

ABSTRACT

Dirbusting is a technique used to brute force directories and file names on web servers while monitoring HTTP responses, in order to enumerate server contents. Such a technique uses lists of common words to discover the hidden structure of the target website. Dirbusting typically relies on response codes as discovery conditions to find new pages. It is widely used in web application penetration testing, an activity that allows companies to detect websites vulnerabilities. Dirbusting techniques are both time and resource consuming and innovative approaches have never been explored in this field. We hence propose an advanced technique to optimize the dirbusting process by leveraging Artificial Intelligence. More specifically, we use semantic clustering techniques in order to organize wordlist items in different groups according to their semantic meaning. The created clusters are used in an ad-hoc implemented next-word intelligent strategy. This paper demonstrates that the usage of clustering techniques outperforms the commonly used brute force methods. Performance is evaluated by testing eight different web applications. Results show a performance increase that is up to 50% for each of the conducted experiments.

研究の動機と目的

  • ブラックボックスペネトレーションテストにおいて、ランダムまたはヒューリスティックな語彙リストの使用に依存する従来のdirbusting手法の非効率性を是正すること。
  • 語彙リストの意味的理解を活用することで、ウェブディレクトリ構造のブルートフォース攻撃にかかる時間とリソース消費を低減すること。
  • AI駆動の意味的クラスタリングが、標準的なランダムまたは逐次的語彙リストアプローチに比べ、隠れたウェブアプリケーションパスの発見において優れていることを実証すること。
  • NLPおよび埋め込みベースのクラスタリングを用いた、スケーラブルで再利用可能なフレームワークを提供すること。

提案手法

  • 8つの多様なウェブアプリケーションをDockerコンテナにデプロイし、それらから絶対パスを抽出することで統合語彙リストを構築する。
  • 事前学習済みの文の埋め込み(Universal Sentence Encoder)を用いて語をベクトル化し、パスコンponent間の意味的類似度を計算する。
  • 階層的クラスタリングアルゴリズムを用いて、意味的に関連するパス(例:'admin'、'login'、'dashboard')をクラスタにグループ化し、探索順序を最適化する。
  • 知能的な次語戦略により、意味的関連性に基づいてクラスタを優先順位付けし、重複または低確率のリクエストを削減する。
  • 応答コード(404でないもの)を発見基準として用い、標準的なランダムブルートフォースdirbustingと性能を比較する。
  • 実験は8つの実世界のウェブアプリケーションで実施され、各テストで30回の繰り返しを実施し、統計的有意性を確保する。

実験結果

リサーチクエスチョン

  • RQ1語彙リストの意味的クラスタリングは、ウェブアプリケーションペネトレーションテストにおけるdirbustingの効率を向上させることができるか?
  • RQ2意味的クラスタリングに基づくdirbusting戦略は、従来のランダムまたは逐次的ブルートフォース手法と比較して、すべての有効パスを発見するまでのリクエスト数において、どのように性能を発揮するか?
  • RQ3クラスタリング手法は、隠しパスやプライベートパスを発見するために必要なHTTPリクエスト数をどの程度削減するか?
  • RQ4性能向上は異なるウェブアプリケーションフレームワークによって変動するか?その理由は何か?

主な発見

  • 意味的クラスタリング手法は、全8つのテスト対象ウェブアプリケーションでブルートフォース法に比べ最大50%の性能向上を達成した。
  • クラスタリングベースの手法は、ランダムブルートフォース法に比べ約半分のリクエスト数でほぼすべての有効URLを検出できた。
  • 語彙リストカバレッジが低く、もしくは断片的なアプリケーション(例:Bodgeit、Bricks、DVWS)では、性能向上が顕著に現れた。
  • Joomlaでは、語彙リストカバレッジが非常に高かった(8367語中4672語)ため、相対的な利点が小さく、改善は約2000リクエスト減少にとどまった。
  • 意味的クラスタリング手法では、時間経過に伴う有効リクエスト数の増加曲線が急峻に上昇し、全パス発見への収束が速やかに達成された。
  • 結果から、語彙リストの意味的理解により、ペネトレーションテスト中におけるウェブアプリケーション構造のより知的かつ効率的な探索が可能であることが示された。

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

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

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

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