使用fidder抓取手機(jī)的請(qǐng)求
今天我們來淺談一下如何使用fidder抓取手機(jī)的請(qǐng)求以及findder的其它功能
閱讀目錄
1. Fiddler 抓包簡(jiǎn)介
1). 字段說明
2). Statistics 請(qǐng)求的性能數(shù)據(jù)分析
3). Inspectors 查看數(shù)據(jù)內(nèi)容
4). AutoResponder 允許攔截制定規(guī)則的請(qǐng)求
5). Filters 請(qǐng)求過濾規(guī)則
6). Timeline 請(qǐng)求響應(yīng)時(shí)間
2. Fiddler 設(shè)置解密HTTPS的網(wǎng)絡(luò)數(shù)據(jù)
3. Fiddler 抓取Iphone / Android數(shù)據(jù)包
4. Fiddler 內(nèi)置命令與斷點(diǎn)
序章
Fiddler是一個(gè)蠻好用的抓包工具噪服,可以將網(wǎng)絡(luò)傳輸發(fā)送與接受的數(shù)據(jù)包進(jìn)行截獲译仗、重發(fā)、編輯缝裤、轉(zhuǎn)存等操作件缸。也可以用來檢測(cè)網(wǎng)絡(luò)安全铜靶。反正好處多多,舉之不盡呀他炊!當(dāng)年學(xué)習(xí)的時(shí)候也蠻費(fèi)勁争剿,一些蠻實(shí)用隱藏的小功能用了之后就忘記了,每次去網(wǎng)站上找也很麻煩痊末,所以搜集各大網(wǎng)絡(luò)的資料蚕苇,總結(jié)了一些常用的功能。
Fiddler 下載地址 :https://www.telerik.com/download/fiddler
Fiddler 離線下載地址:https://pan.baidu.com/s/1bpnp3Ef 密碼:5skw
下載Fiddler要FQ凿叠,我費(fèi)了好大得勁才翻出去下載到…
win8之后用“Fiddler for .NET4”而win8之前用“Fiidler for .NET2”比較好
1. Fiddler 抓包簡(jiǎn)介
Fiddler是通過改寫HTTP代理涩笤,讓數(shù)據(jù)從它那通過,來監(jiān)控并且截取到數(shù)據(jù)。當(dāng)然Fiddler很屌辆它,在打開它的那一瞬間,它就已經(jīng)設(shè)置好了瀏覽器的代理了履恩。當(dāng)你關(guān)閉的時(shí)候锰茉,它又幫你把代理還原了,是不是很貼心切心。飒筑。。
1) 字段說明
Fiddler想要抓到數(shù)據(jù)包绽昏,要確保Capture Traffic是開啟协屡,在File –> Capture Traffic。開啟后再左下角會(huì)有顯示全谤,當(dāng)然也可以直接點(diǎn)擊左下角的圖標(biāo)來關(guān)閉/開啟抓包功能肤晓。
Fiddler開始工作了,抓到的數(shù)據(jù)包就會(huì)顯示在列表里面认然,下面總結(jié)了這些都是什么意思:
:“#”號(hào)抓取HTTP Request的順序补憾,從1開始,以此遞增
Result | : HTTP狀態(tài)碼 |
Protocol :請(qǐng)求使用的協(xié)議卷员,如HTTP/HTTPS/FTP等
Host:請(qǐng)求地址的主機(jī)名
URL:請(qǐng)求資源的位置
Body:該請(qǐng)求的大小
Caching:請(qǐng)求的緩存過期時(shí)間或者緩存控制
Content-Type :請(qǐng)求響應(yīng)的類型
Process:發(fā)送此請(qǐng)求的進(jìn)程:進(jìn)程ID
Comments:允許用戶為此回話添加備注
Custom:允許用戶設(shè)置自定義值
:請(qǐng)求已經(jīng)發(fā)往服務(wù)器
:已從服務(wù)器下載響應(yīng)結(jié)果
:請(qǐng)求從斷點(diǎn)處暫停
:響應(yīng)從斷點(diǎn)處暫停
:請(qǐng)求使用 HTTP 的 HEAD 方法盈匾,即響應(yīng)沒有內(nèi)容(Body)
:請(qǐng)求使用 HTTP 的 POST 方法
:請(qǐng)求使用 HTTP 的 CONNECT 方法,使用 HTTPS 協(xié)議建立連接隧道
: 響應(yīng)是 HTML 格式
:響應(yīng)是一張圖片
:響應(yīng)是腳本格式
:響應(yīng)是 CSS 格式
:響應(yīng)是 XML 格式
:響應(yīng)是 JSON 格式
:響應(yīng)是一個(gè)音頻文件
:響應(yīng)是一個(gè)視頻文件
:響應(yīng)是一個(gè) SilverLight
:響應(yīng)是一個(gè) FLASH
:響應(yīng)是一個(gè)字體
:普通響應(yīng)成功
:響應(yīng)是 HTTP/300毕骡、301削饵、302、303 或 307 重定向
:響應(yīng)是 HTTP/304(無變更):使用緩存文件
:響應(yīng)需要客戶端證書驗(yàn)證
:服務(wù)端錯(cuò)誤
:會(huì)話被客戶端未巫、Fiddler 或者服務(wù)端終止
2). Statistics 請(qǐng)求的性能數(shù)據(jù)分析
好了窿撬。左邊看完了,現(xiàn)在可以看右邊了
隨意點(diǎn)擊一個(gè)請(qǐng)求橱赠,就可以看到Statistics關(guān)于HTTP請(qǐng)求的性能以及數(shù)據(jù)分析了(不可能安裝好了Fiddler一條請(qǐng)求都沒有…):
3). Inspectors 查看數(shù)據(jù)內(nèi)容
Inspectors是用于查看會(huì)話的內(nèi)容尤仍,上半部分是請(qǐng)求的內(nèi)容,下半部分是響應(yīng)的內(nèi)容:
4). AutoResponder 允許攔截指定規(guī)則的請(qǐng)求
AutoResponder允許你攔截指定規(guī)則的求情狭姨,并返回本地資源或Fiddler資源宰啦,從而代替服務(wù)器響應(yīng)。
看下圖5步饼拍,我將“baidu”這個(gè)關(guān)鍵字與我電腦“f:\Users\YukiO\Pictures\boy.jpeg”這張圖片綁定了赡模,點(diǎn)擊Save保存后勾選Enable rules,再訪問baidu师抄,就會(huì)被劫持漓柑。
這個(gè)玩意有很多匹配規(guī)則,如:
1. 字符串匹配(默認(rèn)):只要包含指定字符串(不區(qū)分大小寫),全部認(rèn)為是匹配
| 字符串匹配(baidu) | 是否匹配 |
| http://www.baidu.com | 匹配 |
| http://pan.baidu.com | 匹配 |
| http://tieba.baidu.com | 匹配 |2. 正則表達(dá)式匹配:以“regex:”開頭辆布,使用正則表達(dá)式來匹配瞬矩,這個(gè)是區(qū)分大小寫的
| 字符串匹配(regex:.+.(jpg | gif | bmp ) $) | 是否匹配 |
| http://bbs.fishc.com/Path1/query=foo.bmp&bar | 不匹配 |
| http://bbs.fishc.com/Path1/query=example.gif | 匹配 |
| http://bbs.fishc.com/Path1/query=example.bmp | 匹配 |
| http://bbs.fishc.com/Path1/query=example.Gif | 不匹配 |
4). Composer 自定義請(qǐng)求發(fā)送服務(wù)器
Composer允許自定義請(qǐng)求發(fā)送到服務(wù)器,可以手動(dòng)創(chuàng)建一個(gè)新的請(qǐng)求锋玲,也可以在會(huì)話表中景用,拖拽一個(gè)現(xiàn)有的請(qǐng)求
Parsed模式下你只需要提供簡(jiǎn)單的URLS地址即可(如下圖,也可以在RequestBody定制一些屬性惭蹂,如模擬瀏覽器User-Agent)
5). Filters 請(qǐng)求過濾規(guī)則
Fiters 是過濾請(qǐng)求用的伞插,左邊的窗口不斷的更新,當(dāng)你想看你系統(tǒng)的請(qǐng)求的時(shí)候盾碗,你刷新一下瀏覽器媚污,一大片不知道哪來請(qǐng)求,看著礙眼廷雅,它還一直刷新你的屏幕耗美。這個(gè)時(shí)候通過過濾規(guī)則來過濾掉那些不想看到的請(qǐng)求。
勾選左上角的Use Filters開啟過濾器榜轿,這里有兩個(gè)最常用的過濾條件:Zone和Host
1幽歼、Zone 指定只顯示內(nèi)網(wǎng)(Intranet)或互聯(lián)網(wǎng)(Internet)的內(nèi)容:
2、Host 指定顯示某個(gè)域名下的會(huì)話:
如果框框?yàn)辄S色(如圖)谬盐,表示修改未生效甸私,點(diǎn)擊紅圈里的文字即可
6). Timeline 請(qǐng)求響應(yīng)時(shí)間
在左側(cè)會(huì)話窗口點(diǎn)擊一個(gè)或多個(gè)(同時(shí)按下 Ctrl 鍵),Timeline 便會(huì)顯示指定內(nèi)容從服務(wù)端傳輸?shù)娇蛻舳说臅r(shí)間:
2. Fiddler 設(shè)置解密HTTPS的網(wǎng)絡(luò)數(shù)據(jù)
Fiddler可以通過偽造CA證書來欺騙瀏覽器和服務(wù)器飞傀。Fiddler是個(gè)很會(huì)裝逼的好東西皇型,大概原理就是在瀏覽器面前Fiddler偽裝成一個(gè)HTTPS服務(wù)器,而在真正的HTTPS服務(wù)器面前Fiddler又裝成瀏覽器砸烦,從而實(shí)現(xiàn)解密HTTPS數(shù)據(jù)包的目的弃鸦。
解密HTTPS需要手動(dòng)開啟晶伦,依次點(diǎn)擊:
1. Tools –> Fiddler Options –> HTTPS
2. 勾選Decrypt HTTPS Traffic
3. 點(diǎn)擊OK
3. Fiddler 抓取Iphone / Android數(shù)據(jù)包
想要Fiddler抓取移動(dòng)端設(shè)備的數(shù)據(jù)包舟陆,其實(shí)很簡(jiǎn)單景鼠,先來說說移動(dòng)設(shè)備怎么去訪問網(wǎng)絡(luò)酪耳,看了下面這張圖,就明白了橱夭。
可以看得出荆隘,移動(dòng)端的數(shù)據(jù)包无埃,都是要走wifi出去门粪,所以我們可以把自己的電腦開啟熱點(diǎn)喊积,將手機(jī)連上電腦,F(xiàn)iddler開啟代理后玄妈,讓這些數(shù)據(jù)通過Fiddler乾吻,F(xiàn)iddler就可以抓到這些包髓梅,然后發(fā)給路由器(如圖):
1. 打開Wifi熱點(diǎn),讓手機(jī)連上(我這里用的360wifi绎签,其實(shí)隨意一個(gè)都行)
2. 打開Fidder枯饿,點(diǎn)擊菜單欄中的 [Tools] –> [Fiddler Options]
3. 點(diǎn)擊 [Connections] ,設(shè)置代理端口是8888诡必, 勾選 Allow remote computers to connect鸭你, 點(diǎn)擊OK
4. 這時(shí)在 Fiddler 可以看到自己本機(jī)無線網(wǎng)卡的IP了(要是沒有的話,重啟Fiddler擒权,或者可以在cmd中ipconfig找到自己的網(wǎng)卡IP)
5. 在手機(jī)端連接PC的wifi,并且設(shè)置代理IP與端口(代理IP就是上圖的IP阁谆,端口是Fiddler的代理端口8888)
6. 訪問網(wǎng)頁輸入代理IP和端口碳抄,下載Fiddler的證書,點(diǎn)擊下圖FiddlerRoot certificate
【注意】:如果打開瀏覽器碰到類似下面的報(bào)錯(cuò)场绿,請(qǐng)打開Fiddler的證書解密模式(Fiddler 設(shè)置解密HTTPS的網(wǎng)絡(luò)數(shù)據(jù))
<pre style="margin-top: 10px; margin-bottom: 20px; white-space: pre-wrap; word-wrap: break-word; line-height: 2 !important; font-family: "Courier New" !important; font-size: 12px !important;">No root certificate was found. Have you enabled HTTPS traffic decryption in Fiddler yet?</pre>
![13D99A1D77D5528F3EFBA0C3DEA3BD28](http://upload-images.jianshu.io/upload_images/12041467-afb387fa3e9eee93.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240 "13D99A1D77D5528F3EFBA0C3DEA3BD28")
![8F268C0A1192E2DF41BD0F5DEFD525D9](http://upload-images.jianshu.io/upload_images/12041467-813b3d5397d754a9.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240 "8F268C0A1192E2DF41BD0F5DEFD525D9")
7. 安裝完了證書剖效,可以用手機(jī)訪問應(yīng)用,就可以看到截取到的數(shù)據(jù)包了焰盗。(下圖選中是布卡漫畫的數(shù)據(jù)包璧尸,下面還有QQ郵箱的)
4. Fiddler 內(nèi)置命令與斷點(diǎn)
Fiddler還有一個(gè)藏的很深的命令框,就是眼前熬拒,我用了幾年的Fiddler都沒有發(fā)現(xiàn)它爷光,偶爾在別人的文章發(fā)現(xiàn)還有這個(gè)小功能,還蠻好用的澎粟,整理下記錄在這里蛀序。
FIddler斷點(diǎn)功能就是將請(qǐng)求截獲下來,但是不發(fā)送活烙,這個(gè)時(shí)候你可以干很多事情徐裸,比如說,把包改了啸盏,再發(fā)送給服務(wù)器君重贺。還有balabala一大堆的事情可以做,就不舉例子了回懦。
命令 |
示例演示:
?
>
<
=
@
select
cls
dump
斷點(diǎn)命令:
斷點(diǎn)可以直接點(diǎn)擊Fiddler下圖的圖標(biāo)位置气笙,就可以設(shè)置全部請(qǐng)求的斷點(diǎn),斷點(diǎn)的命令可以精確設(shè)置需要截獲那些請(qǐng)求粉怕。如下示例:
命令:
bpafter
bps
bpv
g / go