目录

充电学习中...

X

QQ音乐sign签名字段解析

QQ音乐sign签名字段解析

字段描述

出现在歌单详情等接口,请求url后面会跟一个sign字段,例如"zzap4rd5hjs5zkv626bc180091010583fc33cd2e160eca2",经过验证发现这个参数无法缺省,必须携带。

分析过程

1.找到加密位置

搜索对应的js中的sign关键词,如下图

image.png

这边可以看到sign来自于g参数赋值,那么向上找到g参数赋值位置:"z.getSecuritySign(m.data)",下断点调试。

image.png

可以发现传入的参数即为Post请求的body部分

2.g_tk字段解析

请求体中会带上这个字段,生成位置如下图:

image.png

生成逻辑比较简单,可以用自己的语言重写。

3.调用验证

通过静态分析js发现,加密的一系列方法,最终都在一个全局对象"M"中,那么我们传入加密参数进行验证

image.png

将加密值代入请求中,成功获得数据

image.png

sign字段构成分析

测试中发现sign由3端字符串拼接而成:"zzaj|51ny550yk|626bc180091010583fc33cd2e160eca2"(示例用|分割)

其中 第一部分固定 都为"zza",第二部分是一串随机字符,第三部分由__sign_hash_20200305方法生成,传入的参数为"CJBPACrRuNy7"+请求body

image.png


标题:QQ音乐sign签名字段解析
作者:Cubeeeee
地址:http://blog.nps.fuguicun.com/articles/2020/06/03/1591149783970.html