chunchunboke

博客园 首页 新随笔 联系 订阅 管理

// 请求头hook 测试网站同花顺 OK

var header_old = window.XMLHttpRequest.prototype.setRequestHeader;
window.XMLHttpRequest.prototype.setRequestHeader = function (key, value) {
if (key=='k'){
console.log(key, value)
debugger;
}
if (key=='token'){
console.log(key, value)
debugger;
}
debugger;
return header_old.apply(this, arguments);
}

// cookie 测试网站同花顺 OK
(function () { var cookieTemp = ''; Object.defineProperty(document, 'cookie', { set: function (val) { if (val.indexOf('v') != -1) { debugger; } console.log('Hook捕获到cookie设置->', val); cookieTemp = val; return val; }, get: function () { return cookieTemp; }, }); })();
function xx () {
console.log(555)
}
aa=xx.prototype.constructor

aa() #aa 实际上就是xx在内存中的地址引用 和python 一样 (可能描述的太准确,但这样说好理解)


HOOK eval (测试网站: 银河证券)
(function() {
    // 保存原始方法
    window.__cr_eval = window.eval;
    // 重写 eval
    var myeval = function(src) {
        console.log(src);
        console.log("=============== eval end ===============");
        debugger;// 设置断点
        return window.__cr_eval(src);
    }
    // 屏蔽 JS 中对原生函数 native 属性的检测
    var _myeval = myeval.bind(null);
    _myeval.toString = window.__cr_eval.toString;
    Object.defineProperty(window, 'eval', {
        value: _myeval
    });
})();

 

posted on 2023-02-26 19:45  小鹅通  阅读(116)  评论(0)    收藏  举报