作者声明:文章仅供学习交流与参考!严禁用于任何商业与非法用途!否则由此产生的一切后果均与作者无关!如有侵权,请联系作者本人进行删除!
初步分析
我们先抓包看下x-s
长什么样子。
很明显x-s
是XYW_
加上一个JSON格式字符串的 Base64编码,我们来解码看看原始文本是什么。
{
"signSvn":"55","signType":"x2","appId":"xhs-pc-web","signVersion":"1","payload":"31e72e37c22408bd6ef26b0dc7a900a097d7e43b0f7c42fea858bcb9ce2959af1085070b7c69939302fb45af46dd33e67c594e165ae05e4df9208f24769d509c41858c5fe82146e8428f54b8ddb21ff6b7ac10bba9646577c56d67bd441f45d32878667fa67b185f568b665797657dbfc575d037fb9d3004961f645a109648c5ebd4e06ddf01702ecee5c23e15352f441c85b4222eb907c9063ea5ea34443793985706ed60dc2b309f1a678c1f695200c1feb8821220ee5a32d980c15c9250d7db3f2e61b378216dd5e0796f9c701d3c"}
可以看到只有payload
字段是加密了。接下来我们在JS代码中定位到x-s
的生成位置。打开F12,搜索"X-s"
,在这里打上断点。