Charles4.2.8抓包(http+https)


Charles 和 Fiddler 一樣都是http抓包工具。

之前用 Fiddler 抓個別 ios 手機 https 報文時總卡在哪里返不回任何數據,后來懷疑是 Fiddler 問題,就考慮使用 Charles 。最后發現是我使用問題 錯怪了Fiddler。

http抓包

http抓包配置很簡單就是使用 Charles 作為代理服務器。

1、從官網下載 charles,根據你的系統選擇合適版本即可

  https://www.charlesproxy.com/download/

2、安裝 charles, windows 一直 下一步 即可

3、代理配置 proxy-》proxy settings

 

4、按如下配置

a)端口號默認8888也可以改

b)勾選 Enable transparent HTTP proxying

 

5、查看ip地址

可以在cmd中輸入 ipconfig 或者help->Local IP Address查看ip

 

 6、手機上配置

配置好ip地址和端口此時所有數據報文即可抓到

7、手機上設置代理后,Charles 會彈出鏈接確認提示框選擇 允許(Allow)

8、到此就可以抓到包了,但https能夠抓到但內容都是亂碼(密文)

 

https抓包

https 與 http  抓包沒有什么區別,區別在於 https 使用的 ssl 加密算法對數據進行了加密,也就是上圖抓到的都是密文無法看到明文內容。所以咱們要做的只是安裝證書,讓手機使用咱們的證書進行通信,這樣自然就可以看到明文了。原理如下圖:

 

 言歸正傳開始證書配置

1、安裝證書

也是簡單確定即可。這個安裝的是移動證書,也就是給app等客戶端使用的證書。如果你要抓本地瀏覽器 https 內容,點上邊 “Install Charles Root Certificate”

  本地證書安裝,如果不需要抓本地包可以跳過。對於本地 https 如果不需要攔截修改等,瀏覽器F12即可查看

1.1 選擇安裝證書

 1.2 選擇本地計算機

 1.3 選擇證書存放位置,可以自定義一個更高的位置

 1.4 選擇存放到根證書中,然后 下一步 完成,至此本地證書安裝完成

 2、打開手機在瀏覽器輸入 chls.pro/ssl,剛才安裝移動證書時也會顯示地址(此文只有 ios 手機配置,安卓手機配置雷同 參見:https://www.cnblogs.com/rslai/p/7794940.html

 3、訪問后提示正在下載配置描述文件,點擊“允許”即可

4、在 通用->描述文件與設備管理 中 安裝 剛剛下載的 Charless 證書

5、charles中配置ssl

 

6、勾選允許ssl代理,並添加那些地址使用,點擊add添加 

7、host 和 port中輸入 *,代表所有服務器所有端口都使用ssl代理

8、至此配置完成,部分 ios 手機就可以看到明文的 https 報文了。

為什么說部分呢?也就是開頭說的 Fiddler 無法抓部分 ios 設備的 https 的報文。原因是高版本的 ios 還需要再啟用根證書才行

根證書啟用完全信任

 1、設置->通用->關於本機->證書信任設置,找到 charles 啟用即可,Fiddler 的話找到證書啟用也就可以了。

2、此時 https 即可顯示明文了

悲劇的vpn

之前一直在pc使用,一切正常。后來換用mac,按照之前方法安裝后只要一抓https就卡死,之后提示unknown,搗鼓了很久無果。突然又一次莫名的好了,之后反復實驗發現只要開着公司vpn就抓不到包。問題終於找到了原來是公司vpn檢測使用的是偽造的證書給攔截了。

破解charles

 最后的一個問題,此時 charles 只能使用30分鍾,每隔30分鍾需要重啟一次。要么買一個,要么破解。

 參考:https://blog.csdn.net/qq_25821067/article/details/79848589

 

 

 

 

參考文獻:

  https://jingyan.baidu.com/article/0aa2237561af1088cc0d64c9.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM