セキュリティ PR

【完全ガイド】Gobusterの使い方:ファイル・ディレクトリ探索からサブドメインまで徹底解説!

記事内に商品プロモーションを含む場合があります

Gobusterとは?

Gobusterは、ペネトレーションテストや
Webアプリケーションのセキュリティ診断で
使用されるオープンソースツールです。

Gobusterは、Webサーバー上に隠された
ファイルやディレクトリ、サブドメインを
高速に探索するために使われます。

非常に軽量であり、ディレクトリ探索やDNS探索
(サブドメイン列挙)に特化しているのが特徴です。

なぜGobusterを使うのか?

セキュリティ診断において、
隠されたディレクトリやファイルを見つけ出すことは、
脆弱性を発見するための重要な手段です。

Gobusterを利用することで、
認証が不要なページや、
一般には公開されていない管理画面などを発見できる可能性があります。

Gobusterの導入方法

必要な環境

Gobusterは主にLinux環境で利用されることが多いですが、
WindowsやMacOSでも動作します。
事前にGo言語がインストールされている必要があります。

Gobusterのインストール手順

  1. Go言語のインストール
    GobusterはGoで開発されているため、
    まずGoをインストールします。
    sudo apt install golang
  2. Gobusterのインストール
    Goがインストールされている環境で、
    以下のコマンドを実行してGobusterをインストールします。
    go install github.com/OJ/gobuster/v3@latest
  3. Gobusterの実行確認
    インストール後、
    以下のコマンドで正常にインストールされたかを確認します。
    gobuster -h

Gobusterの基本フロー

Gobusterはコマンドラインから動作し、
いくつかのモードを使い分けることができます。
以下は、Gobusterを使用する際の基本的なフローです。

  1. 探索モードの選択
    Gobusterには複数のモード
    dirdnsvhostなど)が用意されています。
    最初に探索したいモードを決定します。
  2. ワードリストの準備
    Gobusterは、指定されたワードリストを
    使用してファイルやディレクトリの列挙を行います。
    適切なワードリストを準備することが重要です。
    例として、Kali Linuxには標準で多くのワードリストが含まれています。 /usr/share/wordlists/
  3. コマンド実行
    目的に応じたモードと
    ワードリストを指定してコマンドを実行します。

列挙の基本操作

ディレクトリの列挙

最もよく使われるのがディレクトリ列挙です。
指定したURLに対して、隠しディレクトリやファイルを探します。

gobuster dir -u http://example.com -w /usr/share/wordlists/dirb/common.txt

  • dir: ディレクトリ列挙モード
  • -u: 対象のURL
  • -w: 使用するワードリスト

サブドメインの列挙

dnsモードを使うと、サブドメインの列挙が可能です。

gobuster dns -d example.com -w /usr/share/wordlists/subdomains.txt

  • dns: DNS列挙モード
  • -d: ドメイン名

VHOST探索

仮想ホストの列挙も可能です。
これにより、複数のドメインが
同じIPアドレスにホストされているかどうかを調べられます。

gobuster vhost -u http://example.com -w /usr/share/wordlists/vhosts.txt

Gobusterを使ったポートスキャン

Gobuster単体ではポートスキャンは行いませんが、
Nmapなどのポートスキャンツールと併用することで、
より詳細な情報を得ることができます。
まずはNmapでポートをスキャンし、
開いているポートをGobusterでさらに調査するのが効果的です。

nmap -p 80,443 example.com

ディレクトリ探索の活用方法

ディレクトリ探索は、
特定のページにアクセスできる
隠しファイルやフォルダを見つけるのに最適です。
例えば、次のように重要なファイルが見つかることがあります。

/config.php
/admin/

サブドメイン探索の進め方

サブドメイン探索は、dnsモードを使います。
これにより、ドメインに関連するサブドメインを列挙できます。
特定のサブドメインが外部からアクセス可能な場合、
予期しない脆弱性が潜んでいる可能性もあります。

脆弱性の調査

Gobusterで列挙したファイルやディレクトリから、
脆弱性を調査することができます。

たとえば、特定のディレクトリに
脆弱なバージョンのソフトウェアがインストールされている場合、
攻撃の起点になる可能性があります。

Web診断でのGobusterの活用

Gobusterは、Webアプリケーションの
セキュリティ診断で広く使用されます。
特に、認証されていないユーザーが
アクセスできるファイルやディレクトリを発見し、
脆弱性のある箇所を事前に特定できます。

Gobusterと他のツールの違い

Gobusterは、
高速なディレクトリ探索や
サブドメイン列挙に優れている一方、
他のツールと比較してシンプルです。
例えば、FFUFDirBusterはより多機能ですが、
その分動作が遅い場合があります。

使用しているツールや環境

Gobusterは、
主にCLI(コマンドラインインターフェース)で動作します。
推奨される環境はLinuxですが、WindowsやMacでも使用可能です。

まとめ

Gobusterは、
軽量で高速なディレクトリ列挙・サブドメイン探索ツールとして、
セキュリティ診断の現場で広く利用されています。
シンプルなインターフェースと
強力な機能を持つGobusterを使いこなせば、
Webアプリケーションの隠れた脆弱性を発見する手助けになります。