1. 程式人生 > >Charles在Mac上的抓包工具

Charles在Mac上的抓包工具

不過可惜的是,Fidder使用C#開發的,所以就不能在Mac上使用了,不過還有另外一個抓包神器,就是Charles,它是Java開發的,所以跨平臺,不僅可以在Mac上使用,Linux以及Window下都是可以使用的,當然需要安裝JDK,才能執行,同時還有一個問題就是他是收費的。

一、下載

這個是3.9.3版本的,下載下來,安裝就不多說了,很easy....開啟介面:


二、破解

不過這個收費的,那麼接下來就開始破解吧,其實破解很簡單就是替換一個檔案就可以了,可以在網上搜:Charles3.9.3破解的jar檔案

下載下來之後我們就可以進行破解吧:

開啟應用程式,選擇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的工具欄上點選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中的代理關閉,這個是抓包時經常犯的錯。