FreeCookies 插件安裝
1:您的計算機需要已經安裝Fiddler (如未安裝,請至官網下載安裝 http://docs.telerik.com/fiddler/configure-fiddler/tasks/configurefiddler)
2:進入Fiddler安裝目錄下的Scripts目錄下,將FreeCookies.dll復制到該目錄下? (下載請至:https://github.com/lulianqi/FreeCookies/raw/master/bin/Debug/FreeCookies.dll 或?http://lulianqi.com/file/FreeCookies.dll? ?)
?
?
3:重啟Fiddler即可在面板中出現 free cookies 標簽
?
?
?
?
FreeCookie使用
-
通過截獲瀏覽器請求response 的head頭,并修新增set cookie頭,達到修改瀏覽器cookies的效果
??1: 獲取/編輯 cookies?
?
?如上圖通過在Fiddler左側session面板中選擇任意請求,點擊『Get Cookies』按鈕即可獲取該請求所帶有的所有Cookies
?
??
?獲取cookies后,會顯示在UI界面中,A區域為cookies原始信息,B區域為cookies的格式化列表展示,C區域編輯區可以對B中單條cookie進行編輯
?? 在B中選擇任意cookie可在C區域對Key及Vaule進行編輯,點擊『√』確認修改,『+』添加一條新cookie,『-』刪除選定cookie? (被修改的cookie項背景顏色會改變)
?
? ?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 也不會被匹配)
如果 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? ?)
?
?