拼多多-----anti_content逆向分析
作者声明:文章仅供学习交流与参考!严禁用于任何商业与非法用途!否则由此产生的一切后果均与作者无关!如有侵权,请联系作者本人进行删除!
前言: 本篇文章主要对多多的anti_content
参数进行分析
逆向网站:
- aHR0cHM6Ly93d3cucGluZHVvZHVvLmNvbS9ob21lL2JveXNoaXJ0Lw==
主要流程:
- 重点是对于加密参数的跟栈与定位
详细分析:
请求接口
- 跟栈
这里我们直接用全局搜索的方法更方便,搜索的时候只有一个,直接断点即可,断点之后发现确实是在这里生成的,那么生成的方法就是在上一个
case
中异步生成的,也就是这个方法Object(x.a)();
我们进入到生成的方法中,继续断点运行,到这
r.messagePackSync()
是生成的方法,进去方法
最后发现在这里生成了
n[r("0x1bb", "A3e0")]
方法就在上面,其实就是调用dt
验证一下,那么我们就找到了加密的位置,只要成功执行
dt()
即可获取
将代码折叠之后发现,这是一个
webpac
套webpack
这种情况我们先扣外层的
webpack
,先找加载器,直接搜索模块的名字定位到加载的位置,然后通过加载的方法找到加载器
接下来分析里面的
webpack
,很容易就看出来其加载器就在代码的最上面,同时大家注意下面的代码
n(n.s = 4)
:可以分为两个部分看,括号里和括号外
n.s = 4
:给 n 这个函数对象加了一个属性 s,值为 4。n(n.s)
:调用 n(4),也就是执行第 4 个模块的代码。
而且我们需要的dt
就在索引为4的模块,所以这里我们不需要在调用了
然后我们将
dt
赋值给window
里面的属性
然后我们先调用外层
webpack
的模块,最后执行我们的dt
即可,这里面的window.kk
就是将外层加载器的方法赋值给了window
里面的kk
属性
请求接口
最后就是补环境,这个大家就自己去补一补。
成功截图:
此文章仅供学习参考,有疑问,建议或者纠正的欢迎大家交流!!!