1. 接口地址:aHR0cHM6Ly93d3cuemhpaHUuY29tL3NlYXJjaD90eXBlPWNvbnRlbnQmcT0lRTUlOTIlOEMlRTUlQjklQjMlRTclQjIlQkUlRTglOEIlQjE=
2. 加密位置:
直接搜关键词 X-Zse-96
进入js 文件在此打上断点后打包就可以断住了
可以看到X-Zse-96 的值是 t2 + "_" + tO,t2 的值是固定的:2.0; tO 是 tT.signaturn 来的, 而tT 是由ed 函数生成的,te 是去除域名后的接口地址, tb 是固定值:'101_3_3.0', TE 是cookie d_c0的值:'AEDZztKUmhaPTmec9D8qO_3TWjL3a6xOB9c=|1681110900' 也是固定的
继续进入ed 方法
加密的位置是:(0,tJ(ti).encrypt)(ty()(tp))
tp 是上面的 tb + te + TE 拼接而来的
ty() 其实是MD5 消息摘要算法
继续进入加密函数:此时是最终加密位置
把代码复制本地折叠后 发现是webpack 打包的,先找到加密位置所处的模块是1514
把当前模块复制下来, 再找到加载器, 然后去找加载器,在顶部找个加载器打断点,刷新网页后即可断住
进入加载器后,此时的 l 函数就是加载器了,这个文件是自执行函数,整个文件复制下来
把上面的模块和自执行函数扣下来:模块只用到下面这两个
定义一个变量 _mars 把加载器导出来:
加载器调用 1514 模块 下ZP 函数
发现缺少环境:
接下来采用jsdom 补环境方式:补上下面的环境即可
加密结果: