mcpField
F
fuzz

fuzz

github.com/ariadossセキュリティ1259 回インストール1 日前に更新
リポジトリ

fuzz について

fuzzは、ffufを使った軽量なWebアプリケーションのファジングスキルです。セキュリティテスト担当者向けに、パス、APIエンドポイント、パラメーター、サブドメインを探索し、レスポンスのフィルタリングやJSON出力にも対応します。

主な機能

  1. 01ディレクトリとファイルの探索
  2. 02APIエンドポイントの探索
  3. 03GET・POSTパラメーターのファジング
  4. 04サブドメインの列挙
  5. 05ステータスや内容によるレスポンスの絞り込み
  6. 06結果のJSON出力

活用シーン

  1. 01非公開のWebパスやファイルの発見
  2. 02ワードリストを使ったAPIルートの調査
  3. 03Webパラメーターやログイン入力のテスト
  4. 04サブドメインの列挙とスキャン結果の保存

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/ariadoss/superskills --skill fuzz

インストール後、Claude Code で/fuzzを入力して読み込まれたか確認します。

詳細

Fuzz — ffuf による Web ファジング

ffuf を使用した、軽量な Web アプリケーションのファジングです。

前提条件

command -v ffuf && ffuf -V

インストールされていない場合:

brew install ffuf    # macOS
# or
go install github.com/ffuf/ffuf/v2@latest

よく使用するワードリスト

/usr/share/wordlists/                          # Kali default
/opt/homebrew/share/wordlists/                 # Homebrew
~/.local/share/wordlists/                      # User-local

# SecLists (install: brew install seclists)
/opt/homebrew/share/seclists/Discovery/Web-Content/common.txt
/opt/homebrew/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt
/opt/homebrew/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt
/opt/homebrew/share/seclists/Fuzzing/LFI/LFI-Jhaddix.txt

ワードリストが見つからない場合:brew install seclists

使用パターン

ディレクトリ/ファイルの検出
ffuf -u https://TARGET/FUZZ -w wordlist.txt -mc 200,301,302,403
API エンドポイントの検出
ffuf -u https://TARGET/api/FUZZ -w wordlist.txt -mc 200,401,403,405
パラメーターのファジング(GET)
ffuf -u "https://TARGET/page?FUZZ=value" -w params.txt -mc 200 -fs 4242
POST データのファジング
ffuf -u https://TARGET/login -X POST \
  -d "username=admin&password=FUZZ" \
  -w passwords.txt -mc 200 -fc 401
サブドメインの列挙
ffuf -u https://FUZZ.TARGET.com -w subdomains.txt -mc 200,301,302
認証付きファジング
ffuf -u https://TARGET/api/FUZZ -w wordlist.txt \
  -H "Authorization: Bearer <token>" \
  -H "Cookie: session=<value>" \
  -mc 200,201,403

フィルタリングオプション

  • -mc 200,301 — HTTP ステータスコードに一致
  • -fc 404,500 — ステータスコードをフィルター(除外)
  • -fs 4242 — レスポンスサイズでフィルター(ノイズを除去)
  • -fw 12 — 単語数でフィルター
  • -fr "not found" — レスポンス内の正規表現でフィルター

出力

ffuf -u https://TARGET/FUZZ -w wordlist.txt -o results.json -of json

ヒント

  • 小さなワードリストから始め、必要に応じて拡張します
  • -rate 100 を使用して、1 秒あたりのリクエスト数を制限します(DoS を回避)
  • -t 40 を使用してスレッド数を指定します(デフォルト:40)
  • フィルターなしで一度実行し、一般的なレスポンスサイズを確認してから -fs を追加します
  • -recursion -recursion-depth 2 と組み合わせると、再帰的に検出できます

コメント