【注意】このサイトに記載されていることを他人に試すことは「不正アクセス禁止法」に該当する場合があります。詳しくはこちらから

ハッカーはdirbで隠しディレクトリやファイルを見つけ出す(Kali Linuxツール説明)

ホワイトハッカーの知識座学,Kali Linuxツール,dirb

Webコンテンツスキャナーを理解するためにまとめてみました。
このdirbの動作確認は自分のドメインでテストを行っています。

dirbとは

dirbは、Webコンテンツスキャナーといわれており、Webの隠しオブジェクトを検索します。
webサーバーに対して辞書ベースの攻撃を起動して、応答を分析します。
DIRBの主な目的は、webアプリケーションの監査を支援することです。

機能

  • Webの隠しオブジェクトを検索

ツールの場所

[Applications]→[03-Web Application Analysis]→[Web Crawlers & Directory Bruteforce]→[dirb]

ツールと使用方法

dirb <url_base> [<wordlist_file(s)>] [options]

※<url_base> : スキャンするベースURL。セッションを再開するには-resumeを使用してください。
※<wordlist_file(s)> : ワードファイルのリスト。(ワードファイル1,ワードファイル2,ワードファイル3…)

例 dirb https://yahoo.co.jp/ (Simple Test)
dirb http://yahoo.co.jp/ -X .html (Test files with '.html’ extension)
dirb http://yahoo.co.jp/ /usr/share/dirb/wordlists/vulns/apache.txt (Test with apache.txt wordlist)

【実行イメージ】少し端折って整形しています。

┌──(root__kali)-[/home/kali]
└─# dirb https://******.com
-----------------
DIRB v2.22
By The Dark Raver
-----------------
START_TIME: Fri Apr 9 11:00:53 2021
URL_BASE: https://******.com/
WORDLIST_FILES: /usr/share/dirb/wordlists/common.txt
----------------
GENERATED WORDS: 4612
---- Scanning URL: https://******.com/ ----
==> DIRECTORY: https://******.com/audio/
+ https://******.com/backup (CODE:403|SIZE:199)
==> DIRECTORY: https://******.com/cgi-bin/
+ https://******.com/cgi-bin/ (CODE:403|SIZE:199)
+ https://******.com/core (CODE:403|SIZE:358) :
:

ホットキー(HOTKEYS)

'n’ -> Go to next directory.

次のディレクトリに移動します。

'q’ -> Stop scan. (Saving state for resume)

スキャンを停止します。レジュームのための状態保存。

'r’ -> Remaining scan stats.

残されたスキャンの統計。

オプション(OPTIONS)

-a <agent_string>

Specify your custom USER_AGENT.
カスタムのUSER_AGENTを指定します。

-b

Use path as is.
パスをそのまま使用します。

-c <cookie_string>

Set a cookie for the HTTP request.
HTTPリクエストにクッキーを設定します。

-E <certificate>

path to the client certificate.
クライアント証明書へのパス。

-f

Fine tunning of NOT_FOUND (404) detection.
NOT_FOUND(404)の検出の微調整。

-H <header_string>

Add a custom header to the HTTP request.
HTTPリクエストにカスタムヘッダーを追加します。

-i

Use case-insensitive search.
大文字小文字を区別せずに検索します。

-l

Print “Location" header when found.
見つかった場合、"Location “ヘッダを印刷します。

-N <nf_code>

Ignore responses with this HTTP code.
このHTTPコードのレスポンスを無視します。

-o <output_file>

Save output to disk.
出力をディスクに保存します。

-p <proxy[:port]>

Use this proxy. (Default port is 1080)
このプロキシを使います。(デフォルトのポートは1080)

-P <proxy_username:proxy_password>

Proxy Authentication.
プロキシの認証です。

-r

Don’t search recursively.
再帰的に検索してはいけません。

-R

Interactive recursion. (Asks for each directory)
インタラクティブな再帰。(各ディレクトリを尋ねます)

-S

Silent Mode. Don’t show tested words. (For dumb terminals)
サイレントモード。テスト済みの単語を表示しない。ダム端末用

-t

Don’t force an ending '/’ on URLs.
URLの末尾に「/」を強制的につけない。

-u <username:password>

HTTP Authentication.
HTTP認証です。

-v

Show also NOT_FOUND pages.
NOT_FOUNDページも表示します。

-w

Don’t stop on WARNING messages.
WARNINGメッセージで止まってはいけません。

-X <extensions> / -x <exts_file>

Append each word with this extensions.
各単語にこの拡張子を付けます。

-z <millisecs>

Add a milliseconds delay to not cause excessive Flood.
過剰なFloodを発生させないために、ミリ秒の遅延を加える。

dirbツールのまとめ

私のドメインで試してみましたが、ディレクトリーが恥ずかしいくらい丸裸にされてしまいました。

事前に設定されている攻撃用のワードリストをもとにディレクトリーを検索して、見つかった場合にその応答(CODEとSIZE)を表示されています。
見つかったファイルを元に、脆弱性を探すのでしょうか。

私はデフォルトのワードリストでしたが、ブラックハットハッカーは莫大なワードリストで検索するのですね。
ホワイトハットハッカーもウェブアプリケーション監査を支援するのに使うそうです。