今天就來看一下Mac上如何進行抓包,之前有一篇文章介紹了使用Fidder進行抓包
http://blog.csdn.net/jiangwei0910410003/article/details/19806999
不過可惜的是,Fidder使用C#開發的,所以就不能在Mac上使用了,不過還有另外一個抓包神器,就是Charles,它是Java開發的,所以跨平臺,不僅可以在Mac上使用,Linux以及Window下都是可以使用的,當然需要安裝JDK,才能運行,同時還有一個問題就是他是收費的。
一、下載
先到它的官網http://www.charlesproxy.com/可下載到最新版本,這個下載有點慢,我已經將它放到網盤中了:http://pan.baidu.com/s/1gdu0S4V
這個是3.9.3版本的,下載下來,安裝就不多說了,很easy....打開界面:
二、破解
不過這個收費的,那麼接下來就開始破解吧,其實破解很簡單就是替換一個文件就可以了,可以在網上搜:Charles3.9.3破解的jar文件
這裏我也是下載好了:http://pan.baidu.com/s/1i3gjEfj
下載下來之後我們就可以進行破解吧:
打開應用程序,選擇Charles,選擇顯示包內容:
然後點擊Contents->Resources->Java:
然後將我們下載下來的charles.jar替換這裏的charles.jar就可以了。然後再次打開Charles,就不會太提示30天使用期限了,破解搞定
三、抓包
下面來看一下如何進行抓包
第一、HTTP抓包
1、打開Charles程序
2、查看Mac電腦的IP地址,系統偏好設置->網絡就可以查看到了,比如我的ip地址是:192.168.1.7
3、打開iOS設置,進入當前wifi連接(Mac在一個局域網內),設置HTTP代理Group,將服務器填爲上一步中獲得的IP,即192.168.1.7,端口填8888:
4、iOS設備打開你要抓包的app進行網絡操作
5、Charles彈出確認框,點擊Allow按鈕即可
第二、HTTPS抓包
需要下載Charles證書http://www.charlesproxy.com/ssl.zip,解壓後導入到iOS設備中,這裏我也是下載好了:
http://pan.baidu.com/s/1sjJiZYt,我們在iOS設備中使用safari打開這個鏈接:
點擊打開: 點擊安裝:
再次點擊安裝,證書就安裝成功了
然後在Charles的工具欄上點擊Proxy按鈕,選擇Proxy Settings…
切換到SSL選項卡,選中Enable SSL Proxying,別急,選完先別關掉,還有下一步
這一步跟Fiddler不同,Fiddler安裝證書後就可以抓HTTPS網址的包了,Charles則麻煩一些,需要在上一步的SSL選項卡的Locations表單填寫要抓包的域名和端口,點擊Add按鈕,在彈出的表單中Host填寫域名,比如填api.instagram.com,Port填443
這時候我們打開網易app:
就可以看到數據了,至此抓包工作就搞定了。
注意:當我們不抓包的時候,會將Charles關閉,這時候iOS是訪問不到網絡的,因爲設置了代理(就是Charles),這時候需要將iOS中的代理關閉,這個是抓包時經常犯的錯。