网站链接
aHR0cDovL3d3dy5wYmMuZ292LmNuL2dvdXRvbmdqaWFvbGl1LzExMzQ1Ni8xMTM0NjkvaW5kZXguaHRtbA==
(base64解密后可见)
正文
抓包分析
首先,清除网站cookie后,发现有个无限debugger,点这个处理下就好。
然后到抓包页面,发现第一次请求失败,然后经过了一个302链接,然后set了一个cookie,再次访问,就成功了。那接下来就找这个链接是哪来的。
静态代码分析
那就模拟流程,先用代码请求下,发现返回了一串js代码
用博哥的工具网站(https://www.spidertools.cn/#/formatJS),格式化下,嗯,混淆过的,基本没跑了。啥也不说了,上ast
解混淆后的代码如下,1000多行变成了200多行(此处省略一万个蔡老板牛逼)
搜下url上的关键词,直接就搜到了,加密函数也很一目了然,就是这个y函数。
直接node执行下代码,报错的话,前面加上个window = {};就行,但是发现每次的结果都一样,而网站上的每次都不一样,应该是有动态参数的
再请求一份js,用博哥的工具,再对比下,嗯,只有这两行不一样,剩下的就是考验我们正则学的怎么样的时刻了
最后,在y函数里,把刚才匹配出来的,M和t作为参数,传进去,就能得到我们最后想要的这一代加密版本,通杀的结果了