參考連接1:https://www.pentestgeek.com/what-is-burpsuite 參考連接2:https://www.pentestgeek.com/web-applications/burp-suite-tutorial-1 參考連接3:https://www.pentestgeek.com/web-applications/how-to-use-burp-suite 參考連接4:https://www.pentestgeek.com/penetration-testing/credential-harvesting-via-mitm-burp-suite-tutorialjavascript
注意1:本文中出現的非漢語部分爲不翻譯更好或者我不知道怎麼翻譯好。 注意2:我並無配置出站SOCKS代理,而是簡單地將火狐瀏覽器的代理設置爲burp suite,具體步驟參照我以前發佈的kali linux Burp Suite極簡使用教程css
什麼是Burp Suite? Burp Suite是一個基於Java的Web滲透測試框架。 它已成爲信息安全專業人員使用的行業標準工具套件。 Burp Suite可幫助您識別漏洞並驗證影響Web應用程序的攻擊媒介。 因爲其受歡迎程度,廣度以及功能的深度,他們建立了這個有用的頁面做爲Burp Suite知識和信息的集合。html
Burp Suite最簡單的形式可被認爲是攔截代理。 在瀏覽目標應用程序時,滲透測試人員能夠配置其Internet瀏覽器以經過Burp Suite代理服務器路由流量。 而後,Burp Suite經過捕獲和分析來往目標Web應用程序的每一個請求,以便對它們進行分析,從而充當(中間人)。 滲透測試人員能夠暫停,操做和重放各個HTTP請求,以便分析潛在的參數或注入點。 能夠爲手動和自動模糊測試指定注入點,以發現可能意外的應用程序行爲,崩潰和錯誤消息。java
他們強烈建議您購買The Web Application Hacker's Handbook。 本書涵蓋了Burp Suite的每一個方面都很是詳細,對於任何認真對待Web滲透測試的專業人士來講,都應該被認爲是絕對必讀的。linux
免責聲明:測試您沒有書面受權能夠進行測試的Web應用程序是非法的,會受到法律懲罰。web
根據您的參與範圍,可能須要經過出站SOCKS代理隧道傳輸您的Burp Suite流量。 這可確保測試流量來自您批准的測試環境。 我更喜歡使用一個簡單的SSH鏈接,它能夠很好地用於此目的。 經過這樣的'-D'選項SSH到您的測試服務器並在您的localhost上設置SOCKS代理。數據庫
ssh –D 9292 –l username servername
轉到Burp Suite頂部菜單最右側附近的「選項」選項卡。 從「鏈接」子選項卡,向下滾動到標記爲「SOCKS代理」的第三部分。 鍵入localhost做爲host選項,輸入9292做爲port選項。瀏覽器
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165212036-1403531247.png) </div> 安全
如今,Burp Suite配置爲經過出站SSH隧道路由流量。 配置瀏覽器的代理設置以使用Burp Suite。 導航到www.whatismyip.com來確保您的IP地址來自您的測試環境。 ProTip我使用單獨的瀏覽器進行Web應用程序測試。 這能夠確保我不會意外地將任何我的數據傳遞到個人客戶的某個站點,例如個人Gmail賬戶的密碼。服務器
我也更喜歡使用代理交換插件,例如Google Chrome的「SwitchySharp」。 這使我能夠在不一樣的會話期間輕鬆地在各類代理配置之間來回切換。 如下是我對Burp Suite的配置設置。
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165216924-1556846387.png) </div>
我接下來要作的是配置代理攔截功能。 將其設置爲僅暫停對目標站點的請求和響應。 導航到「Proxy」子選項卡下的「option」選項卡。 第二和第三標題顯示用於攔截請求和響應的可配置選項。 取消選中Burp Suite默認值並選中「URL is in target scope」。 接下來關閉攔截,由於初始應用程序演練不須要它。 從**「Intercept**」子選項卡確保切換按鈕顯示「Intercept is off」
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165222075-168507879.png) </div>
出於某種緣由,不少人都喜歡跳過這一步。我不推薦這個。在目標應用程序的初始演練過程當中,手動點擊儘量多的站點很是重要。嘗試並抵制開始在Burp Suite中分析事物的衝動。相反,花一點時間點擊每一個連接並查看每一個頁面。就像普通用戶同樣。想一想網站是如何運做的,或者它「應該」如何運做。 您應該考慮如下問題:
若是您偶然發現輸入表單,請務必執行一些手動測試用例。輸入一個勾選並在您遇到的任何搜索表單或郵政編碼字段上點擊提交。您可能會驚訝於經過奇怪的探索而不是經過自動掃描發現安全漏洞的頻率。
如今您已經很好地瞭解了目標應用程序的工做時間,從而開始分析一些GET和帖子。 可是,在使用Burp Suite進行任何測試以前,最好正肯定義目標範圍。 這將確保您不會向您無權測試的網站發送任何潛在的惡意流量。
ProTip:做者被受權測試www.pentestgeek.com。 *咱們沒有。 因此,請選擇你有測試許可的URL。
轉到「Target」選項卡,而後轉到「Site map」子選項卡。 從左側顯示窗格中選擇目標網站。 右鍵單擊並選擇「Add to scope」。 接下來,突出顯示顯示窗格中的全部其餘站點,右鍵單擊並選擇從範圍中刪除。 若是您已正確完成此操做,則您的Burp Suite範圍選項卡應以下圖所示。
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165231192-958600605.png) </div>
單擊「Target」選項卡和「Site Map」子選項卡。 向下滾動到相應的站點分支並展開全部箭頭,直到您得到目標站點的完整picture。 這應該包括您瀏覽的全部單個頁面以及任何javascript和css文件。 花點時間沉浸到全部這些中,嘗試並從手動演練中找出您沒法識別的文件。 您可使用Burp Suite以右下方顯示窗格的「Resposne」選項卡上的多種不一樣格式查看每一個請求的響應。 瀏覽每一個回覆搜索有趣的寶石。 你可能會驚訝地發現的事情包括:
您還能夠利用Burp Suite爲您作一些繁重的工做。 右鍵單擊節點,從「Engagement tools」子菜單中選擇「Search」(pro版功能)。 我最喜歡的搜索之一是掃描字符串「set-cookie」。 這可讓您知道哪些頁面足夠有趣,須要一個惟一的cookie。 Web應用程序開發人員一般使用Cookie來區分來自多個站點用戶的請求。 這確保用戶'A'不能查看屬於用戶'B'的信息。 所以,最好識別這些頁面並特別注意它們。
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165239641-1371420402.png) </div>
在進行了一些手動操做以後,讓Burp Suite沿主機地址爬行一般是有益的。 只需右鍵單擊站點地圖中目標的根分支,而後選擇「Spider this host」。
爬蟲完成後,返回您的站點地圖,看看您是否選擇了新頁面。 若是有,請在瀏覽器中以及在Burp Suite中手動查看它們,看看它們是否產生任何有趣的內容。 是否有任何新的登陸提示或輸入框? 若是您對全部發現的內容仍然不滿意,能夠嘗試使用Burp Suite的發現模塊。 右鍵單擊目標站點的根分支,而後從「Engagement tools」子菜單中選擇「Discover Content」。 在大多數網站上,這個模塊能夠而且將會運行很長時間,因此要注意它是一個好習慣。 確保在運行太長時間以前手動完成或關閉它。
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165448010-730552883.png)
</div> 特別注意的是,專業版中我沒有找到spider this host這個選項,不過在engagement tools中我找到了Analyze this target這個選項,能夠查看網絡的拓撲結構等一些簡單信息。 <div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165506805-1441984173.png)
</div>
Repeater選項卡能夠說是Burp Suite中最有用的功能之一。 我在我測試的每一個Web應用程序上使用它數百次。 它很是有價值,並且使用起來很是簡單。 只需右鍵單擊「Target」或「Proxy」選項卡中的任何請求,而後選擇「Send to Repeater」。 接下來,點擊「Repeater」標籤,而後點擊「Go」。 你會看到這樣的東西。
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165511482-845217730.png)
</div> 在這裏,您可使用burp suite來操做HTTP請求標頭的任何部分,並查看響應的樣子。 我建議在這裏花一些時間玩HTTP請求的各個方面。 特別是與請求一塊兒發送的最佳GET / POST參數。
若是您的時間有限而且有太多的請求和個別參數來進行完全的手動測試。 Burp Suite Intruder是一種很是強大的自動和半目標模糊測試方法。 您能夠將其用於HTTP請求中的一個或多個參數。 像咱們以前同樣右鍵單擊任何請求,此次選擇「Send to Intruder」。 轉到「Positions」選項卡,而後單擊「Positions」子選項卡。 你應該看到這樣的東西。
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165517361-18901897.png)
</div>
我建議使用「Clear」按鈕刪除最初選擇的內容。 默認行爲是使用「=」符號測試全部內容。 突出顯示您要模糊的參數,而後單擊「Add」。 接下來,您須要轉到「Payloads」子選項卡,告訴Burp Suite在模糊測試期間執行哪些測試用例。 一個好的開始是「Fuzzing - full」。 這將向您在「Positions」子選項卡上突出顯示的每一個參數發送一些基本測試用例。
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165521808-247231791.png) </div>
我在測試Web應用程序時最近作的事是使用Burp Suite執行自動掃描。 返回「Site map」子選項卡,右鍵單擊目標站點的根分支,而後選擇「Passively scan this host」。 這將分析您在Burp Suite會話期間生成的每一個請求和響應。 它將在「Scanner」選項卡上的「Results」子選項卡上生成漏洞顧問程序。 我喜歡先進行被動掃描,由於它不會向目標服務器發送任何流量。 或者,您能夠將Burp Suite配置爲在「Live scanning」子選項卡中自動分析請求和響應。 您也能夠執行此操做以進行主動掃描,但我不建議這樣作。 在進行主動掃描時,我喜歡使用如下設置。
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165526127-1608457505.png) </div>
上圖是原做者的圖,實際上我在community版的burp suite中scan功能是不可用的
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165533491-1300225847.png) </div> 而在專業版的burp suite中的scan功能也和原做者有所不一樣: <div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165537640-1579183571.png) </div> 內部界面以下: <div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165543458-926596977.png) </div>
完全驗證任何自動掃描工具的結果老是一個好主意。 Burp Suite在「Scanner/Results」選項卡上提供了執行此操做所需的一切。 單擊左窗格中的節點以查看與該目標關聯的已識別漏洞。 右下方窗格顯示與右上方窗格中選擇的特定漏洞相關的詳細請求/響應信息。 「Advisory」選項卡包含有關漏洞的信息,包括高級詳細信息,說明和建議的建議。 「Request」和「Response」選項卡將準確顯示Burp Suite發送給目標應用程序的內容,以便檢查漏洞以及應用程序返回的內容。 看看下面的例子。
<div align="center">![](https://img2018.cnblogs.com/blog/1506386/201905/1506386-20190511165549142-191073088.png) </div> 很遺憾因爲個人scan功能一直不可用,所以這以後的內容都難以完成,須要的朋友們能夠去原地址自行查看https://www.pentestgeek.com/web-applications/how-to-use-burp-suite。若是您能告訴我我是何種緣由不能使用scan功能,我會很是感激。