Dirbleは、WindowsとLinux用のWebサイトディレクトリスキャンツールです。走るのが速く、使いやすいように設計されています。
Linux、Windows、またはMac用のプリコンパイルされたバイナリの1つをダウンロードするか、貨物を使用してソースをコンパイルし、ターミナルから実行します。デフォルトのWordList Dirbleが使用するのは、dirble_wordlist.txtです。実行可能ファイルと同じディレクトリです。
sudo pacman -S dirbleを使用してBlackarchにインストールできます
Docker画像もあります。これは次のように実行できます。DockerRun docker run --rm -t isona/dirble [dirble arguments]
ヘルプテキストは、 dirble --help 、あるいはgithub wiki:https://github.com/nccgroup/dirble/wiki/help-textで見つけることができます。
現在のディレクトリからのデフォルトのdirble_wordlist.txtを使用してウェブサイトに対して実行する: dirble [address]
別のWordListで実行し、.phpおよび.html拡張機能を含む: dirble [address] -w example_wordlist.txt -x .php,.html
リスト可能なディレクトリのスクレイピングが有効になっています: dirble [address] --scrape-listable
拡張機能のリストとホストのリストを提供する: dirble [address] -X wordlists/web.lst -U hostlist.txt
コマンドラインを介してスキャンする複数のホストを提供する: dirble [address] -u [address] -u [address]
Gobusterのデフォルトスタイルでスレッドを使用して実行し、再帰を無効にし、10個のスレッドがメインディレクトリをスキャンします: dirble [address] --max-threads 10 --wordlist-split 10 -r
現在のプラットフォーム上に構築するには、貨物が設置されていることを確認してから、 cargo build --release 。あるいは、 makeすると、リリースモードでバイナリがビルドされます(内部的にcargo build --release )。
32および64ビットのLinuxおよびWindowsのターゲットをクロスコンパイルするには、便利なMakeFileがあります。 crossを使用して、4つのターゲットすべてに対してmake releaseが構築されます。これは、CrossとDockerがインストールされることに依存します( cargo install cross )。
次のグラフは、5msのレイテンシと1%のパケット損失を持つテストサーバーに対してHyperfineで各ツールを実行することにより生成されました。 (再帰が不足しているため、Gobusterは省略されました)。

Dirbleは、サーバーから送信された応答コードに基づいてファイルを検出します。動作は、応答コードタイプによってゆるく分類できます。
200 :パスが存在し、有効です301, 302 :リダイレクト。コード、サイズ、およびロケーションヘッダーを報告します404 :見つかりません。デフォルトでは、これらの応答は報告されていません+ [url] (CODE:[code]|SIZE:[size])のdirble形式で報告されます。 [url]への要求(末尾のスラッシュなし)が301または302のリダイレクトを[url]/ (後続のスラッシュで)に返す場合、パスはディレクトリとして分類されます。これはDプレフィックスで報告され、再帰が有効になっている場合はスキャンキューに追加されます。この方法は、既存またはアクセス可能なリダイレクトターゲットに依存していないため、ディレクトリの応答コードとサイズを決定するために別の要求が行われます。
リスト可能なディレクトリは、 url/のコンテンツを検査することで検出されます。200の応答コードを返し、ボディに「親ディレクトリ」、「up」または「directory listing for」(ケースの鈍感)のいずれかが含まれている場合、リスト可能なディレクトリになる可能性があります。 --scrape-listableが有効になっている場合、URLはリストから解析され(並べ替えリンクまたはスコープリンクを無視することを無視して)、トレーリングスラッシュがある場合はスキャンキューに追加されます。リスト可能なディレクトリには、出力にLプレフィックスがあります。
Dirbleのスレッドの動作は、ワードリストとジョブの概念に基づいています。ジョブとは、たとえば一連のURLを要求するなど、他のタスクとは独立して実行できるタスクです。ワードリストとは、定義された変換がある単語のリストです。たとえば、リスト{admin, config, shop}とともに、 append ".php"は単一のワードリストインスタンスを形成します。
パフォーマンスをさらに向上させるために、ワードリスト分割の概念を紹介します。これは、単一のWordListインスタンス(つまり、変換のある単語)が複数のジョブに分割され、それぞれがリストの一部を担当するプロセスです。各ワードリストが分割されるインターリーブ部分の数は--wordlist-splitオプション(デフォルト3)によって定義されます。
ディレクトリが検出されたときはいつでも(および再帰が有効になっています)、スプリットワードリストごとに新しいジョブが作成され(変換付き)、中央のジョブキューに追加されます。
同時タスクの最大数は、 --max-threadsパラメーターによって定義され、Dirbleはこの制限までキューに追加されるとジョブを開始します。ジョブが完了すると(つまり、分割ワードリストが使い果たされます)、ディラブルはキューから次のジョブを取り、それを開始します。
gpl v3.0でリリースされています。詳細については、ライセンスを参照してください