Ffuf使用教程
kali安裝教程鏈接:https://www.iculture.cc/cybersecurity/pig=210
該工具用途廣泛,可用于多種用途。一些用途:
? 目錄發現,可選擇在 URL 中的任何位置進行模糊測試。
? 子域名發現
? 使用各種 HTTP 方法進行模糊測試。
安裝
使用這種方法需要Golang編譯器
基礎指令
? -u url地址
? -w 設置字典
? -c 將響應狀態碼用顏色區分,windows下無法實現該效果。
? -t 線程率,默認40
? -p 請求延時: 0.1、0.2s
? -ac 自動校準fuzz結果
? -H Header頭,格式為 “Name: Value”
? -X HTTP method to use
? -d POST data
? -r 跟隨重定向
? -recursion num 遞歸掃描
? -x 設置代理 http 或 socks5://127.0.0.1:8080
? -s 不打印附加信息,簡潔輸出
? -e 設置腳本語言 -e .asp,.php,.html,.txt等
? -o 輸出文本
? -of 輸出格式文件,支持html、json、md、csv、或者all
- 1
基礎用法 (⊙o⊙)
-u 掃描目標,-w字典,速度非常快,7000的字典只用了三秒鐘
ffuf -u "http://192.168.242.62/dvwa/FUZZ" -w ./top7000.txt- 1
遞歸掃描
值得注意的是字典內開頭不要有 / 不然不會進行遞歸的,當然,也有可能是我演示時候FUZZ前加了 / ,我也不想再做實驗了,隨便寫上吧。去除 / 可使用sed -i ‘s///’ /dict.txt 替換掉開頭第一個斜杠
ffuf -u "http://192.168.242.62/FUZZ" -w test.txt -x "http://127.0.0.1:8080" -recursion "2"- 1
圖片
進階用法 ^ _ ^
- -maxtime 在有限的時間內完成測試,不論是否完成都將終止,單位為s,
盡量使用**-maxtime-job與-recursion**遞歸掃描一起使用,用于指定每個目錄遞歸掃描時間,避免掃描時間過長
- 1
- -p Seconds of delay between requests, or a range of random delay. For example “0.1” or “0.1-2.0”
匹配輸出(MATCHER)
ffuf提供了僅獲取具有特定特征的狀態碼、行數、響應大小、字數以及匹配正則表達式的模式進行響應輸出。
-
-mc :指定狀態代碼。
-
-ml:指定響應行數
-
-mr: 指定正則表達式模式
-
-ms:指定響應大小
-
-mw:指定響應字數
例子:匹配響應狀態碼為200,301進行輸出
ffuf -w dict.txt -w http://website.com/FUZZ -e .aspx,.html -mc 200,301- 1
過濾輸出(FILTER)
-
-fw : 按字數過濾
-
-fl :按行數過濾
-
-fs :按響應大小過濾
-
-fc : 按狀態碼過濾
-
-fr : 按正則表達式模式過濾
不輸出 200,300狀態碼:
ffuf -w dict.txt -w http://website.com/FUZZ -e .aspx,.html -fc 200,301- 1
對多個域名進行目錄發現
ffuf -w dict.txt:FUZZ -w /targets.txt:URL -u URLFUZZ -mc 200 -of csv -o result.txt- 1
注意:
如果你的字典是 / 開頭,如:/admin
直接URLFUZZ就可以
如果是直接admin的字典,
那就使用URL/FUZZ
子域名爆破
ffuf -w subdomains.txt -u http://website.com/ -H "Host:FUZZ.website.com"- 1
密碼爆破&接口&參數模糊測試
ffuf -w wordlist.txt -X POST -d "username=admin\&password=FUZZ" -u http://website.com/FUZZ- 1
- 1
-
-mode 爆破模塊,目前有clusterbomb 、 pitchfork 兩個模式具體看burpsuite的爆破模塊
-
在clusterbomb模式下,用戶名單詞列表中的每個單詞都將與密碼單詞列表中的每個單詞組合使用。就像如果列表 1 中有 4 個單詞而列表 2 中有 5 個單詞,那么總共會有 20 個請求。
-
在pitchfork模式下,用戶名列表中第一個單詞將與密碼列表中第一個單詞一起使用,同樣,用戶名列表中第二個單詞將與密碼列表中第二個單詞一起使用。如果兩個列表中的單詞數量不同,那么一旦單詞數量較少的列表耗盡就會停止。
-
-request 標志可用于指定與原始HTTP請求文件,并且將相應使用FUZZ
-
-request-proto 與原始請求一起使用的協議(默認值:https)
總結
- 上一篇: Linux的shell编写
- 下一篇: Burp Collaborator 使用