某度旋转逆向二次加密更新
最近一段时间,某都更新了旋转js代码,这样就导致之前的旋转js逆向不可用了,但是发现新的js加密逻辑其实难度也不大,就是在原来的基础上,再加了一个二次加密过程。等于说进行了2次加密。下面简单讲解一下。
通过请求返回数据分析,旋转角度正确返回的参数信息是op=1的,所有只要返回op=1那么就意味着js逆向旋转正确了。通过一次错误旋转角度,可以看到请求参数是需要fs,而fs是加密获取的。可以看到fs是mkd_v2.js中进行加密的。
在这个位置打上断点,下面开始一步步分析fs的加密逻辑
断点跟进,发现这个参数word就是包括角度、图片backstr和旋转轨迹一些信息,以及对as参数进行了加密
紧接着是对加密的as和word进行aes中ecb加密模式
扣出js代码进行nodejs进行生成
接下来是二次加密,对第一次加密的fs进行再次加密
扣出js代码进行nodejs进行生成
接下来在代码里进行模拟请求,直截取部分代码。
运行代码输出结果为op=1了,代表逆向成功
这一步做好了,就可以做协议二级域名绑定,协议批量非站点提交了以及其他地方。只要接入逆向旋转就可以了。如果有需要这段js代码,需要有偿获取,研究不易。