OWASP ZAPがどのようにして練習用vm上のディレクトリを発見し、ホストIPを入力して攻撃をヒットし、スパイダーがこのディレクトリを発見したかを理解しようとしています(pChart2.3.1)。
私はdirbusterが使用するすべての単語リストを検索しましたが、dirbusterがこの文字列を含まないため、dirbusterはそれを検出できませんでした。私もげっぷでクモを使ってみましたが、空白になりました。 (インデックスページには、ソースに何も追加されていない "単純に機能します"と表示されます。)ZAPがrobots.txt、次にsitemap.xmlのリクエストを送信し、ディレクトリを攻撃したようです。問題は、robots.txtもsitemap.xmlも存在しないことです。
簡単に言えば、OWASP ZAPはディレクトリを検索するために特定の単語リストを使用しますか?その場合はどこにありますか?あるいは、サーバーが存在しないと言っていても、sitemap.xmlを取得できましたか?
私はZAPの使用を許可しない実用的な試験をすぐに受けています。その結果を別のツールで再現したり、それが何をしたのかを理解したりしたいです。
今後の参考のために:
ZAPはスパイダーとして機能します。スパイダーはデータをクロールし、ノード内の接続ポイントを見つけます。ウェブスパイダーは、HTML、JS、CSSのリンク、ソース、アンカーをたどります。接続が見つかるたびに、ソースツリーに追加され、サーチツリーと呼ばれる階層データ構造が作成されます。簡単な例を挙げましょう。
\-root
|-page
|-page
| |-css
| \-js
| |-js
| |-font
| \-js
| \-img
\-xhr
|-js
|-img
|-doc
| \-xml
\-json
\-html
ある時点でツリーがトラバースされ、ZAPはこれらのノードの個別性を要求し、追加のフォームデータ、GETリクエスト、ヘッダーなどを送信できるようにします。これらのツリーは巨大になる可能性があり、ZAPの完了に長い時間がかかる理由を説明しています。最大深度を提供するか、他の(サブ)ドメインを含めることで、ツリーを制限または拡張できます。
検索エンジンでも同じ手法を使用して、Webコンテンツのインデックスを作成します。