Photo on charlesproxy.com
前言
前幾週分別介紹了 Charles 選項欄中的 Proxy 與 Tools
而在這一週將會分享如何使用 Charles 來攔截封包
並分享 Charles 的工具列 (雖然與前幾週的內容一樣 但還是稍微介紹一下)
分享重點
- 通過 Charles 進行電腦端攔截封包
- 通過 Charles 進行手機端攔截封包
- 通過 Charles 進行 HTTPS 攔截封包
- 介紹 Charles 工具列
通過 Charles 進行電腦端攔截封包
Charles 會自動配置瀏覽器和工具的代理設定
換句話說打開 Charels 同時就已經是攔截封包的狀態了
但是還是需要確保以下兩點:
- 確保 Charles 處於 Start Recording 狀態
- 確保 macOS proxy 為啟用狀態 (將 Charles 設定為系統代理)
藉由選項欄中依序選擇 Proxy > Proxy Settings > macOS
啟用 MacOS proxy: Enable macOS proxy
但是如果只想要抓取 App 的封包建議可以取消勾選該選項
通過 Charles 進行手機端攔截封包
手機攔截封包的原理和上述的 PC 類似
需要將手機通過把網絡委託給 Charles 進行代理與服務端進行對話
- 手機與電腦須在同個區域網路,IP 不一定要相同,但要在同個路由器底下
- 電腦端設定內容:
a. 關閉電腦端的防火牆
b. 打開 Charles 的代理功能
藉由選項欄中依序選擇 Proxy > Proxy Settings > Proxies
預設埠是 8888
也可以根據實際情況進行修改或啟用動態連接埠
勾選 Enable transparent HTTP proxying
c. 如果只需攔截手機封包,可以取消勾選 PC 端攔截封包提到的 macOS proxy
- 手機端設定內容:
a. 藉由選項欄中依序選擇 Help > Local IP Address 來查看本機的 IP 位址
b. 設定手機端的 WIFI 代理,輸入電腦 IP 和 Charles 的代理端口
- 如果裝置是第一次連線 Charles 會出現是否允許 IP 進行連線的提示視窗
通過 Charles 進行 HTTPS 攔截封包
HTTPS 的封包攔截也分為電腦端與手機端
以下將分別介紹兩者的設定
-
電腦端
- 安裝 Charles 的 SSL 憑證:
藉由選項欄中依序選擇 Help > SSL Proxying > Install Charles Root Certificate
點擊尚未被信任的 Charles Proxy 憑證
開啟 "信任" 選單,點擊 "使用此憑證時" 的下拉式選單,並選擇 "永遠信任"
確認 Charles Proxy 憑證已被信任
- 設定 SSL 代理的內容
藉由選項欄中依序選擇 Proxy > Start Proxying Settings
勾選 Enable SSL proxying
- 完成以上步驟,就可以進行 HTTPS 封包攔截了
-
手機端
- 安裝 Charles 的 SSL 證書:
藉由選項欄中依序選擇 Help > SSL Proxying > Install Charles Root Certificate on a Mobile Device or Remote Browser
前往提示視窗中所提到的 http://chls.pro/ssl (必須先完成手機的代理)
- 安裝完成後開啟後進行設定
憑證名稱可以命名比較容易辨識的,例如 "Charles SSL"
下方認證使用的部分選擇 "VPN與應用程式"
最後點擊 "確定" 進行安裝
- 完成以上步驟,就可以進行 HTTPS 封包攔截了
介紹 Charles
工具列
Charles 上方的工具列中提供了幾個較常使用的功能
以下將依左至右一個一個的簡單介紹各自的功能
-
Clear the current Session:
清除捕獲到的所有請求
-
Start/Stop Recording:
紅色(啟用狀態):正在捕獲請求
灰色(停用狀態):停止捕獲請求
可在選項欄中依序選擇 Proxy > Start/Stop Recording
快捷鍵:command
+R
-
Start/Stop SSL Proxying:
閉鎖(啟用狀態):啟用 SSL Proxying
開鎖(停用狀態):停用 SSL Proxying
可在選項欄中依序選擇 Proxy > SSL Proxying Settings... > SSL Proxying
快捷鍵:command
+L
-
Stop/Start Throttling:
灰色(停用狀態):停止網速節流
綠色(啟用狀態):開啟網速節流
可在選項欄中依序選擇 Proxy > Throttle Settings...
快捷鍵:command
+T
-
Disable/Enable Breakpoints:
灰色(停用狀態):尚未開啟斷點
紅色(啟用狀態):已經開啟斷點
可在選項欄中依序選擇 Proxy > Breakpoint Settings...
快捷鍵:command
+K
-
Compose a new request based on the selection:
編輯修改選中的請求
-
Repeat selected requests:
重複發送選中的請求
快捷鍵:command
+shift
+R
-
Validate selected responses:
檢查驗證選中的請求
-
Purchase a License:
開啟購買使用 Charles 頁面 https://www.charlesproxy.com/buy/
-
Tools:
較常使用的功能選單
-
Settings:
較常使用的設定選單
結尾
因為小弟也是新手使用的分享文
所以介紹的內容可能有遺漏或是錯誤,還請各位大哥大姐提點
小弟將繼續往下週邁進。 ─=≡Σ((( つ•̀ω•́)つ
參考文獻
官方網站 (載點)