https://www.freebuf.com/column/155797.html
https://www.freebuf.com/column/156238.html
burp簡介
Burp Suite是Web應用程序測試的最佳工具之一,可以對請求的數據包進行攔截和修改,掃描常見的web安全漏洞,暴力破解登錄表單、遍歷數據等等。
Burp所需環境
Burp Suite是Java編寫的,所以在使用前需要安裝Jdk環境,這裏不進行具體講解如何安裝jdk,安裝完成後將jdk相關目錄添加到環境變量中。
主要功能
首先,我們看下burp都有哪些功能,並且都是用來做什麼的。
- proxy – Burp Suite設置代理,抓取數據包。
- Spider – Burp Suite的蜘蛛功能是用來抓取Web應用程序的鏈接和內容等。
- Scanner – 是用來掃描Web應用程序漏洞的,可以發現常見的web安全漏洞,但會存在誤報的可能。
- Intruder – 可進行Web應用程序模糊測試,進行暴力猜解等。
- Repeater – 對數據包進行重放,可分析服務器返回情況,判斷修改參數的影響。
- Sequencer – 用來檢查Web應用程序提供的會話令牌的隨機性.並執行各種測試。
- Decoder – 對數據進行加解密操作,包含url、html、base64等等。
- Comparer – 此功能用來執行任意的兩個請求,響應或任何其它形式的數據之間的比較。
- extender – 加載Burp Suite的擴展,使用你自己的或第三方代碼來擴展Burp Suite的功能。
- options – 設置burp,字體,編碼等等
- alerts – 是用來存放報錯信息的,用來解決錯誤
功能介紹
本次我們主要學習如何使用burp抓取數據包的proxy功能。
首先,打開burp,並進入到proxy功能,可以看到options
、Histroy
、intercept
、websockets history
標籤。Intercept模塊
- Forward – 將抓取或修改後的數據包發送到服務器端
- Drop – 丟棄抓取到的數據包,不與服務器端進行交互該數據包
- Interceptionis on/off – 是否攔截數據包,on表示攔截,off表示放行
- Action – 可對該數據包做哪些操作,同樣數據包處右擊和action效果相同
- Commentfield – 爲請求包或響應包設置註釋,並可選擇相應的顏色,更容易在history中查找到
- ? – 查看幫助信息。可通過幫助信息查看功能的使用
同樣,burp有四種消息類型顯示數據包
Raw – 以純文本形式顯示數據包
Params – 包含參數URL 查詢字符串、cookies的請求,並可雙機該請求進行修改
Headers – 以名稱、值的形式顯示獲取的數據包。
Hex – 可編輯數據包的二進制數據,在進行00截斷時非常好用。
同樣,burp具有搜索功能,可以搜索當前數據包中你想要的內容,並且會顯示符合內容的個數以及位置
histroy模塊
Histroy – 記錄設置代理後瀏覽器訪問的頁面數據包,詳細記錄數據包的host、method、url、status、extension等等
當我們選中某個請求時,可以看他的請求包信息,同樣也可查看他的響應包信息
請求數據包
同樣,可以雙機某個數據包即可打開詳情,通過Previous/next
功能切換到其他數據包,同時,也可將該數據包發送到其他功能模塊當中,方便我們的使用
如果認爲某個數據包比較重要,可將當前數據包設置某個醒目的顏色以提示他的重要性
該模塊下存在filter
功能,有許多模塊存在該功能,可使用該功能將認爲無用的數據包隱藏,把需要的數據包顯示到當前狀態下。
點擊filter功能會出現該功能的配置選項。
可以按照請求類型,請求的狀態,mime類型、搜索關鍵字,文件後綴、監聽的端口等等,按個人需求去縮小需要的範圍
options模塊
options – 該選項主要用於設置代理監聽、請求和響應,攔截反應等等。
Proxy Listeners – 設置監聽
可以添加回環地址、所有的接口、具體的某個ip的地址
Intercept Client Requests – 配置攔截規則,設置攔截數據包的匹配規則。
規則可以是域名、IP、協議、HTTP方法、URL等等
Intercept Server Responses – 配置攔截規則,設置攔截的匹配規則,基於服務器端的返回情況進行匹配
還有很多功能介紹proxy,我們會在以後的文章中結合具體的實例去講解,這裏只進行常用的某些功能進行介紹。
實戰篇
burp代理設置
首先我們需要設置burp代理,這裏我們將端口設置爲8888
同時需要選中該複選框
瀏覽器代理設置
方法一
這裏以chrome爲例,選擇“設置”
找到“代理設置”
選擇“連接”中的“局域網”
設置代理地址和端口,要和burp的地址端口相同
訪問瀏覽器可抓取到數據包
方法二
使用瀏覽器擴展代理工具,避免每次到設置中查找該工具。
選擇設置的代理
抓取數據包
同樣,可以在history中查看某些數據,當訪問的數據包較多時,但我們只需要某些特徵時,可進行篩選
篩選數據包
看到既有php,也有js的數據,我們可能只想看php的,可以在filter中選擇隱藏某些後綴
同樣,可以設置只顯示php、asp、jsp等後綴
也可以選擇某些特定狀態的數據包,例如:status爲200等等