1. 程式人生 > >使用FreeCookies 控制瀏覽器cookies及修改http響應內容

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

pan eba ocs ali 瀏覽器中 可樂 led 只需要 jpg

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
    head頭,並修新增set cookie頭,達到修改瀏覽器cookies的效果

1: 獲取/編輯 cookies

技術分享圖片

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

技術分享圖片

獲取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』按鈕確認修改 (水印為示例)

技術分享圖片

添加屬性後會顯示在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 也匹配成功了,2cookies路徑不同)

若需要完全匹配則在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響應內容