1.簡(jiǎn)介
Fiddler不但能截獲各種瀏覽器發(fā)出的 HTTP 請(qǐng)求,也可以截獲各種智能手機(jī)發(fā)出的HTTP/ HTTPS 請(qǐng)求。
Fiddler 能捕獲Android 和 Windows Phone 等設(shè)備發(fā)出的 HTTP/HTTPS 請(qǐng)求。同理也可以截獲iOS設(shè)備發(fā)出的請(qǐng)求,比如 iPhone、iPad 和 MacBook 等蘋(píng)果設(shè)備。
今天宏哥講解和分享Fiddler 如何截獲iOS移動(dòng)端發(fā)出的 HTTP/HTTPS 請(qǐng)求。
2.環(huán)境準(zhǔn)備
Fiddler 如果想要實(shí)現(xiàn)手機(jī)抓包,需要先滿足下面 3 個(gè)條件:
(1)電腦上安裝有 Fiddler 抓包工具。
(2)安裝有 Fiddler 的電腦必須跟手機(jī)處在同一個(gè)網(wǎng)絡(luò)里,并且手機(jī)網(wǎng)絡(luò)代理必須設(shè)置為fiddler,當(dāng)我們的手機(jī)發(fā)送數(shù)據(jù)時(shí)必須經(jīng)過(guò)Fiddler這一層服務(wù)。
(3)在 Fiddler 中設(shè)置好捕獲 HTTPS(具體方法請(qǐng)百度,宏哥前邊也講解和分享過(guò))。
3.Fiddler截獲手機(jī)原理圖
Fiddler 作為代理服務(wù)器,可以接收遠(yuǎn)程機(jī)器發(fā)來(lái)的 HTTP/HTTPS 協(xié)議的數(shù)據(jù)包,并且將其轉(zhuǎn)發(fā)到 Web 服務(wù)器。
?如果你想學(xué)習(xí)接口自動(dòng)化測(cè)試,我這邊給你推薦一套視頻,這個(gè)視頻可以說(shuō)是B站播放全網(wǎng)第一的接口自動(dòng)化測(cè)試教程,同時(shí)在線人數(shù)到達(dá)1000人,并且還有筆記可以領(lǐng)取及各路大神技術(shù)交流:798478386? ??
【已更新】B站講的最詳細(xì)的Python接口自動(dòng)化測(cè)試實(shí)戰(zhàn)教程全集(實(shí)戰(zhàn)最新版)_嗶哩嗶哩_bilibili【已更新】B站講的最詳細(xì)的Python接口自動(dòng)化測(cè)試實(shí)戰(zhàn)教程全集(實(shí)戰(zhàn)最新版)共計(jì)200條視頻,包括:1.【接口自動(dòng)化】目前軟件測(cè)試的市場(chǎng)行情以及測(cè)試人員能力標(biāo)準(zhǔn)。、2.【接口自動(dòng)化】全面熟練Requests庫(kù)以及底層方法調(diào)用邏輯、3.【接口自動(dòng)化】接口自動(dòng)化實(shí)戰(zhàn)及正則和JsonPath提取器的應(yīng)用等,UP主更多精彩視頻,請(qǐng)關(guān)注UP賬號(hào)。https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337.search-card.all.click
4.截獲手機(jī)發(fā)出的 HTTP 包有什么作用?
1:APP 開(kāi)發(fā)人員利用 Fiddler 可以截獲手機(jī)發(fā)出的 HTTP 包,從而調(diào)試 APP 程序。
2:軟件測(cè)試人員可以用其來(lái)測(cè)試智能手機(jī)上的軟件,做接口測(cè)試或者安全測(cè)試。
3:截獲了 HTTP/HTTPS 后,可以設(shè)置下斷點(diǎn)修改 HTTP 請(qǐng)求和 HTTP 響應(yīng)。
PS:下面是重點(diǎn) 配置項(xiàng)
5.IOS手機(jī)抓包配置
5.1Fiddler配置
在Fiddler中我們還需要設(shè)置遠(yuǎn)程連接權(quán)限和端口號(hào),具體操作步驟如下:
1.啟動(dòng) Fiddler,單擊菜單欄中 Tools->Fiddler Options->Connections,選中“Allow remote computers to connect(允許遠(yuǎn)程計(jì)算機(jī)連接)”,然后設(shè)置一個(gè)端口,也可以默認(rèn)為8888。如下圖所示:
選中后就表示允許遠(yuǎn)程機(jī)器把 HTTP/HTTPS 請(qǐng)求發(fā)送到 Fiddler 上來(lái)(配置完后記得要重啟 Fiddler)。同時(shí),我們還能看到 Fiddler 的工作端口號(hào)是 8888。
5.2確保手機(jī)和PC在同一網(wǎng)絡(luò)環(huán)境下
手機(jī)和電腦必須在同一局域網(wǎng),手機(jī)最好也關(guān)閉4G/5G網(wǎng)絡(luò)流量, 并且使用wifi,讓手機(jī)和fiddler在同一局域網(wǎng)下,具體操作步驟如下:
5.2.1獲取Fiddler所在機(jī)器的IP地址
1.讓android手機(jī)的網(wǎng)絡(luò)進(jìn)出口指向局域網(wǎng)中fiddler服務(wù)地址, 那么我們這里就必須要知道Fiddler的ip地址和端口號(hào)(port)。
這里Fiddler的ip地址就是我們當(dāng)前電腦中的本機(jī)ip地址。查看電腦的 IP 地址,按快捷鍵【W(wǎng)indows+R】,調(diào)出運(yùn)行窗口。輸入 CMD,可以打開(kāi)CMD 命令行工具;輸入命令“ipconfig”,可以找到 IP 地址(找到其中的IPv4地址即為本機(jī)ip)。一個(gè)電腦可能有多個(gè)網(wǎng)卡,注意要找到真正的 IP 地址,例如某 IP 地址是 10.0.0.11,如下圖所示:
2.可以對(duì)照一下當(dāng)前所安裝的Fiddler中的ip地址是否一致,你可以直接在fiddler上 將鼠標(biāo)放置于 Online 工具上就會(huì)顯示本機(jī)ip地址,如果一樣那么就可以確保一會(huì)設(shè)置手機(jī)和電腦在同一個(gè)局域網(wǎng)內(nèi)。如下圖所示:
?
5.3iOS手機(jī)設(shè)置網(wǎng)絡(luò)代理
1.打開(kāi)IOS設(shè)備的 設(shè)置 -> 無(wú)線局域網(wǎng),找到你要連接的網(wǎng)絡(luò),點(diǎn)擊右邊的符號(hào),如下圖所示:
2.打開(kāi)網(wǎng)絡(luò)設(shè)置對(duì)話框,下拉到最后,找到配置代理,點(diǎn)擊有點(diǎn)的 > 符號(hào),彈出網(wǎng)絡(luò)代理配置,進(jìn)行如下配置,并點(diǎn)擊右上角的 存儲(chǔ),如下圖所示:?
?
?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-620645.html
5.4測(cè)試Fiddler捕獲手機(jī)發(fā)出的HTTPS
啟動(dòng) IOS設(shè)備中的瀏覽器或應(yīng)用,在fiddler程序中可以看到完成的請(qǐng)求和響應(yīng)數(shù)據(jù),如圖所示:
注意:
在上述完成的請(qǐng)求中,可以看到存在很多的?Tunnel to xxx 443
?問(wèn)題,這是由于網(wǎng)頁(yè)中有很多請(qǐng)求都是 HTTPS ,因此需要在手機(jī)中安裝 Fiddler 生成的證書(shū),并在手機(jī)中信任該證書(shū)。
6.ios手機(jī)下載安裝與配置證書(shū)
跟android一樣,我們使用Fiddler來(lái)抓取ios手機(jī)的HTTPS數(shù)據(jù)包也是需要安裝根證書(shū)從而來(lái)解碼我們的HTTPS數(shù)據(jù)報(bào)文,
6.1下載證書(shū)
那么其實(shí)下載證書(shū)步驟其實(shí)也跟android手機(jī)是差不多的。
1.使用ios手機(jī)中自帶的的safari瀏覽器,輸入配置好的ip+端口跳轉(zhuǎn)到 Fiddler Echo Service 證書(shū)下載頁(yè)(其他瀏覽器可能不成功),如下圖所示:
?2.點(diǎn)擊 FiddlerRoot 證書(shū),將其下載到手機(jī)中,打開(kāi)手機(jī) 設(shè)置 -> 通用 -> VPN與設(shè)備管理,找到 已下載的描述文件(FiddlerRoot 證書(shū)),如下圖所示:
3.點(diǎn)擊 DO_NOT_TRUST_FiddlerRoot,點(diǎn)擊右上角的 安裝,安裝完后,點(diǎn)擊右上角的 完成,如下圖所示:
?
4.由于iOS手機(jī)提供了系統(tǒng)層面的設(shè)置,所以在確認(rèn)證書(shū)安裝好、代理設(shè)置沒(méi)問(wèn)題后,需要對(duì)已安裝的證書(shū)進(jìn)行信任設(shè)置。即,點(diǎn)擊 設(shè)置 -> 通用 -> 關(guān)于本機(jī) -> 證書(shū)信任設(shè)置,開(kāi)啟 Fiddler 證書(shū)信任,接受這樣的對(duì)話,即允許第三方竊聽(tīng)你的所有通信。如下圖所示:
?
5.到此,F(xiàn)iddler 就可以抓取 HTTPS 請(qǐng)求了。可以看出,iOS 上的設(shè)置要比 Android 上復(fù)雜一些,也反映出 iOS 更安全一些。
7.開(kāi)始ios抓包
配置好PC端的Fiddler、手機(jī)也安裝了證書(shū)、代理也設(shè)置之后,我們就可以在手機(jī)上操作app捕獲數(shù)據(jù)包了,然后在Fiddler中查看發(fā)送的請(qǐng)求和響應(yīng)報(bào)文了,如下圖所示:
手機(jī)APP:
手機(jī)百度網(wǎng)頁(yè):
8.小結(jié)
注意:
1.不使用Fildder 進(jìn)行抓包時(shí),建議將手機(jī)網(wǎng)絡(luò)代理關(guān)閉,以防有其他網(wǎng)絡(luò)問(wèn)題。
2.必須要開(kāi)啟證書(shū)信任,否則會(huì)出現(xiàn)無(wú)法抓到HTTPS包的情況。
3.如果還是抓不到包,需查看一下防火墻是否關(guān)閉,是否沒(méi)有允許Fiddler程序通過(guò)防火墻,或者檢查一下證書(shū)是否出現(xiàn)問(wèn)題,或者 刪除所有的證書(shū)之后 ,重新安裝Fiddler與手機(jī)的證書(shū)重置后再次嘗試抓包!
?文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-620645.html
?
?
?
?
到了這里,關(guān)于《吐血整理》進(jìn)階系列教程-拿捏Fiddler抓包教程(12)-Fiddler設(shè)置IOS手機(jī)抓包,你知多少???的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!