今天閑來無事,準(zhǔn)備修改一下最近常用的某搶購軟件的部分功能,無奈最后還是以失敗告終,原因是它的某個(gè)重要參數(shù)搞不出來什么規(guī)則,敗北而歸,不過在這個(gè)過程中熟悉了charles這款使用的抓包工具的使用.
在此參考了唐巧的技術(shù)博客Charles 從入門到精通?
安裝破解這些都省略了,百度一大堆,這里主要說一下獲取手機(jī)網(wǎng)絡(luò)請(qǐng)求的方法.
1.首先選擇菜單中的 “Proxy” -> “Mac OS X Proxy” 來將 Charles 設(shè)置成系統(tǒng)代理菇用。
2.設(shè)置端口(注意手機(jī)和電腦必須在統(tǒng)一網(wǎng)絡(luò)或者wifi下),在 Charles 的菜單欄上選擇 “Proxy”->”Proxy Settings”,填入代理端口 8888(當(dāng)然6666也可以,只要手機(jī)電腦一致就行)究孕,并且勾上 “Enable transparent HTTP proxying” 就完成了在 Charles 上的設(shè)置厦幅。
3,手機(jī)設(shè)置,通過Charles 的頂部菜單的 “Help”->”Local IP Address”磕诊,即可在彈出的對(duì)話框中看到 IP 地址
4,在 iPhone 的 “ 設(shè)置 “->” 無線局域網(wǎng) “ 中,可以看到當(dāng)前連接的 wifi 名喷面,通過點(diǎn)擊右邊的詳情鍵扣蜻,可以看到當(dāng)前連接上的wifi 的詳細(xì)信息,包括 IP 地址尺棋,子網(wǎng)掩碼等信息盘寡。在其最底部有「HTTP 代理」一項(xiàng)蛹锰,我們將其切換成手動(dòng),然后填上 Charles運(yùn)行所在的電腦的 IP凉当,以及端口號(hào) 8888匣缘,如下圖所示:
5,一切設(shè)置完畢后,普通的HTTP請(qǐng)求都可以抓到數(shù)據(jù)了.但是由于HTTPS的出現(xiàn),導(dǎo)致不能正常抓取數(shù)據(jù),下面介紹一下HTTPS抓包方法
截取移動(dòng)設(shè)備中的 Https 通訊信息
1.首先在mac上安裝證書, 選擇 “Help” -> “SSL Proxying” -> “Install Charles Root Certificate”蛇尚,
2,信任證書(很重要),不然無法正常使用抓包HTTPS
3,手機(jī)安裝證書,選擇 “Help” -> “SSL Proxying” -> “Install Charles Root Certificate on a Mobile Device or Remote Browser”啼肩,然后就可以看到 Charles 彈出的簡(jiǎn)單的安裝教程,其實(shí)就是一個(gè)連接,打開后提示安裝證書,安裝它.
4,到此為止你以為結(jié)束了,其實(shí)還有最關(guān)鍵的一步!自從iOS10.3出現(xiàn)以后證書安裝后及時(shí)信任了也不算完全信任.必須在設(shè)置->通用->關(guān)于本機(jī)->證書信任設(shè)置->打開對(duì)證書的完全信任.
5,至此,使用Charles獲取手機(jī)APP網(wǎng)絡(luò)請(qǐng)求已經(jīng)可以正常使用了.若有不對(duì),請(qǐng)大牛不理賜教.