声明
本文章中所有内容仅供学习交流使用,不用于其他任何目的,不提供完整代码,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关!
目标
- 目标网站: aHR0cHM6Ly93d3cub2tsaW5rLmNvbS9jbi9idGMvcmljaC1saXN0
- 研究内容: headers中x-apiKey值得生成
流程分析
首先打开f12然后点击下一页找到数据接口,因为是个xhr请求所以这里直接下xhr断点。
断点断到后直接点击如图所示得堆栈,然后重新下断点
通过在控制台打印输出,我们可以看到d(n)就是我们要找的函数入口,n参数中的offset就是当前页码乘以10,limit参数是个固定的值表示查询20条数据。然后鼠标悬停在d函数上去看它的函数体。
然后这里逐层去分析这个函数的返回值 看看x-apiKey的值是在哪步生成的
// 这是要调用的函数
(0,i.Z)(
//这是传入的第一个参数
(0,i.Z)({}, t),
//这是传入的第二个参数
{},
//这是传入的第三个参数
{headers: (0,i.Z)((0,i.Z)({}, t.headers), {}, (0,a.Z)({}, u, s.Z.getApiKey()))}
)
然后控制台一个参数一个参数的打印出来看看
最后我们可以看到u就是我们要找的变量x-apiKey, s.Z.getApiKey()返回的值就是我们要研究的值。然后追进去去看看这个值的生成过程。
这里就是这个值的生成流程 然后抠出来稍稍改一下调用就算大功告成了