【Linux】ffufコマンド
Contents
概要
ffuf(Fuzz Faster U Fool) **はWebアプリケーションのfuzzingを行うツール。
主な用途
- ディレクトリ/ファイルの探索(例: /admin,/login.phpなど)
- パラメータのファジング(例: id=FUZZを試して、SQLiやIDORを探す)
- VHost(仮想ホスト)の検出(例: FUZZ.example.com)
- HTTPリクエストのレスポンス内容を解析しながらファジング
ffufはGoで書かれているため、高速なファジングを行える
Gobusterとの違い
比較項目 | ffuf | Gobuster |
---|---|---|
開発言語 | Go | Go |
主な用途 | Webアプリのファジング全般 | ディレクトリ/サブドメインの列挙 |
対応プロトコル | HTTP/HTTPS,DNS,VHost | HTTP/HTTPS/DNS |
レスポンス解析 | ステータスコード、レスポンス長・正規表現にフィルタリングが可能 | ステータスコード・レスポンス長のフィルタリング |
カスタマイズ性 | 高い (リクエストヘッダ、クッキー、データ送信を柔軟に可能) | 限定的 |
速度 | 非常に高速 | 高速 |
ファジング | 可能 | ほぼ不可 |
インストール方法(Kali Linux)
1. aptでインストール
Kali Lunuxの公式リポジトリにffufが含まれている為、aptコマンドでインストール可能
sudo apt update
sudo apt install ffuf -y
2. Goを使って手動インストール
go install github.com/ffuf/ffuf@latest
パスを設定
ffufは ~/go/bin/にインストールされるため、パスを通しておく。
echo 'export PATH=$PATH:$HOME/go/bin' >> ~/.bashrc
source ~/.bashrc
基本的な使い方
1. ディレクトリのブルートフォース
ffuf -u http://example.com/FUZZ -w wordlist.txt
- -u: ターゲットのURL(FUZZはファジングする部分)
- -w:使用するワードリスト
2. GETパラメータのファジング
ffuf -u "http://example.com/page.php?param=FUZZ" -w wordlist.txt
3. POSTデータのファジング
ffuf -u "http://example.com/login" -w passwords.txt -X POST -d "username=admin&password=FUZZ"
- -X POST: HTTPメソッドをPOSTに指定
- -d: POSTデータの指定
便利なオプション
出力のフィルタリング
ffuf -u http://example.com/FUZZ -w wordlist.txt -mc 200
- -mc: 指定したステータスコード(例: 200のみ表示)
レスポンス長でフィルタリング
ffuf -u http://example.com/FUZZ -w wordlist.txt -fs 0
- -fs:指定したサイズのレスポンスを除外
複数のワードリストを使用
ffuf -u "http://example.com/FUZZ/SECRET" -w directories.txt:FUZZ -w secrets.txt:SECRET
- FUZZとSECRETに異なるワードリストを適応
マルチスレッド実行
ffuf -u http://example.com/FUZZ -w wordlist.txt -t 100
- -t: スレッド数(デフォルト:40)
出力をファイルに保存
ffuf -u http://example.com/FUZZ -w wordlist.txt -o result.json -of json
- -o: 出力ファイル名
- -of:出力フォーマット(json,html,csv,md,ecsv)
よく使うワードリスト
ディレクトリ & ファイル検索
- Discovery/Web-Content/raft-medium-directories.txt
- Discovery/Web-Content/big.txt
クレデンシャルファジング
- Passwords/Common-Credentials/best110.txt
コマンド まとめ
コマンド | 説明 |
---|---|
-u | ターゲットURL |
-w | ワードリスト |
-t | スレッド数 |
-mc | ステータスコードでフィルタリング |
-fs | レスポンスサイズでフィルタリング |
-X | HTTPメソッド指定 |
-d | POSTデータ指定 |
-o | 出力ファイル指定 |
-of | 出力フォーマット指定 |
ディスカッション
コメント一覧
まだ、コメントがありません