章節7:Burp Intruder模塊
參考資料
https://portswigger.net/burp/documentation/desktop/tools/intruder
01 Intruder模塊作用與原理
原理
http://xxx.xx.com/bbs/index.php?name=wuyanzu&motto=go
對請求參數進行修改,分析響應內容,獲得特征數據
本質:
- 自動化發起HTTP請求
- 基于現成字典或者生成字典
用途
-
猜測用戶名、密碼等
-
尋找參數、目錄等
-
枚舉商品ID、驗證碼等
-
模糊測試(FUZZ)
……
可替代工具:
wfuzz(全部功能)、dirb(目錄掃描)、hydra(暴破)……
02 Intruder實現密碼暴力破解
靶場環境
dvwa
流程
- 從其他模塊發送或者手動填寫
- 選擇攻擊模式 Attack type
- 選擇攻擊字段 Positions
- 設置payload
- 其他設置(線程池等)
- 發起攻擊
- 查看結果
攻擊模式
Sniper
Battering ram
Pitchfork
Cluster bomb
payload type
類別 | 名稱 | 描述 |
---|---|---|
Simple list | 簡單字典 | 添加、粘貼或者從文件讀取字典,或者使用預定義的字典 |
Runtime file | 運行時文件 | 運行時,Burp Intruder將讀取文件的每一行作為一個Payload |
Custom iterator | 自定義迭代器 | 這個是占位填充的一種方式,最多8位 |
Character substitution | 字符替換 | 把字典里面相應的字符進行替換 |
Case modification | 大小寫修改 | 要不要保持原樣的,要不要全部大寫的,要不要全小寫的,要不要駝峰命名的 |
Recrusvive grep | 遞歸查找 | 用來提取相應數據的比如拿到PHPSESSIONID,拿到TOKEN等等,可以通過格式匹配抓取到對應的字段值。 |
Illegal unicode | 非法Unicode 編碼 | 用于繞過正則表達式的過濾驗證 |
Character blocks | 字符塊 | 比如生成100A,200個+號,300個數字1等等 |
numbers | 數字組合 | |
dates | 日期組合 | |
Brute forcer | 暴力破解 | 暴力枚舉,最后一位先固定,然后一個個改 |
Null payloads | 空payload | 不需要設置payload |
Character frobber | Character frobber | 依次修改指定字符串在每個字符位置的值,每次都是在原字符上遞增一個該字符的ASCII碼。![]() |
Bit flipper | Bit翻轉 | 對預設的Payload原始值,按照比特位,依次進行修改 |
Username generator | 用戶名生成器 | 主要用于用戶名和email帳號的自動生成 |
ECB block shuffler | ECB加密塊洗牌 | 基于ECB加密模式的Payload生成器 |
Extension - generated | Burp Payload 生成插件 | 基于Burp插件來生成Payload值,需要安裝插件 |
Copy other payload | Payload復制 | 是將其他位置的參數復制到Payload位置上(比如密碼要輸入兩遍) |
https://portswigger.net/burp/documentation/desktop/tools/intruder/payloads/types
03 Intruder其他攻擊模式
Battering ram
所有字段的值相同,來自同一個字典
Pitchfork
從多個字典提取值,賦給多個字段,按順序一一對應
例如:
100個用戶名
50個密碼
最終請求次數:50次
Cluster bomb
所有字典全部交叉驗證
例如: 100個用戶名
50個密碼
最終請求次數:5000次