
Webアプリケーション向けの高性能ブラックボックスファザー。ペイロードエンジン、リクエスト検証、改ざん、エンコーディング、高度なフィルタリングを内蔵し、隠れた動作や脆弱性を検出します。
</ 利点 | 特徴 | インストール | 使い方 | コミュニティ >
Firefly は高度なブラックボックスファザーであり、単なる標準的なアセットディスカバリツールではありません。Firefly は、ターゲットの動作を検出するために多数の組み込みチェックを使用してターゲットをテストできる利点を提供します。
go install -v github.com/Brum3ns/firefly/cmd/firefly@latest
または
go get -v github.com/Brum3ns/firefly/cmd/firefly
firefly -h
firefly -u 'http://example.com/?query=FUZZ'
使用可能なさまざまなリクエスト入力タイプ
基本
firefly -u 'http://example.com/?query=FUZZ' --timeout 7000
異なるメソッドとプロトコルを使用したリクエスト
firefly -u 'http://example.com/?query=FUZZ' -m GET,POST,PUT -p https,http,ws
echo 'http://example.com/?query=FUZZ' | firefly
firefly -r '
GET /?query=FUZZ HTTP/1.1
Host: example.com
User-Agent: FireFly'
これにより HTTP Raw が送信され、ファジング対象の GET パラメータおよび POST パラメータがすべて自動検出されます。
firefly -r '
POST /?A=1 HTTP/1.1
Host: example.com
User-Agent: Firefly
X-Host: FUZZ
B=2&C=3' -au replace
リクエスト検証は最も重要な部分です。この機能により、Firefly はファジング対象のターゲットの核心的な動作を把握できます。量より質を重視することが重要です。検証リクエストを増やすと、内部ハードウェアのパフォーマンスを犠牲にして(ハードウェアに依存)品質が向上します。
firefly -u 'http://example.com/?query=FUZZ' -e
ペイロードは高度にカスタマイズでき、優れたコアワードリストがあれば、Firefly 自体の中でペイロードワードリストを完全に適応させることが可能です。
すべてのペイロードの形式を表示して終了
firefly -show-payload
利用可能なすべてのタンパーのリスト
firefly -list-tamper
指定されたタイプですべてのペイロードにタンパーを適用(カンマ区切りで複数指定可能)
firefly -u 'http://example.com/?query=FUZZ' -e s2c
firefly -u 'http://example.com/?query=FUZZ' -e hex
すべてのペイロードをまず hex でエンコードし、さらに URL エンコード
firefly -u 'http://example.com/?query=FUZZ' -e hex,url
firefly -u 'http://example.com/?query=FUZZ' -pr '\([0-9]+=[0-9]+\) => (13=(37-24))'
ペイロード:
' or (1=1)-- -および" or(20=20)or "結果:' or (13=(37-24))-- -および" or(13=(37-24))or "ここで=>(スペースあり)は「に置換」を示します。
特定のルールを含むリクエストをフィルタリング(除外)/マッチ(含める)するフィルターオプション。
除外(フィルター)するレスポンス:ステータスコード 302、行数 0
firefly -u 'http://example.com/?query=FUZZ' -fc 302 -fl 0
含める(マッチ)するレスポンス:正規表現、ステータスコード 200
firefly -u 'http://example.com/?query=FUZZ' -mr '[Ee]rror (at|on) line \d' -mc 200
firefly -u 'http://example.com/?query=FUZZ' -mr 'MySQL' -mc 200
リクエスト処理に使用するパフォーマンスと時間遅延
スレッド数 / 同時実行数
firefly -u 'http://example.com/?query=FUZZ' -t 35
各同時実行に対する時間遅延(ミリ秒)
firefly -u 'http://example.com/?query=FUZZ' -t 35 -dl 2000
ペイロードを含むワードリストを個別に追加するか、指定されたフォルダから抽出できます。
攻撃タイプを指定した単一ワードリスト
firefly -u 'http://example.com/?query=FUZZ' -w wordlist.txt:fuzz
フォルダ内のすべてのワードリストを抽出。攻撃タイプはサフィックス <type>_wordlist.txt に依存
firefly -u 'http://example.com/?query=FUZZ' -w wl/
例
フォルダ
wl内のワードリスト名:
- fuzz_wordlist.txt
- time_wordlist.txt
JSON 出力を強く推奨します。これは、
jqツールを使用して結果をナビゲートし、比較できるためです。 (Firefly が他のツールとパイプラインで連携する場合は、標準のプレーンテキストの方が適している場合があります。)
シンプルなプレーンテキスト出力形式
firefly -u 'http://example.com/?query=FUZZ' -o file.txt
JSON 出力形式(推奨)
firefly -u 'http://example.com/?query=FUZZ' -oJ file.json
コミュニティの皆さんは、新機能の提案、改善、Firefly への新しいペイロードの追加を自由に行えます。プルリクエストを作成するか、コメントで提案を追加してください。