一、Charles工具的狀態(tài)
包括:File、Edit、View、Proxy、Tools、Window、Help。用的最多的主菜單分別是?Proxy?和?Tools。
1.Charles安裝證書(shū)主要就是需要去截取到https協(xié)議相關(guān)的一些內(nèi)容
需要注意:
a、如果部分https截取不到,可以在該請(qǐng)求中選擇SSl proxying
? ? ?b、如果要抓取手機(jī)的數(shù)據(jù)時(shí),電腦必須與手機(jī)鏈接同一個(gè)wifi
c、手機(jī)配置代理,設(shè)置代理端為charles的端口號(hào),服務(wù)器為電腦的ip地址
? ? ? ? 2、http和https包主要包含:
? http抓包:charles的默認(rèn)端口號(hào)是8888
? https抓包:需要SSL加密證書(shū),端口號(hào)是443
? ?3、map_remote是將網(wǎng)絡(luò)請(qǐng)求重定向到另一個(gè)網(wǎng)址,本來(lái)要請(qǐng)求A接口拿數(shù)據(jù),重定向后,你實(shí)際 ? ? ? ? ? ? ? ? 請(qǐng)求的是B接口,拿到的是B接口返回的數(shù)據(jù)。
? map_local是將制定的網(wǎng)絡(luò)請(qǐng)求重定向到本地文件,修改/增加想要的網(wǎng)絡(luò)數(shù)據(jù)
? Local path需要放本地保存的json文件
? breakpoints是網(wǎng)絡(luò)請(qǐng)求的結(jié)果做臨時(shí)性的修改
Charles連接Android手機(jī)進(jìn)行抓包:
在手機(jī)上通過(guò)wifi然后選擇與電腦連的同一個(gè)wifi進(jìn)行設(shè)置代理,修改主機(jī)名和端口,主機(jī)名在charles狀態(tài)欄的help中Local Ip Addresses看其中的IP,然后端口默認(rèn)沒(méi)修改是8888的,修改完成之后就可以去瀏覽器搜索網(wǎng)址chls.por/ssl進(jìn)行證書(shū)的下載就可以
來(lái)解決charles的contens的亂碼問(wèn)題:http://www.itdecent.cn/p/9a6522617189
charles過(guò)濾域名:https://blog.csdn.net/qq_41940672/article/details/89914523?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-3.control的方法三步驟就可以了,port修改為443
二、Charles的功能有?
1.截取http和https 網(wǎng)絡(luò)封包(抓包)
2. 支持和重發(fā)網(wǎng)絡(luò)請(qǐng)求
3.支持修改網(wǎng)絡(luò)參數(shù)
4.支持網(wǎng)絡(luò)請(qǐng)求請(qǐng)求并修改
5.支持弱網(wǎng)測(cè)試
弱網(wǎng):在Proxy里面點(diǎn)擊ThrottleSetting里面

Only for select hosts只對(duì)某些網(wǎng)站實(shí)施弱網(wǎng)測(cè)試
上行

三、使用方式
狀態(tài)欄按鈕的介紹:1.清空數(shù)據(jù)
? ?2、捕獲網(wǎng)頁(yè)信息? ? ? ? ? ? ? ? 3、弱網(wǎng)測(cè)試? ? ? ? ? ? ? ? ? ? 4、打斷點(diǎn)? ? ? ? ? ? ? ? 5、修改數(shù)據(jù)? ? ? ? ? ? ? ? ? ? 6、刷新? ? ? ? ? ? ? ? ? ? 7、設(shè)置
1.Help?-->?SSL Proxying?-->??Install Charles Root Certificate
以下是安裝好之后的證書(shū)設(shè)置

2.安裝證書(shū)





抓包解鎖



移動(dòng)端抓包【真機(jī),虛擬機(jī)】

2.取本機(jī)ip ,端口號(hào) 或者win+r - cmd 黑窗口 輸入ipconig?

3.長(zhǎng)按wifi ,修改網(wǎng)絡(luò)

4.代理改為手動(dòng)代理,輸入ip,端口號(hào),保存?

四、數(shù)據(jù)的過(guò)濾
四種方法
a.filter的過(guò)濾 ?
b.ctrl+f的過(guò)濾 ?對(duì)請(qǐng)求頭 ?響應(yīng)體 ?等進(jìn)行過(guò)濾
c.可以使用過(guò)濾url的方式
d.可以使用focus的方式過(guò)濾 ?只顯示已經(jīng)選中的url其他的進(jìn)行隱藏
關(guān)于斷點(diǎn)設(shè)置
1.首先先清空數(shù)據(jù),先點(diǎn)擊狀態(tài)欄中的ProxySettings會(huì)彈出下面這個(gè)框,Enable transparent http proxying是需要進(jìn)行勾選的,在勾選完之后需要點(diǎn)擊ok進(jìn)行下一步

2、在次點(diǎn)擊ProxySettings中的SSL?ProxySettings,確認(rèn)之前的Enable transparent http proxying是否已經(jīng)選中,并且點(diǎn)擊add進(jìn)行添加匹配端口

點(diǎn)擊add之后會(huì)彈出下面這個(gè)界面,Host代表的是匹配所有,所有填入*,post代表的端口,一般都是填443,填完之后需要進(jìn)行重啟確認(rèn)剛剛的是否配置成功

通過(guò)斷點(diǎn)修改request請(qǐng)求參數(shù)值
1.打開(kāi)網(wǎng)頁(yè)捕捉數(shù)據(jù)
2.查看網(wǎng)頁(yè)數(shù)據(jù)

3、右鍵選中copy url復(fù)制路徑,在點(diǎn)擊Break points 打斷點(diǎn)

4.在狀態(tài)欄中選擇Proxy點(diǎn)擊Breakpoint Settings進(jìn)行設(shè)置斷點(diǎn)

5.確認(rèn)Enable這個(gè)框選中進(jìn)行添加

在點(diǎn)擊add之后再host中把復(fù)制的url填入里面,默認(rèn)會(huì)分配填好,然后需要把query中修改為*之后點(diǎn)擊ok

先刷新頁(yè)面然后就會(huì)出來(lái)這個(gè)界面,wdit request是具體可修改的數(shù)據(jù),點(diǎn)擊wd那個(gè)框進(jìn)行修改

通過(guò)斷點(diǎn)修改request請(qǐng)求參數(shù)值
1、之前的操作還是一樣,不同的是勾選的不一樣

2.在查看數(shù)據(jù)那里有Headers和Text兩個(gè)修改,里面會(huì)有相關(guān)的修改信息

弱網(wǎng)測(cè)試
模擬弱網(wǎng)測(cè)試
404/403返回值
404
重復(fù)之前的操作,將添加網(wǎng)址的地方換成403
關(guān)閉404 403