逆向网址:网易云歌曲

说明:该网站的歌曲的链接是加密的 如图

话不多说直接上案例

1.找到音频链接的生成接口

我们检索该加密后的值  0000196adc365ab0fa90a308443121(当然vuutv的值也可以)

这串值肯定是在别的地方传过来的,我们要找到该接口

这里我们就可以确定 音频链接是在这叫 v1 的接口响应出来的

2.分析接口

接下来只需要分析该接口 如图

加密值有三个:

        1.csrf_token 分析几次可知是常数(对每个用户来说是唯一的)

        2.params 

        3.encSecKey 

下面两个肯定都是要逆向的 

3.找到数据加密位置并逆向

找到数据加密位置方法:直接检索关键词 params和encSecKey 都可以 如图

继续分析

var bYE2x = window.asrsea(JSON.stringify(i0x), bjp3x(["流泪", "强"]), bjp3x(zy5D.md), bjp3x(["爱心", "女孩", "惊恐", "大笑"]));

一个一个分析,可以知道 iox中变的就只有id 而后面的三个都是常数

再就是分析加密函数 window.asrsea 我们进入函数内部 简单分析 如图

可以发现他们需要的函数都封装在一个自执行方法中,所以我们直接将这自执行方法扣下来

然后运行会报 ReferenceError: CryptoJS is not defined 这个错误 

他的意思是:CryptoJS未定义

这里有两个解决办法:

        1.到前端去找CryptoJS的定义位置

        2.用nodejs中的crypto-js自己实现(经测试没问题)

如图

接下来我们继续运行,缺啥补啥就行,一共差不多30多个函数

结果没问题

4.通过py实现

我们要先获取到歌名和歌的id

然后获取到对应的加密参数 最后发送请求获取歌曲二进制数据即可

ok 没问题 以上就是全部 感谢观看

代码用途
本代码仅供学习、研究和交流使用,禁止用于任何商业用途或非法用途。使用者应对其行为负责,作者不对代码的滥用或不当使用承担任何责任。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐