js逆向笔记
断点大法:
1.全局搜索
2.事件断点
3.xhr断点
4.FD hook断点 (debugger)
1 | (function (){ |
不用defineProperty可以用Proxy
5.通过html的函数名定位(遇到动态加载的js 利用FD的autoresponder替换本地JS 加入debugger)
扒代码:
webpack 的数组参数是识别要点
导出的函数是对象要new后才能使用
反调:
SOJSON在线加密
遇见自带debugger:
1.直接在那行下断点 右键edit breakpoints 改为false(不好用 浏览器会卡)
2.修改掉setInterval(注意定义 置空无效会重复赋值)
遇见反格式化:
找正则相关的操作或者直接把检测的函数变成一行
遇见混淆:
取值替换十六进制就可以
遇见死代码:
一般用while(1)或循环调用实现
还有window.window 调用window就会无限调用
加密后一般格式
编码
垃圾代码
解密代码+检测
真实代码
死代码
五秒防护:
碰到503欺骗浏览器的包,用FD抓。
看前面的包的源码知道传的参如何加密
滑动验证码:
分析流程
1.比对数据包,找出要分析的加密算法
2.扒出算法
3.分析轨迹,伪造拖动轨迹算法
4.找到滑块位置:CC神经网络,solo神经网络,差异度识别算法
短信验证码平台接口:
1.查看API使用
动态IP:
熊猫代理、讯代理
邮箱验证码:
1.临时邮箱
2.搭建自己的邮箱服务器
1.购买服务器、域名(最好是cn com)
2.安装宝塔
3.安装邮件系统
4.添加DNS解析