064-WEB攻防-JS应用&反调试分析&代码混淆&AST加密还原&本地覆盖&断点条件
064-WEB攻防-JS应用&反调试分析&代码混淆&AST加密还原&本地覆盖&断点条件
知识点
1、JavaScript-反调试&方法&绕过
2、JavaScript-代码混淆&识别&还原
JS反调试
程序加入反调试:实现防止他人调试、动态分析自己的代码
检测调试方法:
- 键盘监听(F12)
- 检测浏览器的高度插值
- 检测开发者人员工具变量是否为true
- 利用console.log调用次数
- 利用代码运行的时间差
- 利用toString
- 检测非浏览器
常见绕过方法:
- 禁用断点法
- 条件断点法
- 此处暂停法
- 置空函数法
- 本地覆盖法
简单案例:咸鱼解析平台
键盘摁下:CTRL+SHIFT+I 或者 F12 就会调出开发者工具 但是此刻网站无法播放视频 也无法对网站的流量进行抓包 得关掉开发者工具才行
禁用断点法
打开开发者工具 在右边这里点击禁止断点
优点:浏览器即可正常播放视频 数据包也正常运行
缺点:一旦启用禁用断点 不能在进行断点了


条件断点法
- 鼠标有点编辑断点 添加条件为flase 让这个禁用的函数为假 即可绕过
此处暂停法
- 这个跟上面有点类似 在debug这里右键选择永不再此处暂停
置空函数法
- 这个感觉更像是结合 使用禁用断点法 让网站的流量包正常显示
- 然后在网络包里面找
debugger禁用断点的函数 出现的地方 - 然后在控制台这里 重写函数 将里面的内容置空 让函数没有内容执行即可绕过 也称 hook技术
本地覆盖法
- 打开点击有键发现鼠标给禁用 在页面f12多按几次即可进入开发者工具
- 使用禁用断点法 让数据包正常显示在开发者工具栏里面 全局搜索关键字
检测到非法调试dndebug里面出现过 - 这两个文件里面出现endebug
- 在浏览器源代码这里 覆盖这里 新建一个文件 名为aqistudy 将代码保存在我们背地替换的文件里面 让浏览器背地访问加载代码
- 在这里拉到出现endubug过滤代码那里直接注释掉 另一个文件也是 注释完后刷新即可正常调试打断电了
JS逆向-混淆加密-识别&还原
代码混淆加密:上述几种方法,已经达到了反调试的效果,但如果他人查看代码,也可能被找出检测功能并删去。为了防止反调试功能被剔除,我们可以对JS代码进行混淆加密。
开源代码混淆解密平台:JJEncode AAEncode JSFuck
AAEncode加密
1 | function xiaodi(){ |


JSfuck加密
- 将加密后的代码放进控制台正常输入结果
- 将最后一段去掉暴露源码
商业混淆解密
地址: [阳江钓鱼频道][https://www.eisk.cn/]

如何解密还原?
前提:知道对方使用了什么加密
- 复制里面的代码 丢进解密网站
- 可以先进行自动识别 然后在选择性的解密方式解密
- 在网站里面找到一些js文件解密后使用了AES加密
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 0xMouise!



























