1. 程式人生 > >Burp Suite 代理機制,代理 PC、手機配置

Burp Suite 代理機制,代理 PC、手機配置

時隔多年,重新拿起 Burp Suite。對以前使用 Burp 還有一些印象,但是具體操作起來,還是有一些出入。折騰了一陣子,終於在手機端和 PC 端都代理成功了。這一次直接記錄下來,避免再折騰。

代理機制

這是一篇面向對於使用 Burp Suite 有一丁點了解的讀者的總結,所以有些東西會根據我自己覺得是否關鍵作一些解釋,儘量講得很清楚。

代理機制不分什麼端的裝置,都是一樣的。簡單地講就是,A 把本來要傳送給 B 的流量先發送給 C,C 接收後,再發送給 B(或者做其它操作,包括不操作)。這個過程中,C 就是代理,它就是作了 A 與 B 的“代理”,當 A 傳送流量給 B 時,C 就是 A 的“代理髮送者”,同時是 B 的“代理接收者”,B 傳送給 A 時同理。而 Burp Suite 就是實現這麼一種代理機制的一個軟體工具,它就是 C。

你會發現上邊涉及到的是 A、B 和 C 一共三臺機器,這跟咱們在使用 Burp 的情況不一樣啊,我們不就是隻有一臺電腦+訪問的網站的伺服器那臺機器嗎?

確實是這樣,但是你思考一下,當你不是用電腦訪問網站,而是使用手機的情況呢?其實也就是代理手機流量。這種情況下是不是涉及到了三臺機器了?手機+訪問的網站伺服器+執行 Burp 作代理的電腦

這裡的原因是在第一種情況下,咱們直接就把電腦既當作上網用的機器,又讓它執行 Burp 直接作代理機器了,畢竟 Burp 實現代理功能只是一個軟體層面的東西,而用一臺機器專門只作代理而不上網的話只不過是把專一性做到極致而已,你完全可以找兩臺電腦,一臺只執行 Burp 作代理機,一臺只用來上網。

這其實只是個很簡單的東西,但是明白了這個對於代理機制的理解是有不小幫助的。

好了,說說這個代理具體是怎麼實現的。

現在假設我們使用 A 上網訪問百度伺服器 B,C 開了 Burp 在這中間代理流量。A 的網絡卡地址是 192.168.1.101,代理 C 與 A 處於同一個區域網,具體地址不重要,B 的地址也不重要。

那麼我們就需要把 C 上 Burp 的代理地址設定為 192.168.1.101,也就是 A 的地址,埠比較隨意,一般就用 8080。這裡的意思是說 C 將會監聽 192.168.1.101:8080 上的流量,進行代理操作。

注:關於埠的知識你也需要去了解一下,別隨便設定然後又出其它問題,比如佔用了其它服務的埠、埠號超出限制等。

另一邊,A 要配合 C 才能完成這樣一個代理機制。在 A 機器需要讓系統/瀏覽器知道“我的流量要先發到 C 的 Burp 上”,操作就是在系統/瀏覽器代理設定中將代理伺服器和埠設定為 192.168.1.101:8080。

A 與 C 一個被代理,一個代理,都要相互商量好然後各自作好自己的代理配置,一個願打一個願挨。不然的話就危險,變成中間人攻擊了。

說到危險,在代理的過程中會遇到一個關於證書的問題。

在你做好上邊的代理配置之後,其實就可以代理 HTTP 流量了(其實還有其它非 HTTPS 的流量)。但是因為現在大多數網站都基於 HTTPS 協議,它比較安全,像上邊那樣簡簡單單的代理是被禁止的,因為它發現你的訪問流量被代理了,要先確認一下這個代理是可信的,不存在人為攻擊。

於是網站會要求代理出示證書,而這個代理就是 Burp Suite 本身,那麼就要在系統/瀏覽器中安裝 Burp Suite 的證書。

在上邊代理設定完成後,直接訪問 http://burp 或者 192.168.1.101:8080 就可以下載證書。具體安裝參考一下前邊的文章:【burpSuite】瀏覽器設定代理後無法訪問https

Burp 代理 PC 流量

用的是 Win 10。

瀏覽器之前用的是 Firefox,現在用 Chrome。

因為 Chrome 使用的代理配置是與 Win 系統是一樣的,也與 IE 一樣,而這兩者不知道為什麼總是會存在一定的設定偏差(真的不知道為什麼。。。有時候設定了這邊,那邊沒生效,設定了那邊,這邊又沒生效)。所以總是會帶來一些困擾,再加上有些人推薦用 Chrome 的擴充套件 Switch-Proxy 來快速切換代理地址,這樣把問題搞得更加複雜了。

因為最近升級到最新版本 Chrome,發現它的代理設定變得更加明瞭了,現在它可以直接跳轉到系統的 Internet 設定程式(就像 IE 一樣):

在這裡插入圖片描述

這樣的話就不麻煩了,直接進入設定。
在這裡插入圖片描述

代理設定是在上邊紅框中的區域網設定裡進行的,在下邊紅框處填寫對應代理地址與埠:

在這裡插入圖片描述
現在配置就是這麼簡單了,那麼就建議不要再去使用那個 Chrome 代理擴充套件了,沒必要,只會把邏輯搞複雜。

安裝證書

代理配置好之後訪問 http://burp 下載證書,然後雙擊開啟證書進行安裝,要點只有一個,將它安裝到“受信任的根證書頒發機構”這個路徑下:
在這裡插入圖片描述

Burp 代理手機流量

手機我用的是小米 Mix 2,連線到與 Burp 所處機器連線的同一個 Wi-Fi,然後系統 WLAN 設定中,找到連線的 Wi-Fi 右邊那個更多設定(紫色圓圈那裡)。

在這裡插入圖片描述

設定代理為手動,並填上相應地址、埠:

在這裡插入圖片描述

**【要點】**本來這樣操作之後就應該是代理成功了,開啟瀏覽器輸入 http://burp 準備下載證書的時候發現無法訪問。折騰了很久還是不明白問題是什麼,可能是小區的 WLAN 進行了相應設定吧。

最後自己下載一個 Wi-Fi 共享精靈,強行開了一個子網,讓 Burp 與手機處在同一個 Wi-Fi 下,問題解決了。這裡的關鍵是我自己強行開一個子網的話,完全能夠保證子網下的機器是處在一個網段的,而且流量能夠直接互通。

證書安裝

手機端的證書安裝思路其實跟電腦一樣,訪問 http://burp 後下載證書,然後安裝。下載下來的證書是 .der 格式,要先將它改成 .crt,不然小米系統不認它。

具體安裝過程:

1、更多設定

在這裡插入圖片描述

2、系統安全

在這裡插入圖片描述

3、加密與憑據

在這裡插入圖片描述

4、從儲存裝置安裝

在這裡插入圖片描述

全文完。

【宣告】轉載必須註明來源,就算擷取其中的幾句話也要註明。這不是請求。