之前發過一篇文章講解了Charles抓包工具的基本使用(有需要的小夥伴可以去看上一篇文章), 講的資料包主要是http協議,大家可以看到資料包並直接顯示具體詳細的內容:
但是如果抓到的是https的報文,是沒有辦法直接顯示的,你將看到的是亂碼:
那怎麼抓取https的資料包文並正常顯示報文內容資訊呢?
第一步:安裝證書
如果需要抓取並分析 Https 協議的資料包文,需要先安裝 Charles 的 CA 證書。具體步驟如下。
1、點選 Charles 的頂部選單,選擇 “Help” –> “SSL Proxying” –> “Install Charles Root Certificate”,然後輸入系統的帳號密碼,即可在 KeyChain 看到新增好的證書。如下圖所示:
第二步:安裝瀏覽器證書
根據提示資訊,需要先下載證書,再安裝到瀏覽器中。所以,在瀏覽器位址列輸入“chls.pro/ssl”地址去下載證書,得到的證書如下:
然後在瀏覽器中安裝這個下載好的證書,此處以chrome為例:
第三步:開啟SSL 代理
點選【Proxy】—> 【SSL proxying Settings】可以開啟如下對話方塊:
勾選“Enable SSL Proxying”,並在Include區域點選“Add”新建地址,在Host和Port區域填上“*”,表示匹配所有,那麼就可以抓取所有的https資料包文。
抓取https報文
現在,所有配置都完成了,可以開始抓https報文了!如下圖所示,https資料包抓取後可以直接解密了,能夠看到具體報文內容: