06-hook技术之hook cookie
·
上一文我们讲了hook 响应内容,本文我们讲解一下hook cookie
本文用到的网站:hook-cookie同花顺
打开网页,打开开发者工具,打开网络面板xhr抓包,刷新页面一气呵成:

只有一个数据包,点进去,然后上方选择cookie,会发现v值加密:

今天来寻找v的加密位置,我们先看一下今天的hook代码:

今天我们没有写在控制台欸???这个片段可以自己创建然后永久保存(写完记得Ctrl + S保存),待会说这个,先来讲解代码:
这行依旧备份:
var cookie_val = document.cookie
这行重写方法,不一样的点就在这里,Object.defineProperty直接括号,括号里第一个参数是要控制的对象,第二个是对象里的key,然后重写里面的内置方法get和set(主要是set):
Object.defineProperty(document, 'cookie', {
set: function(new_val) {
debugger // 一传cookie的值就debugger
cookie_val = new_val
},
get: function() {
return cookie_val // 返回备份
}
}
/*
Object.defineProperty是个啥:
就是监控某一个对象(这里是document)中某一个属性(这里是cookie),
他会先进入咱自己写的这个方法,所以一有传cookie的值就debugger
*/
然后运行这个代码:

然后点击翻页,就会断下来:

进入上一个栈:

下面面寻找下划线的生成逻辑:

进入上一个栈分析:

在控制台打印一下:

次次不一样,这里就是加密位置了
下一文我们讲解xhr断点的原理,也与hook有关,我们hook它的open函数,本文若有不对的地方,请及时指出共同进步,加油加油
更多推荐



所有评论(0)