js hook cookie


 

 

//當前版本hook工具只支持Content-Type為html的自動hook
//下面是一個示例:這個示例演示了hook全局的cookie設置點
(function() {
    //嚴謹模式 檢查所有錯誤
    'use strict';
    //document 為要hook的對象   這里是hook的cookie
    var cookie_ = "";
    Object.defineProperty(document, 'cookie', {
    //hook set方法也就是賦值的方法 
    //當前也可以hook get方法
     set: function(val) {
            //這樣就可以快速給下面這個代碼行下斷點
            //從而快速定位設置cookie的代碼
            console.log('Hook捕獲到cookie設置->', val);
            cookie_ = val;
            return val;
              },
     get: function(val) {
            //這樣就可以快速給下面這個代碼行下斷點
            //從而快速定位設置cookie的代碼
            console.log('Hook捕獲到cookie獲取->', val);
            return cookie_;
              }
      });
})();

 

 

 

// ==UserScript==
// @name         cookie
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       公眾號:python學習開發
// @include      *
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    var cookie_cache = document.cookie;
    Object.defineProperty(document, 'cookie', {
        get: function() {
            console.log(cookie_cache);
            return cookie_cache;
        },
        set: function(val) {
            debugger;
            var cookie = val.split(";")[0];
            var ncookie = cookie.split("=");
            var flag = false;
            var cache = cookie_cache.split(";");
            cache = cache.map(function(a){
                if (a.split("=")[0] === ncookie[0]){
                    flag = true;
                    return cookie;
                }
                return a;
            })
            cookie_cache = cache.join(";");
            if (!flag){
                cookie_cache += cookie + ";";
            }
        },
    });

})();

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM