欢迎光临
我们一直在努力

京东试用h5st参数

网址

通过抓包找到jd试用的网址:(base64)

aHR0cHM6Ly9wcm9kZXYubS5qZC5jb20vbWFsbC9hY3RpdmUvRzdzUTkydldTQnNUSHprNGU5NTNxVUdXUUo0L2luZGV4Lmh0bWw


开始操作

F12开发者模式,搜索 h5st,最后找到main.6d****82.js文件

分别给 c.h5st = y 和 w.h5st = y 附近多打几个断点,然后滑动页面加载下一页

 

可以看出y就是h5st,而 y = this[o(81, 0, 25) + t(0, 920, 0, 1148)](f, s, g);
挨个分析
this中包含了 _appId 和 _fingerprint 和_token_timestamp_version等信息,都是h5st中用到的
[在电脑浏览器登录京东试用的时候,cookie中sfstoken就是token]

 

8个参数,现在就剩下5和8了,再往上看,找到了调用参数(f, s, g)
f为第五个参数,g为第八个

 

继续往上看, g=v[t(0, 1269, 0, 1201)][t(0, 1121, 0, 1110)]()

可以得出参数8的加密方式、key和iv等信息

而iv和key又可由hex解码解出

 

iv key
0102030405060708 wm0!@w_s#ll1flo(

然后我们解出参数8的明文

协议头和fp等参数组成,所以判断参数8几乎为固定的

 

 复制代码 隐藏代码
{
  "sua": "Linux; Android 11; Pixel 5",
  "pp": {},
  "fp": "4975599160384842"
}

接下来继续往上翻,看参数5 f = Jd.HmacSHA256(l, n)[o(93, 0, -78)](Jd[t(0, 812, 0, 820)][t(0, 1335, 0, 1533)])

可以看出f是又HmacSHA256得来的,我们断点Jd.HmacSHA256,F8继续执行脚本,并随便点一个类目

可以看出t是加密文本,n(token)是key,使用HMAC SHA 256加密

 

{我们翻堆栈能看到一个test}

 


补充:test函数的获取

补充:感谢@幽溪左畔 的提醒,原来这个test函数,是通过ajax请求拿到的,所以说每次清空cookie之后的算法都是不一样的。(接口:..com/request_algo?g_ty=ajax)
通过抓包又发现一个加密参数expandParams

 复制代码 隐藏代码
                    data: JSON[p(0, 964, 945)]({
                        version: s,
                        fp: i,
                        appId: a,
                        timestamp: Date[f(775, 0, 753)](),
                        platform: r[p(0, 1003, 965)],
                        expandParams: c
                    }),

往上翻,拿到c

 复制代码 隐藏代码
c = e[o(1191, 0, 1170)];        //也就是e.env

 

通过分析,我们拿到key和iv,是和刚才的一模一样的信息

iv key
0102030405060708 wm0!@w-s#ll1flo(

明文中,包括了很多信息....cookie、ua、页面宽高信息、url、Origin、appid、fp等信息。

 


boby参数

我们继续执行脚本,发现有又执行了一次Jd.HmacSHA256,此次得到的结果就是第五个参数key就是刚才HMAC SHA 256加密的结果,那么t(加密文本)中有一个boby是64位的未知数,我们看看boby是如何来的

 

我们搜 body: ,发现一个可疑的json,和刚才的t参数拼接后是一样的

 复制代码 隐藏代码
c = {
    functionId: t.functionId,
    clientVersion: i,
    appid: s,
    client: u,
    body: Br.a.sha256_digest(JSON.stringify(a)).toString()
},

我们下断点,F8继续执行脚本,并随便点一个类目

 

能看出body的密文其实的post的时候的body的参数进行了SHA256加密


h5st参数大致流程

functionid等,是根据api的functionid变化的

赞(0) 打赏
未经允许不得转载:哈哈网 » 京东试用h5st参数

相关推荐

  • 暂无文章

评论 抢沙发

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏