Charles是mac上的抓包神器革骨,對于android和iOS的抓包分析很強(qiáng)大,真機(jī)和虛擬機(jī)都可以抓到析恋。他是用Java開發(fā)的良哲,所以跨平臺,不僅可以在Mac上使用助隧,Linux以及Window下都是可以使用的臂外,當(dāng)然需要安裝JDK,才能運(yùn)行,同時(shí)還有一個(gè)問題就是他是收費(fèi)的喇颁。
下載
先到它的官網(wǎng)可下載到最新版本漏健,這個(gè)下載有點(diǎn)慢,我已經(jīng)將它放到網(wǎng)盤中了:http://pan.baidu.com/s/1kT6fFDl-
破解
破解很簡單就是替換一個(gè)文件就可以了橘霎,破解文件:http://pan.baidu.com/s/1c0odimO
然后找到應(yīng)用程序蔫浆,右鍵show package contents(顯示包內(nèi)容)
然后點(diǎn)擊Contents->Resources->Java:
然后將我們下載下來的charles.jar替換這里的charles.jar就可以了。然后再次打開Charles姐叁,就不會太提示30天使用期限了瓦盛,破解搞定
另一種方式:用注冊碼破解
Help-Register to
注冊碼:
Registered Name: http://ninjasaga.cheat.center
Licence Key: 18e69f6d5bc820d4d3 -
抓包
下面來看一下如何進(jìn)行抓包
- HTTP抓包
- 打開Charles程序
- 查看Mac電腦的IP地址,系統(tǒng)偏好設(shè)置->網(wǎng)絡(luò)就可以查看到了外潜,比如我的ip地址是:192.168.1.7
-
打開iOS設(shè)置原环,進(jìn)入當(dāng)前wifi連接(Mac在一個(gè)局域網(wǎng)內(nèi)),設(shè)置HTTP代理Group处窥,將服務(wù)器填為上一步中獲得的IP嘱吗,即192.168.1.7,端口填8888:
- iOS設(shè)備打開你要抓包的app進(jìn)行網(wǎng)絡(luò)操作5滔驾、Charles彈出確認(rèn)框谒麦,點(diǎn)擊Allow按鈕即可
-
第二、HTTPS抓包
需要下載Charles證書哆致,解壓后導(dǎo)入到iOS設(shè)備中,這里我也是下載好了:
http://pan.baidu.com/s/1sjJiZYt绕德,我們在iOS設(shè)備中使用safari打開這個(gè)鏈接:
再次點(diǎn)擊安裝,證書就安裝成功了
然后在Charles的工具欄上點(diǎn)擊Proxy按鈕摊阀,選擇Proxy Settings…切換到SSL選項(xiàng)卡耻蛇,選中Enable SSL Proxying,別急胞此,選完先別關(guān)掉臣咖,還有下一步這一步跟Fiddler不同,F(xiàn)iddler安裝證書后就可以抓HTTPS網(wǎng)址的包了豌鹤,Charles則麻煩一些亡哄,需要在上一步的SSL選項(xiàng)卡的Locations表單填寫要抓包的域名和端口,點(diǎn)擊Add按鈕布疙,在彈出的表單中Host填寫域名蚊惯,比如填api.instagram.com,Port填443
這時(shí)候我們打開網(wǎng)易app:
就可以看到數(shù)據(jù)了灵临,至此抓包工作就搞定了截型。注意:當(dāng)我們不抓包的時(shí)候,會將Charles關(guān)閉儒溉,這時(shí)候iOS是訪問不到網(wǎng)絡(luò)的宦焦,因?yàn)樵O(shè)置了代理(就是Charles),這時(shí)候需要將iOS中的代理關(guān)閉,這個(gè)是抓包時(shí)經(jīng)常犯的錯波闹。
附上一篇更加詳細(xì)的教程 iOS開發(fā)工具-網(wǎng)絡(luò)封包分析工具Charles --- By 唐巧