利用charles進行資料抓包和手機APP資料測試
1.下載charles(點選開啟連結);
下載後安裝,安裝完成後開啟,出現如下介面;
2、開始對 PC 端 的charles進行配置,點選proxy(代理),找到代理設定
對代理埠進行進行配置,埠號預設8888,你可以自己修改,選中 enable transparent http prxying,代表啟用http代理;
點選OK,完後配置。
如果你只想對pc端的資料互動進行抓取,那麼到這一步就行了
3、對移動端,手機app上面的資料進行抓取。
注意事項:手機與pc是否處於同一網路。
3.1、開始配置移
開啟手機的WIFI功能區,進入連結WIFI設定介面,點選高階設定,進入以下介面,or 點選代理設定,進入代理設定介面。
代理伺服器主機名稱 填寫你PC的IP地址,如果你不知道你PC的ip地址,可以在charles上檢視到
本地IP地址,點選local IP Address 後直接就能看到你的PC網路的IP地址。
埠填寫你在charles上設定的埠,如果你沒有修改埠,依然是8888,那麼直接填入8888;
點選完成or儲存,charles會給你一個提示框,是否允許連結手機網路請求;
如下:
點選允許,ALLOW.
如果把你點選了否認 Deny,那麼你關閉charles,再重新走一遍吧(哈哈哈哈O(∩_∩)O哈哈哈~);
Warning:如果沒有彈出提示框,那麼請檢查charles是否處於防火牆信任軟體序列裡,這個你可以在防火牆設定連看到.
將應用新增進入允許序列裡,在不關閉防火牆的情況下,可以抓到資料,如果依然沒有,那麼久關閉防火牆,再試一次;
現在,charles就可以抓取手機上的資料了,包括網頁、APP、及其他網路請求;甚至某些App網路安全做得不好,你都可以將你的賬戶和密碼在charles上訪問到。
Warning:這隻能對http協議的資料進行抓取.
4、對https的解析,之前我們抓取http協議資料的時候,會發現一個問題,就是隻要是https協議,那麼全部是上鎖了,並不能檢視到資料。
現在,我們來對https解鎖,因為https對證書加深了認證,所以我們要解鎖,就必須安裝charles的變色龍證書,依靠它,我們可以抓取到很多https裹挾的資料。
4.1、下載證書;點選charles上的help,
安裝PC端的證書,首先點選install charles root certificate ,會對你進行提示安裝證書,點選確定安裝
一定要加入 “ 受信任的根證書頒發機構”,不然後續https解析不了;點選確定,完成PC的安裝;
因為要抓取手機上的https網路請求資料,手機上也必須安裝證書;
首先點選
會出現獲取手機端認證證書網址
IOS手機,進入該網址就直接會下載改證書,並且安裝它,你直接去設定-》通用-》信任憑證
找到它,信任它;
Andiro手機,進入該網址,會提示你下載證書,下載完成後自動安裝,名稱隨你自己定;
完成安裝後
因為是https,我們還需要在charles上新增ssl proxy服務
完成 ssl proxy 設定,五部曲;
Host:填寫你要抓取API網址
如:
prot:一般填了host就填寫443,手機上不用修改。點選新增,就會對單獨的host進行資料解析;
如果host和port設定為*,則會解析抓取到的所有https請求;
至此:關於charles的抓包和用於app代理的教程寫完了;
waning:如果你在資料抓取活動完成後,關閉了charles,不再進行資料測試,開啟瀏覽器,發現不能連線到網路,
那麼,首先你檢查你是否處於聯網狀態,
處於:進入網路設定:
關閉你的代理:
因為存在一種可能,就是你的charles已經關閉,但是你的代理行為沒有關閉,那麼就會造成連結不到遠端主機,也就是charles的埠;