使用FreeCookies 控制瀏覽器cookies及修改http響應內容

FreeCookies 插件安裝

1:您的計算機須要已經安裝Fiddler (如未安裝,請至官網下載安裝 http://docs.telerik.com/fiddler/configure-fiddler/tasks/configurefiddlerhtml

2:進入Fiddler安裝目錄下的Scripts目錄下,將FreeCookies.dll複製到該目錄下  (下載請至:https://github.com/lulianqi/FreeCookies/raw/master/bin/Debug/FreeCookies.dll 或 http://lulianqi.com/file/FreeCookies.dll   )
git

 

 

3:重啓Fiddler便可在面板中出現 free cookies 標籤github

 

 

 

 

FreeCookie使用

  • 經過截獲瀏覽器請求response head頭,並修新增set cookie頭,達到修改瀏覽器cookies的效果

  1: 獲取/編輯 cookies 正則表達式

 

 如上圖經過在Fiddler左側session面板中選擇任意請求,點擊『Get Cookies』按鈕便可獲取該請求所帶有的全部Cookiesjson

 

  

 獲取cookies後,會顯示在UI界面中,A區域爲cookies原始信息,B區域爲cookies的格式化列表展現,C區域編輯區能夠對B中單條cookie進行編輯瀏覽器

   B中選擇任意cookie可在C區域對KeyVaule進行編輯,點擊『√』確認修改,『+』添加一條新cookie,『-』刪除選定cookie  (被修改的cookie項背景顏色會改變)緩存

 

   2: cookie添加屬性 domain path 等  默認會爲每一個cookie添加 path = / 的屬性服務器

  

B區列表雙擊任意cookie項,彈出編輯框(以下圖)微信

 

  可在Attributes中修改屬性 點擊『comfirm』按鈕確認修改 (水印爲示例)cookie

 

 

 添加屬性後會顯示在B

 

在A區域直接編輯

     若是您瞭解Cookies的標準格式,您能夠在A區直接編輯Cookies(當格式錯誤時該區文字會變爲紅色)

     注意若是在A區對Cookies進行過編輯,全部cookie使用默認屬性

     能夠複製保存A區的信息,用於後面的調試或發送給其餘計算機使用。


      

向瀏覽器寫入Cookies

 

 

 

編輯好cookies後,選擇須要寫入cookies的網站

Url Filter 中填寫須要寫入的網站

選擇『Inject Cookies Inject Always

Inject Cookies:  當瀏覽器發起請求且url包含Url Filter中的值,則cookies被寫入瀏覽器,但僅寫入一次即被置爲失效 (由於一次寫入瀏覽器就會獲得指定cookies

Inject Always:  當瀏覽器發起請求且url包含Url Filter中的值,則cookies被寫入瀏覽器,該策略會一直有效,直到用戶取消勾選

 

 

 

如圖當瀏覽器請求baidu時,寫入操做發生。(被修改過的請求在session列表中會顯示黃色高亮,並有log打印)

 

 

 

在瀏覽器中能夠看到Cookies已經被寫入同時也加上了HttpOnly 屬性(有2個是由於Url Filter 僅匹配了www.baidu.com, 全部 baidu.com/img 也匹配成功了,2cookies路徑不一樣)

若須要徹底匹配則在Url Filter*開頭便可,全匹配須要帶上http//協議名 及?後查詢參數 (*https://www.baidu.com/   表示徹底匹配首頁請求,https://www.baidu.com/test 也不會被匹配)

若是 Url Filter填空則表示匹配任意請求 

 

在瀏覽器中直接寫入微信或支付寶公衆號Cookie,到任意站點甚至本地ip進行本地調試,也能夠在不一樣客戶端瀏覽器之間共享cookies

 

 

  • 經過插件修改response

 

 

 

Free cookies 能夠輔助修改請求的響應頭及響應內容,主要是方便即時替換(對response的徹底控制及其餘編輯功能,能夠直接使用Fiddler自帶AutoResponser功能,使用方法詳見http://docs.telerik.com/fiddler/knowledgebase/autoresponder

Change Response 也一樣使用Url Filter 中的篩選,一旦匹配成功且Enable Change處於勾選狀態,該請求內容的返回內容中Replace 指定字符串被替換爲下方內容(上圖可樂被替換爲娃哈哈),同時右邊heads列表中內容會被添加到響應頭中

 

Change Response 啓用Response修改功能

Only Add Head Response僅添加頭部

Regex Replace中的內容是否爲正則表達式

Replace :須要替換的內容,若是該項爲空,則表明整個替換(Response會被整個替換爲下部文本框中內容)

 

被修改後的請求,在session列表中背景色會顯示爲暗紅色

下圖爲將jd.com 網站內容中可樂替換爲娃哈哈的效果

 

 

 

部分狀況下咱們只須要更改返回的heads,好比通知瀏覽器強制更新,或禁用緩存

下圖爲指定網頁https://item.jd.com/4431446.html 禁用緩存(添加Cache-control: no-store返回頭)的例子。

 

 

 

下圖爲直接替換https://www.baidu.com/ 頁面(替換的內容爲bing的首頁html內容)

將replace填空,下方內容填寫完整的html(也能夠是其餘返回json,xml等)

 

 

 

 

 

  • 使用RAW模式徹底控制相應(包括響應行及響應頭)

使用RAW模式須要您對HTTP response格式有必定了解

 

點擊如圖 raw模式圖標切換進入 Raw 編輯模式

『Please select template』:您能夠選擇一個http相應模板,而後在模板中進行編輯,固然您也能夠不使用任何模板

『Enabled』:是否啓用替換功能

『Response Direct』:勾選此項請求將直接返回客戶端,而不向服務器發送請求

點擊右側關閉圖標可退出Raw編輯模式

Url匹配仍然使用上文 Url Filter (匹配規則維持一致)

 

使用Raw  將baidu重定向到google

 

如上圖在Url FIlter處填寫匹配規則

選擇302 Redirect模板,修改模板中lacation內容

在baidu下次請求時即會返回咱們指定的內容 (以下圖)

 

 

使用Raw模式直接返回文件等二進制數據

如圖完成配置,在返回實體中按上圖格式填寫本地文件地址(能夠在編輯區域鼠標右鍵選擇add file 完成本地文件的添加)

效果以下圖

 

 

 

 

FreeCookies插件源代碼(gitbub :  https://github.com/lulianqi/FreeCookies   )

相關文章
相關標籤/搜索