使用Charles對(duì)iPhone進(jìn)行Http(s)請求攔截(抓包)

首先準(zhǔn)備工具

1> Charles (下載對(duì)應(yīng)操作系統(tǒng)的安裝包進(jìn)行安裝,本文使用 macOS 進(jìn)行演示)

2> iPhone (本文使用SE,系統(tǒng)版本:iOS 10)


開始

首先,對(duì)Charles進(jìn)行配置:

菜單:Proxy -> Proxy Settings... -> 勾選 Enable transparent HTTP proxying

Proxy -> Proxy Settings


然后找到電腦的局域網(wǎng)IP地址:這里自己去找吧

接著,打開你的iPhone:設(shè)置 -> Wifi -> 連接上和電腦同一路由器的Wifi,點(diǎn)擊右邊的 i 進(jìn)入配置

配置:拉到底部,找到 <HTTP代理>, 選擇手動(dòng), 服務(wù)器填入電腦的IP地址,端口號(hào)寫 8888 然后返回會(huì)刷新Wifi連接

設(shè)置 -> Wifi -> i -> HTTP代理 手動(dòng)

此處配置完成后,Charles會(huì)彈出提示框,

大意是:有人請求連接Charles ip是xxx.xxx.xxx.xxx是否允許?

這里要注意?。。harles的默認(rèn)選項(xiàng)是Deny拒絕,所以一定不要按回車!??! 手動(dòng)選擇Allow!??!


到此,即可正常抓取iPhone的連接。

但,目前蘋果的大部分App都采用了更安全的HTTPS進(jìn)行數(shù)據(jù)交互,所以我們要抓取HTTPS還需要進(jìn)一步的配置。

繼續(xù)

回到Charles,進(jìn)行證書安裝:

Charles菜單:Help -> SSL Proxying -> Install Charles Root Certificate 點(diǎn)擊后自動(dòng)打開鑰匙串訪問,請輸入電腦開機(jī)密碼

Help -> SSL Proxying -> Install Charles Root Certificate


完成后你會(huì)看見兩個(gè)證書:

兩個(gè)證書


雙擊證書,打開證書詳情:展開信任 -> 使用此證書時(shí):修改為 始終信任,關(guān)閉證書詳情要求輸入開機(jī)密碼

信任 -> 使用此證書時(shí)


兩個(gè)證書都設(shè)置為始終信任。

接著,安裝手機(jī)端的證書:

回到Charles,菜單:Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser

Help -> SSL Proxying -> Install Charles Root Certificate on a Mobile Device or Remote Browser


點(diǎn)擊后會(huì)彈出對(duì)話框,大意是:配置你的設(shè)備來使用Charles,證書下載地址:chls.pro/ssl

配置手機(jī)端證書


打開手機(jī)Safari,訪問下載地址:chls.pro/ssl? (如果我們顯示的不同,則以提示中的地址為準(zhǔn))

正常情況下訪問此地址會(huì)請求安裝一個(gè)配置文件。若無請求請檢查Wifi是否設(shè)置了 HTTP代理 (參考配置圖:設(shè)置 -> Wifi -> i -> HTTP代理 手動(dòng))。

手機(jī)端安裝證書1


點(diǎn)擊安裝:

手機(jī)端安裝證書2


網(wǎng)上很多教程到這就結(jié)束了,但返回Charles會(huì)發(fā)現(xiàn)還是無法正常抓取HTTPS的請求。

其實(shí)還有一個(gè)設(shè)置,信任證書:

打開iPhone設(shè)置:通用 -> 關(guān)于手機(jī) -> 拉到最底部 證書信任設(shè)置 -> 勾選剛剛安裝的證書

信任證書


好了,回到Charles進(jìn)行最后的收尾設(shè)置:

菜單:Proxy -> SSL Proxying Settings...

Proxy -> SSL Proxying Settings...


勾選:Enable SSL Proxying,點(diǎn)擊 Add 添加規(guī)則

域名:配置完上述所有內(nèi)容后,你會(huì)在Charles中看到很多請求,都是以域名為標(biāo)題的


域名:配置完上述所有內(nèi)容后,你會(huì)在Charles中看到很多請求,都是以域名為標(biāo)題。

端口:恒定為443

若不需要指定HTTPS連接(即抓取所有HTTPS連接),域名填寫 * 即可。

配置 SSL Proxying


TIPS:

> WIFI代理,請?jiān)诓恍枰褂玫臅r(shí)候關(guān)閉,否則可能導(dǎo)致手機(jī)無法正常聯(lián)網(wǎng)。

> 若Charles界面一片空白

一片空白


點(diǎn)擊菜單:File -> New Session

File -> New Session


然后就有了

有了


測試數(shù)據(jù):獲取QQ中的QQ天氣

QQ天氣

完。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Charles簡介: Charles是一款抓包神器,因?yàn)樗腔? java 開發(fā)的,所以跨平臺(tái),Mac、Lin...
    加菲貓的日常閱讀 5,444評(píng)論 1 3
  • 簡書上的文章已經(jīng)不再維護(hù),有興趣閱讀其他文章,或一起交流的朋友,請移步 我的博客:punmy.cn 原文 本篇博客...
    胖綿羊閱讀 10,590評(píng)論 7 35
  • 抓包分析數(shù)據(jù)在移動(dòng)開發(fā)中十分重要,可以幫助我們更快的了解數(shù)據(jù)構(gòu)成,提高開發(fā)效率。但是在蘋果要求上線的App必須使用...
    梧雨北辰閱讀 15,180評(píng)論 21 35
  • 簡介 Charles是目前最強(qiáng)大的http調(diào)試工具之一,在網(wǎng)絡(luò)開發(fā)中使用它作為分析工具,可以很大程度上提高我們的開...
    jamalping閱讀 28,691評(píng)論 1 11
  • 《把時(shí)間當(dāng)作朋友》5(作業(yè)3) 一、體驗(yàn) 所謂“體驗(yàn)”,通俗地說就是來自五官的感覺——視覺、聽覺、嗅覺、味覺、觸覺...
    SHIGX閱讀 575評(píng)論 1 0

友情鏈接更多精彩內(nèi)容