iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 14
0
Security

看完眼眶濕濕的App開發者慘烈對抗險惡資安環境血與淚的控訴!系列 第 14

Day 014. 使用 Charles - 攔截手機流量

今天來介紹如何用 Charles 攔截手機流量,由於不同使用方式

在手機上攔截HTTPS ,需要在手機上安裝憑證,iOS 上要授權憑證步驟就比較繁瑣

  • 手機跟Charles (電腦)使用相同WIFI
  • 手機使用電腦分享出來的網路 (MAC 共享網路)

手機跟 Charles (電腦)使用相同 WIFE WIFI

電腦與手機同網段情況(使用同個 Gatewaye)

截圖 2020-09-29 下午5.15.51

Mac 查詢 IP

image-20200928172437164

將手機網路設定使用代理伺服器

步驟1 : IOS 設定 ➜ W-Fi ➜ 選擇連線的SID名稱(我連的是 Lamb-Mei-AP)➜設定代理伺服器

image-20200929172127650

步驟2:設為手動,伺服器 (填上剛剛查詢電腦的IP),Port 輸入 8888

8888 為 Charles 預設port

image-20200929172406287

授權信任連線

由於Charles 有安全信任機制,必須授權連線,才允許使用,所以在這點擊『Allow』允許連線

截圖 2020-09-29 下午5.28.52

這時候就可以看到 Charles 可以攔截到手機使用網路的記錄

使用電腦共享網路

MAC 有個很好用的功能『Internet 共享』,可以直接分享網路給其他裝置使用

截圖 2020-09-29 下午9.39.40

MAC開啟 Internet 共享

系統偏好設定 ➜ 共享 ➜ 勾選『 Internet 共享 』

image-20200929213624449

手機連線設定

步驟1:iOS 設定 ➜ W-Fi ➜ 選擇連線的SID名稱 ( 記憶路由器IP 通常是 192.168.2.1 ) ➜ 設定代理伺服器

步驟2:設為手動,伺服器 (填上剛剛查詢路由器IP),Port 輸入 8888

image-20200929214526537

設定完,手機瀏覽的封包,即可被 Charles 攔截。

手機攔截 HTTPS

瀏覽HTTPS 的時候會發現是亂碼,明明電腦已經裝了 CA 憑證了

原因是客戶端(手機)內必須信任 Charles 憑證,才能解密

手機安裝 Charles 憑證

HelpSSL ProxyingInstall Charles Root Certificate on a Mobile Device

image-20200929215558554

會顯示該如何在手機上安裝憑證

截圖 2020-09-29 下午9.58.01

網路設定好後,可以使用手機瀏覽器瀏覽 http://chls.pro/ssl

如前面設定正確會跳出下載描述檔

image-20200929220945788

image-20200929221002957

設定一般描述檔與裝置管理

截圖 2020-09-29 下午10.12.19

點擊『安裝』安裝後狀態會變成已驗證

信任憑證

iOS10 以上手機版本,基於安全性更嚴謹的設計,需要在設定信任憑證

設定一般關於本機憑證信任設定

image-20200929221624406

都設定完後,就可以攔截到 https 的資料

小結

雖然簡簡單單幾個步驟,但是之前真的是很難搞清楚要用什麼方式連線,要怎麼設定才能攔截到

尤其經歷憑證信任一直改來改去,Android 在這裡就簡單很多,直接點ok 或者,從檔案就可以新增

在這裡撞了很多牆壁,也期望這些對大家友幫助


上一篇
Day 013. 抓包軟體 - Charles Web Debugging Proxy
下一篇
Day 015. 抓包神器 Burp Suite
系列文
看完眼眶濕濕的App開發者慘烈對抗險惡資安環境血與淚的控訴!31

尚未有邦友留言

立即登入留言