一.抓包分析json,获取加密方式
1.抓包获取音频界面
f12打开抓包工具,播放一个(非vip)视频,点击“媒体”
单击打开
可以复制URL,发现就是我们要的音频。
复制“CKwRIJEEXn-cABa0TgCj-ek6”,搜索,可以找到链接的来源
2.找到json文件,分析加密
复制“/revision/play/v1/audio”,搜索,找到我们需要的json文件(找不到的话就刷新浏览器)
将json文件在‘源代码’里打开,发现&34;: z.getSign() 可能是加密的方式
打上断点运行
经过断点运行分析 (运用单步运行进行分析):
t 始终为 himalaya-
n,e 为服务器时间戳, 通过可得
r 为 当前时间的时间戳
l(100)为100以内的随机数
此时我们可以得知参数被加密后的格式为
json是一种文本格式,json格式的文件可以用记事本打开。1、右击需要打开的json文件,在展开的菜单中点击“打开方式。”按钮选择打开方式:2、在展开的打开方式中找到“记事本”这个选项,然后双击记事本图标:3、这时json文件。
立创怎么打开json文件,{himalaya-服务器时间戳} +(100以内随机数)+服务器时间戳 +(100以内随机数)+当前时间戳
但是!!!!
注意还有下述操作,鼠标放在a(e)上,出现白框,点击链接,如下:
a(e)函数
在6660行打断点运行(合理使用‘运行’和‘单步运行’)
json格式文件打开的方式一:用记事本打开 右击json格式文件,选择打开方式,会有记事本可以选择,点击就可以打开了。json格式文件打开的方式二:可以用浏览器打开 用样的右击json格式文件,选择打开方式,若是不能直接看到浏览器。
可以看出输入为 {himalaya-服务器时间戳},继续运行看看输出为啥
json是一种文本格式,json格式的文件可以用记事本打开。1、右击需要打开的json文件,在展开的菜单中点击“打开方式。”按钮选择打开方式:/iknow-pic.cdn.bcebos.com/a5c27d1ed21b0ef49c63923bd3c451da80cb3ecf"target。
返回&34;,是32位数字,合理猜测是md5算法,找个md5在线转换器验证一手
因此,a函数就是md5算法
继续运行,看看最终返回给xm-sign的是啥
1、我们首先要在电脑上下载安装sublimetext3。2、双击打开下载的软件。3、直接把json格式文件拖入sublimetext3即可。4、或者右击json格式文件。5、点击打开方式。6、下拉找到记事本。7、最后点击记事本就可以打开json格式文件。
故可以得出结论, 参数被加密后的格式(最终版本)为:
二.python代码实现
三.总结