charles系列02——如何抓移動端和web端的請求


前言

一、charles的抓包操作

1.1 charles與手機/電腦的連接

1.1.1 charles與手機端的連接

使手機和電腦在一個局域網內,不一定非要是一個ip段,只要是同一個路由器下就可以了。

(1)首先利用cmd -config命令查看自己電腦的ip地址

 
 

(2)然后在手機端的wifi代理設置那里去進行相關的配置設置。

這里的代理服務器地址填寫為電腦的ip地址,然后端口這里寫8888(這個是charles的默認設置),如果自己修改了就寫成自己所修改的端口就可以了。

 
 

配置完成,會看到一個charles與手機端的連接提示彈窗,選擇allo即可。

 
 

(3)手機端抓包https

上述1、2步驟,只針對http請求。由於https協議的特殊性,所以要求電腦端和手機端都需要安裝下證書,否則會看到返回的數據都是亂碼。

a.電腦端證書下載

 
 

b. 手機端證書下載

在設備上打開這個網址 http://www.charlesproxy.com/getssl 安裝 Charles SSL 證書。

注意,同一個手機對應不同電腦上的Charles都要分別下載證書進行認證,因為手機的證書是和電腦端的Charles一一配對的。

 
 

PS:ios手機,需要信任該證書

C.相關配置

選擇Proxy | Proxy Settings,彈出proxy設置選項卡,勾選Enable SSL Proxying,在Location部份選擇add,按如下圖添加,抓取任意站點、任意端口的數據。

 

 1.1.2 charles與電腦端的連接

由於charles會自動配置瀏覽器和工具的代理設置,所以說打開工具直接就已經是抓包狀態了。直接打開網頁就可以了。

 注意:

(1)Charles支持抓去http、https協議的請求,不支持socket。

(網絡上的兩個程序通過一個雙向的通信連接實現數據的交換,這個連接的一端稱為一個socket)

(2)防火牆關掉

1.1.3 過濾請求

通常情況下,我們需要對網絡請求進行過濾,只監控向指定目錄服務器上發送的請求。對於這種需求,以下幾種辦法:

方法一:在主界面的中部的Filter欄中填入需要過濾出來的關鍵字。例如我們的服務器的地址是:www.baidu.com,那么只需要在 Filter 欄中填入www.baidu.com即可。

 
 

方法二:在Charles的菜單欄選擇 “Proxy”->”Recording Settings”,然后選擇 Include 欄,選擇添加一個項目,然后填入需要監控的協議,主機地址,端口號。這樣就可以只截取目標網站的封包了。如下圖所示:

 
 

通常情況下,我們使用方法一做一些臨時性的封包過濾,使用方法二做一些經常性的封包過濾。

方法三:在想過濾的網絡請求上右擊,選擇“Focus”,之后在 Filter 一欄勾選上 Focussed 一項,如下圖所示:

這種方式可以臨時性的,快速地過濾出一些沒有通過關鍵字的一類網絡請求。

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM