常见hook脚本

常见的hook脚本

过定时器setInterval

1
2
3
4
5
6
7
8
9
10
11
12
var _setInterval = setInterval
setInterval = function (a,b) {
if(a.toString().indexOf('debugger') == -1){
return function(){}
}else{
_setInterval(a,b)
}
}

Function.prototype.toString = function () {
return `function ${this.name}() { [native code] }`
}

定时器死循环

1
setInterval(() => {}, 500)

构造器hook

1
2
3
4
5
6
7
8
Function.prototype.constructor_old = Function.prototype.constructor;
Function.prototype.constructor = function (argument) {
if (argument === 'debugger') {

} else {
return Function.prototype.constructor_old.apply(this, arguments)
}
}

cookie hook

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var cookieTemp = '';// 定义空字符串
Object.defineProperty(document, 'cookie', {

set: function (val) {
// 设置 cookie的信息,检测到 cookie的值的信息
if (val.indexOf('m') != -1) {
debugger; // 设置断点
}
console.log('Hook捕获到cookie设置->', val);
cookieTemp = val; //获取到cookie的信息;
return val;
},
get: function () {
return cookieTemp;// 返回 cookie的信息
},
});
1
2
3
4
5
6
7
8
9
10
11
12
13

console = new Object()
console.log = function (s) {
while (1){
for(i=0;i<1100000;i++){
history.pushState(0,0,i)
}
}

}
console.toString = '[object Object]'
console.log.toString = 'ƒ toString() { [native code] }'


常见hook脚本
https://xiamu.icu/逆向/常见hook脚本/
作者
肉豆蔻吖
发布于
2024年11月22日
许可协议