本次逆向是shopee的请求头反爬参数的第一部分
参数定位
shopee是反爬届中参数复杂程度较高的,我们可以看到复杂的参数生成以及代码混淆,在请求头中,比较重要的参数是下面这些:
我们这次先解决比较简单的两个,一个是x-sap-ri,另外一个是af-ac-enc-dat这两个参数。
af-ac-enc-dat
在以前的版本中,例如211001这类的版本,这个参数是十分复杂的,但是在现在这个版本下,这个参数就很简单了,以及不是风控的关键。我们全局搜索参数关键字即可获取数据。
function y() {
var e, t = function (e) {
for (var t = "", n = 0; n < e.length; n++)
t += e[n].toString(16).padStart(2, "0");
return t
}(function () {
for (var e = new Uint8Array(8), t = 0; t < 8; t++)
e[t] = Math.floor(256 * Math.random());
return e
}());
return (e = {})["af-ac-enc-dat"] = t,
e
}
简单分析一下代码就知道,这个是一个随机数。
x-sap-ri
这个参数就不像上一个参数这么简单了,我们首先需要定位到参数生成的关键位置,通过请求链我们可以发现这个参数是在一个sap-hook-latest.js中生成的,通过名字我们可以发现,这个应该就是参数生成的文件了。
我们点进文件可以发现,这是一个巨大的webpack,然后外加超强混淆,我们需要耐心一点,一步一步去跟一下,找到他的核心代码位置。
完整文件见博客:https://xsblog.site/post/6
后记
这个参数其实也是很简单的,主要就是中间有点变化,他把随机数变成伪随机的了,我后端检测的时候只需要简单检测一下就可以干掉一大批纯算用户。