Burp Suite功能概要:
基本功能
- Proxy:將Burp配置為Web代理,位於瀏覽器和目標Web服務器之間。這使得Burp能夠攔截、檢查和修改在兩個方向上通過的HTTP內容。
- target:可限制分析範圍,並建立站點地圖
- Intruder:可利用Intruder進行暴力破解攻擊,也可檢測SQL注入、XSS等漏洞。
- Repeater:用於手動測試HTTP Request的簡單功能,可以修改請求的內容,重新發送並觀察結果。
- Decoder:將已編碼的數據轉換為其規範形式,或將原始數據轉換為各種編碼和散列形式的工具。
- Comparer:在任意兩個數據項之間執行比較(一個可視化的差異)的工具。
- Extender:允許加載其他Burpsuite app,使用安全測試人員自己的或第三方代碼擴展Burp的功能。
- Sequencer:分析數據項樣本隨機性的工具。它可用於測試應用程式的會話令牌或其他重要的數據項,如反CSRF令牌、密碼重置令牌等。
專業版有另外提供以下功能
- Scanner:這是web網頁弱點掃描工具,可做自動網掃
- Burp Collaborator:可用來測試是否可訪問外部服務
refer
https://ithelp.ithome.com.tw/articles/10214839
https://t0data.gitbooks.io/burpsuite/content/chapter3.html
https://portswigger.net/support/how-to-use-burp-suite
https://portswigger.net/support/configuring-your-browser-to-work-with-burp
進階使用方式
使用條件競速同時發送請求
將請求傳送到repeater
功能,然後建立群組,把多個請求移到群組中
在重送群組中有以3種發送方式,選擇parallel
就可以實現條件競速同時請求
- Send group in sequence (single connection)
- Send group in sequence (separate connections)
- Send group in parallel
refer
https://portswigger.net/burp/documentation/desktop/tools/repeater/send-group
功能測試可參考:
lab: limit overrun race conditions
指定攔截規則
到proxy
> proxy setting
> request interception rules
,點擊add
後可增加規則
假如我只想在intercept功能中攔截www.google.com的請求,規則可以這樣設定
boolean operator: And
match type: Domain name
match relationship: Matches
match condition: www.google.com
refer
https://www.cnblogs.com/lsdb/p/9026109.html
自動修改每次請求內容
到proxy
> proxy setting
> Match and Replace
,點擊add
後可增加規則調整每次請求內容
例如,
我想每次經過proxy後請求都帶X-Custom-IP-Authorization: 127.0.0.1
,規則可設定如下
type保持request header
match維持空白
replace輸入X-Custom-IP-Authorization: 127.0.0.1
功能測試可參考:
Lab: Authentication bypass via information disclosure
自動化執行多個請求
到proxy
> proxy setting
>Sessions
,
在Session Handling Rules
區域點擊add
開啟Session handling rule editor
在對話窗中選擇scope
,並在url scope
區域選擇Include all URLs
在對話窗中選擇detail
,並在rule actions
區域點擊add
選Run a macro
在Select macro
區域中點擊add
以開啟Macro Recorder
,在這裡可以選擇你需要自動執行的各種請求,
選完後按ok
就會進入Macro Editor
,在這裡可以依需求在Configure item
增加custom parameter
來傳遞不同請求之間的值
編輯完後可以點擊Test macro
觀察自動請求是否正常運作
應用場景包含登入後掃描,可參考以下
https://portswigger.net/support/configuring-burp-suites-session-handling-rules
refer
http://hackdig.com/09/hack-141296.htm
https://xz.aliyun.com/t/3751
功能測試可參考:
Lab: 2FA bypass using a brute-force attack
Lab: Infinite money logic flaw
產生日志
到setting
> project
>logging
,
在logging區域中可以選擇哪些功能要產生日志
日志內容大致如下
======================================================
17:24:48 http://systw.net:80 [1.1.1.1]
======================================================
GET /home HTTP/1.1
Host:systw.net
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4147.135 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
ps:
這些日志可餵給sqlmap,對日志內的目標做檢測,指令為 sqlmap -l burpsuitelog.txt
網站內容尋找
專業版才有的功能
到target > site map
選擇指定網站後右鍵選 Engagement tools
> Discover content
接著就可以在指定網站內搜尋各種敏感目錄,像是backup, admin目錄等
功能測試可參考:
Lab: Source code disclosure via backup files
Lab: Inconsistent handling of exceptional input
Lab: Inconsistent security controls
註解搜尋
專業版才有的功能
到target > site map
選擇指定網站後右鍵選 Engagement tools
> Find comments
接著就可以在指定網站內搜尋註解內的各種敏感信息
功能測試可參考:
Lab: Information disclosure on debug page
自動產生CSRF HTML
專業版才有的功能
在任何請求中按右鍵選 Engagement tools
> Generate CSRF PoC
就可以產生一個csrf HTML,
如果想要有自動提交功能, 可透過option
將auto-submit script
加入,在按Regenerate
即可產生
功能測試可參考:
Lab: CSRF vulnerability with no defenses
Burp Collaborator 模組
功能 探測 external service interaction(外部服務交互攻擊)
- Burp Collaborator 伺服器通常運行在公網上。
- 它使用自己的專用域名,並且這個伺服器已註冊為該域名的權威DNS伺服器。
- 它提供一個DNS服務,可以回應任何對它的 DNS 請求。
- 它提供 HTTP/HTTPS 服務,使用一個有效的SSL憑證。
- 將來可以添加其他的服務,比如 SMTP 和 FTP。
功能測試可參考:
Lab: Blind SQL injection with out-of-band data exfiltration
Lab: Blind OS command injection with out-of-band interaction
Lab: Blind OS command injection with out-of-band data exfiltration
使用前設定
在代理的模式下,設定瀏覽器可訪問SSL
1.訪問http://burpsuite
2.在burpsuite輸出CA
burpsuite: proxy->option->proxy listeners, import/export CA certificate
CA certificate: export, certificate in der format, next-> choose export path
3.在chrome設定
chrome:設置選項->管理證書
證書:在受信任一欄位中選擇導入,將剛才保存在本地的證書導入進去即可
refer
https://blog.csdn.net/sinat_25449961/article/details/51585919
https://portswigger.net/burp/documentation/desktop/external-browser-config/certificate/ca-cert-chrome-windows