Charles抓包https
Charles抓包https
灰灰是只小賤狗 2018.05.08 10:46 字?jǐn)?shù) 762 閱讀 7800評(píng)論 3喜歡 3抓取HTTPS請(qǐng)求包,對(duì)數(shù)據(jù)進(jìn)行排查檢驗(yàn)
1.安裝Charles
2.電腦安裝Charles證書
?
雙擊還是信任下吧3.手機(jī)安裝證書
4.手機(jī)網(wǎng)頁輸入網(wǎng)址 下載證書并信任
?
安裝到手機(jī)上注意:在iOS 10.3之前,當(dāng)你將安裝一個(gè)自定義證書,iOS會(huì)默認(rèn)信任,不需要進(jìn)一步的設(shè)置。而iOS 10.3之后,安裝新的自定義證書默認(rèn)是不受信任的。如果要信任已安裝的自定義證書,需要手動(dòng)打開開關(guān)以信任證書。
iOS11下需要手動(dòng)信任已下載好的證書,方法如下:
設(shè)置->通用->關(guān)于本機(jī)->證書信任設(shè)置-> 找到charles proxy custom root certificate然后信任該證書即可.
iOS11下手動(dòng)信任證書
5.開始抓包
Charles設(shè)置Proxy
Proxy -> SSL Proxying Settings...,如下圖所示:
選擇Proxy | Recording Settings,彈出Recording Settings設(shè)置選項(xiàng)卡,勾選include
?
只展示你想看見的域名結(jié)果6.原理簡析
如果是HTTP請(qǐng)求,因?yàn)閿?shù)據(jù)本身并沒加密所以請(qǐng)求內(nèi)容和返回結(jié)果是直接展現(xiàn)出來的。
但HTTPS是對(duì)數(shù)據(jù)進(jìn)行了加密處理的,如果不做任何應(yīng)對(duì)是無法獲取其中內(nèi)容。所以Charles做的就是對(duì)客戶端把自己偽裝成服務(wù)器,對(duì)服務(wù)器把自己偽裝成客戶端:
當(dāng)然,如果用戶不選擇信任安裝Charles的CA證書,Charles也無法獲取請(qǐng)求內(nèi)容。還有一種,如果客戶端內(nèi)置了本身的CA證書,這時(shí)如果Charles把自己的證書發(fā)送給客戶端,客戶端會(huì)發(fā)現(xiàn)與程序內(nèi)的證書不一致,不予通過,此時(shí)Charles也是無法獲取信息的。
參考
mac環(huán)境下使用Charles抓包Https請(qǐng)求
淺談Charles抓包
Charles 抓包IOS中https亂碼解決
轉(zhuǎn)載于:https://www.cnblogs.com/ldq2016/p/9802906.html
總結(jié)
以上是生活随笔為你收集整理的Charles抓包https的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 新版谷歌浏览器设置flash插件不提示步
- 下一篇: python模块引用