某红书加密参数分析

一、抓包分析

登录采集,通过手机号接收短信验证码登录,采集小红书主页发文内容。
请求参数:

"x-b3-traceid": "",
"x-mns": "",
"x-s": "",
"x-s-common": "",
"x-t": "",
"x-xray-traceid": ""

在这里插入图片描述
需要解决以上6个参数的加密过程

二、 加密位置分析

1、x-b3-traceid
function generateTraceId() {
    for(var e = "", r = 0; r < 16; r++)
        e += "abcdef0123456789".charAt(Math.floor(16 * Math.random()));
    return e
}
2、x-mns

在这里插入图片描述

r.headers["X-Mns"] = window.mns.getMnsToken(p, u, g) || ""
3、x-s、x-t

在这里插入图片描述

4、x-s-common

在这里插入图片描述

三、参数生成方式

1、x-b3-traceid
function generateTraceId() {
        for (var e = "", r = 0; r < 16; r++)
            e += "abcdef0123456789".charAt(Math.floor(16 * Math.random()));
        return e
    }
2、x-s-common

在这里插入图片描述
直接在该处调试扣代码即可。

3、x-mns
"awbPipNEt4xK54YWPidLy8Yazp7OREFwLuBiBc5nd3hBmJp3zZzxTaIEw5L1I/Yt9ax6RPOBoYotdtJky8/jT6ctFe/BN08lanl8bH+uX1MFBWF6cubxB5EbNTFEYJIOnhfj3XM9v8p5/H1xuhYJZFWH7vpno4TQMxf073DRfwKYF6wH3DcMZxT7Jfh5RwhQREo+zO24BOlt++bGjGnyDD4/Ile7m5nlZBE22E1IJtidv9fd3v547b01w8R719oyBfLXxXfjkDvymMDTQDMpO2yOIch6TOiNlCiZkCRGfYTQbGFzL56ZvN6vpKo+Y+yfGGmJPh1eKote9gkBp9om3DjQve6uDFHmSPujnvudDw1yOWOXXX7KN4MLXvvjlFnQOXytwoZnMaTcIyNK4T4XI0RhuQ4XaKa7I5cPWp1gGGFuT0pLFP1bwSk2vagXPIFaCwJvGITWgJRljQLaCajBZBi9ddZJ5kvQCRjFBkR+6Z7okTT8uvv3Fze2i2h4E5N/71"

分析加密参数,长度514,猜测可能是使用“fromCharCode”方法生成的,在全局进行搜索,总共有四处使用该方法,打断点,查看结果
在这里插入图片描述
发现该处最有可能生成,在该处打日志断点,将结果与生成的x-mns参数对比:
在这里插入图片描述
生成结果基本一致,可以确定该处就是生成x-mns参数的位置。
该参数分为两部分:前三位+511位,总共生成514位的字符串。
a)511位生成分析:
b)3位生成分析:
未完成··· ···该处作者能力有限,实在不知道该如何生成,抛砖引玉了,期待大佬能够回复

4、x-s
a)分析加密参数:
atob("eyJzaWduU3ZuIjoiNTYiLCJzaWduVHlwZSI6IngyIiwiYXBwSWQiOiJ4aHMtcGMtd2ViIiwic2lnblZlcnNpb24iOiIxIiwicGF5bG9hZCI6ImMxYzczNmVlYzM2MjcwN2FhMmU4YzAyNWJiNDczMGExM2I0Y2QwMzM4ZDI1MjJjMzdmNGFkNjNlYTExMWQzZGRmNGI3MGI4NWY4ZjE5YzcxMmQ4MjY2MWQ0YzM3MTJmNDI3ZWVkYzFlMTdhZGRiYjJjNjVlNWNjN2Q2M2ZiZWI3Y2U3ODkyMDgyZjdmMzg0NDYxZWIyMWZiMjg4NDdhZWJhZGNkMjczODBiYzUyODM4OWY2NDUyYmJjMTg3ZjBhNzBhMGIxNjdkNzY3ZmQxMmUzZTJiMDMyOGQxNGIzMWJjMjdjMzMwYzBjOTVkYjc1YzZkZTg3MjM1ZmQzMmUyOTkwMjM4YmRlN2IxY2E0YjQ1YWI0MzFkNGNjYWY1MDgwMWVkOTg4OWE5ZmY4N2JmNzlmYmRlZTlmMWQ4ZTI1NmNkYmI5NTk3M2E3OWJjY2VlNWIxYTg5NTU5ZTczN2RjOWFmZDk3OTAxZjBiNTc5NzlmYmE2OThhYjUyMDk4OWE3YzQwYzhjYTlkMjcyZGEyMThlYzg1MTcwNjdkMzU1NWFkIn0=")
====>
'{"signSvn":"56","signType":"x2","appId":"xhs-pc-web","signVersion":"1","payload":"c1c736eec362707aa2e8c025bb4730a13b4cd0338d2522c37f4ad63ea111d3ddf4b70b85f8f19c712d82661d4c3712f427eedc1e17addbb2c65e5cc7d63fbeb7ce7892082f7f384461eb21fb28847aebadcd27380bc528389f6452bbc187f0a70a0b167d767fd12e3e2b0328d14b31bc27c330c0c95db75c6de87235fd32e2990238bde7b1ca4b45ab431d4ccaf50801ed9889a9ff87bf79fbdee9f1d8e256cdbb95973a79bccee5b1a89559e737dc9afd97901f0b57979fba698ab520989a7c40c8ca9d272da218ec8517067d3555ad"}'
b)使用蔡老板的万能还原框架,先将混淆代码进行还原;
c)小红书x-s参数(56)还原记录
5、x-t

在x-s中生成

6、search_id

随便一搜就有,直接奉上源码

function createSearchId() {
    var r = BigInt(Date.now())
        , o = BigInt(Math.ceil(0x7ffffffe * Math.random()));
    return r <<= BigInt(64),
        (r += o).toString(36)
}
console.log(createSearchId())
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值