Fiddler的介紹
①Fiddler是強大的抓包工具,它的原理是以web代{過}{過濾}理伺服器的形式進行工作的,使用的代{過}{過濾}理地址是:127.0.0.1,連接埠預設為8888,我們也可以透過設定進行修改。
②代{過}{濾}理是在客戶端與伺服器之間設定一道關卡,客戶端先將請求資料送出去後,代{過}{濾}理伺服器會將資料包進行攔截,代{過}{濾}理伺服器再冒充客戶端發送資料到伺服器;同理,伺服器將回應資料傳回,代{過}{濾}理伺服器也會將資料攔截,再傳回給客戶端。
③Fiddler可以抓取支援http代{過}{過濾}理的任意程式的資料包,如果要抓取https會話,請先安裝憑證。
技巧一: 全新安裝Fiddler
預設下,Fiddler 不會捕捉HTTPS 會話,需要你設定下,開啟Fiddler Tool->Fiddler
#Options-> HTTPS tab
選取checkbox,彈出如下的對話框,點選"YES"
##點擊"Yes"後,就設定好了技巧二:Fiddler 連接手機代理設定:1) 依序開啟Fiddler->Tools->Fiddler Options 在【Connection】面板裡將Allow remote computers to connect 勾選,設定連接埠號碼【預設為8888,可修改其他連接埠號碼】;點選【OK】按鈕,關閉Fiddler 並重新開啟Fiddler。 2) 得到本機IP 用於手機端配置,windows->執行->cmd->ipconfig;得到本機IP簡單取得本機的IP 有兩個方法:①滑鼠放置在fiddler 右上角的Online,就會顯示本機的IP、Host 等一些訊息,如下圖 ②點選windows->執行->cmd->ipconfig;得到本機IP 3) 手機端設定:代理設定改為【手動】 ,輸入【代理伺服器主機名稱】(對應PC 端的IP 位址),輸入【代理伺服器連接埠號碼】(Fiddler 配置的連接埠號碼)##4)全部設定完成,現在用手機打開助手,就能在Fiddler 中監聽到手機發送的請求
#技巧三:Fiddler 的基本介面
在Inspectors標籤下,有許多可用於查看請求或回應訊息的選項。其中 Raw Tab 可以查看完整的訊息,Headers tab 只查看訊息中的 header.如下圖
技巧四: 啟動 Fiddler 後 後 Response 是亂碼,怎麼辦?
有時候我們看到 Response 中的 HTML 是亂碼的,這是因為 HTML 被壓縮了,我們可以透過兩種方法去解壓縮。
1、點擊 Response Raw 上方的"Response is encoded any may need to be decoded before inspection. click here to transform"
2、選取工具列中的"Decode"。這樣會自動解壓縮,解壓縮後重啟就可以了
技巧五:QuickExec命令列的使用
Fiddler 的左下角有個命令列工具叫做QuickExec,允許你直接輸入指令。
常見的指令有:
help:開啟官方的使用頁面介紹,所有的指令都會列出來
cls:清除螢幕
Select:選擇會話的指令
?.png:用來選擇png 字尾的圖片
#bpu:截取request
技巧六:Fiddler中建立AutoResponder規則
Fiddler 的AutoResponder tab 允許你從本地返回文件,而不用將http request 發送到
伺服器上
看個實例.
##1、進入助手首頁,把serverconfig.html 連線儲存到本機桌面,選取該條請求,右鍵—>copyàJust Url2、選取該條請求,點選右側選擇AutoResponder,點選Add Rule,把該條請求加入進去,或把這個會話拖到AutoResponer tab 下方3、選擇Enable automatic reaponses 和Unmatched requests passthrough
4、更改本地保存的配置文件,在下面的Rule Editor 下面選擇Find a file...選擇本地保存的圖片.最後點擊Save儲存下
5、重新首次進入助手,查看serverconfig 回傳的資料中就是自己修改的
技巧七:Fiddler中如何過濾會話
每次使用Fiddler,開啟一個網站,都能在Fiddler 中看到數十個會話,看得眼花撩亂。最好的方法是過濾掉一些會話,例如過濾掉圖片的會話。 Fiddler 中有過濾的功能,在右邊的Filters tab 中,如下圖就是只顯示帶有zhushou.sogou.com 的請求
##技巧八:Fiddler中提供的編碼小工具點擊Fiddler 工具列上的TextWizard,這個工具可以Encode 和Decode string. 技巧九:Fiddler中查詢會話開啟Find Sessions 對話框,使用快速鍵Ctrl F,輸入關鍵字以尋找所需會話。查詢到的會話會用黃色顯示 技巧十:Fiddler中保存會話有些時候我們需要把會話保存下來,以便發給別人或者以後去分析。儲存會話的步驟如下:在選擇想要儲存的會話後,點選選單列的「檔案」->「儲存」->「選定的會話」CustomRules.js CustomRules.js 中的主要方法:Static function OnBeforeRequest(oSession:Session)//在這個方法中修改Response 的內容,#重寫後:OnBeforeResponse是一個靜態函數,參數為Session//在個方法中包含Fiddler 指令。 The QuickExec Box is located in the lower-left corner of the Fiddler interface.function OnExecAction(sParams:String[])#實例:修改sogouid① 在選單欄中點選Rules—》CustomRules,打開CustomRules.js 腳本② 加入以下腳本,()裡面寫上介面名字,url 中填上請求資料③ 更改你想要改的sogouid 就可以把這段腳本放在oSession.uriContains()方法下,並且點擊"Save script",這樣該條介面下的sogouid 就會變成自己更改的idif(oSession.uriContains("install.html?")){oSession.url="mobile.zhushou.sogou.com/m/install.html?uid=d15449c17bbded35c989736 ##########################################################################4 #70c1e1e0c&vn=3.11.2&channel=sogouinputgx&sogouid=e9ed8a54201e5481e20f6760804772c3&stoken==IhTefovaz0dInTQxRppdInTQxRpp&cella2c3&stoken==IhTefovaz0dInTQxRppdInTQxR 0&cell&F);顯示樣式######把這段腳本放在OnBeforeRequest(oSession:Session)方法下,並且點擊"Save script",這樣所有的cnblogs 的會話都會顯示綠色。 ######if (oSession.uriContains("mobiletoolhit.gif?")) {oSession["ui-color"] = "green";}###############技巧十二: 如何在Fiddler Script中修改Request中的body######方法一:######Static function OnBeforeRequest(oSession:Session) {######if(oSession.uriContains( "http://www.cnblogs.com/TankXiao/")) {######//取得Request 中的body 字串######Var strBody=oSession.GetRequestBodyAsString();### ###//用正規表示式或replace 方法去修改string######strBody=strBody.replace("1111","2222");#######//彈個對話方塊檢查下修改後的body######FiddlerObject.alert(strBody);######//將修改後的body,重新寫回Request 中######oSession.utilSetRequestBody(strBody);} }######方法二:######提供一個簡單的方法,可以直接取代body 中的資料######oSession.utilReplaceInRequest(“ 1111”,“2222”);## ####post請求模擬######測試時如果客戶端的資料出錯,可能需要單獨對某個url 進行請求,看返回資料是否正確,透過客戶端再去請求有時需要複雜的環境需求,整一次挺費勁,透過單獨的請求看數據是否正確可以節省一些時間,當然get 請求可以直接用瀏覽器就能看到返回數據了,post 數據由於有body 數據,需要藉助工具才行,fiddler 的composer功能就是為此而生的,如下圖,在上方填寫url,選擇請求方式,在下方的body 中添加post 的資料後,點擊execute 就是請求了,在透過inspectors 就能看到本次模擬請求的返回值了。 ####
以上是Fiddler怎麼安裝使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!