JS逆向--Cookie生成
谷歌无痕状态打开网址 --- F12启动开发者调试工具:
调试界面如下:
我们看到了debugger,没有触发任何我们需要的信息,很明显该网站对我们调试进行了抵制。
问题:debugger无限反调试
解决方法:
问题1.0
先看Call Stack找到他的回溯方法,执行顺序由下往上执行。
思路:我们发现debugger界面停留在anonymous里面,依次往前推,如果_0x355d23不会执行,那么debugger就不会执行。最终最下面的annoymous不会执行,那么debugger就不会执行。
问题1.1
找到debugger的源头,将这个源头删除
我们既然想删除这个代码,在他们官网直接删除是不太现实的。
问题:本地JS调试
解决方法:
1.0
copy这个JS代码,删去我们刚才指定的部分。
2.0
在pycharm里new一个html文件,如下:
3.0
我们已经删除了debugger,然后点击右侧谷歌,启动这个JS
却发现这个界面任何东西都没有,F12开发者工具也没有debugger了
4.0
发现问题 debugger绕过了之后,任然是空白
仔细查看JS代码,发现是否有Regexp
的检测代码,防止有人本地调试
解决:用压缩工具将JS压缩:https://c.runoob.com/front-end/51/
同样的将压缩好的代码放入html中,再次启动谷歌查看:
发现问题:界面任然是空白,并且页面一直在闪:
仔细查看JS代码,是否有setTimeout的时间等待代码,让页面一直定时加载。
解决:查看setTimeout里面的参数是啥? Esc键 Console输出这个参数。
最终发现了reload()这个方法,全局搜索这个函数,发现:
我们将这两行代码全部删除,再次放入html中,启动谷歌
反调试就结束了,此时就可以进行断点调试了,接下来就是分析他的加密方法。
....