使用FreeCookies 控制瀏覽器cookies及修改http響應內容
FreeCookies 插件安裝
1:您的計算機需要已經安裝Fiddler (如未安裝,請至官網下載安裝 http://docs.telerik.com/fiddler/configure-fiddler/tasks/configurefiddler)
2:進入Fiddler安裝目錄下的Scripts目錄下,將FreeCookies.dll復制到該目錄下 (下載請至: http://lulianqi.com/file/FreeCookies.dll )
3:重啟Fiddler即可在面板中出現 free cookies 標簽
FreeCookie使用
-
通過截獲瀏覽器請求response
1: 獲取/編輯 cookies
如上圖通過在Fiddler左側session面板中選擇任意請求,點擊『Get Cookies』按鈕即可獲取該請求所帶有的所有Cookies
獲取cookies後,會顯示在UI界面中,A區域為cookies原始信息,B區域為cookies的格式化列表展示,C區域編輯區可以對B中單條cookie進行編輯
在B中選擇任意cookie可在C區域對Key及Vaule進行編輯,點擊『√』確認修改,『
2: 為cookie添加屬性 (domain ,path 等 默認會為每個cookie添加 path = / 的屬性)
在B區列表雙擊任意cookie項,彈出編輯框(如下圖)
可在Attributes中修改屬性 點擊『comfirm』按鈕確認修改 (水印為示例)
添加屬性後會顯示在B區
在A區域直接編輯
如果您了解Cookies的標準格式,您可以在A區直接編輯Cookies(當格式錯誤時該區文字會變為紅色)
註意如果在A區對Cookies進行過編輯,所有cookie使用默認屬性
可以復制保存A區的信息,用於後面的調試或發送給其他計算機使用。
3 向瀏覽器寫入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 也匹配成功了,2個cookies路徑不同)
若需要完全匹配則在Url Filter以*開頭即可,全匹配需要帶上http://協議名 及?後查詢參數 (*https://www.baidu.com/ 表示完全匹配首頁請求,https://www.baidu.com/test 也不會被匹配)
在瀏覽器中直接寫入微信或支付寶公眾號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等)
FreeCookies插件源代碼(gitbub : https://github.com/lulianqi/FreeCookies )
使用FreeCookies 控制瀏覽器cookies及修改http響應內容