1. 程式人生 > >利用charles進行資料抓包和手機APP資料測試

利用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的埠;