某音乐参数逆向分析

本文介绍了如何通过逆向工程技术来获取易云音乐的歌曲真实地址,主要涉及接口分析、加密参数解密以及源码实现。文章适合逆向初学者,通过解析加密函数window.asrsea和相关辅助函数,展示了如何处理动态生成的加密数据,从而能根据歌曲ID更换来获取不同歌曲的地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

声明:本文仅限交流学习使用,请勿使用在任何非法商业活动,禁止用于非法用途。否则后果自负。如有侵权,请告知删除!

本次逆向目标为采集某易云音乐真实歌曲地址,难度简单,适合逆向初学者练手,仅供学习,源码在文章最下方。

目标网址:

aHR0cHM6Ly9tdXNpYy4xNjMuY29tLyM=

请求流程分析

1、随机点开一首歌曲,复制链接。
2、新建一个无痕窗口,打开F12,打开链接。
3、点击播放,可以找到存放歌曲的真实地址的接口。

在这里插入图片描述
分析该接口,可以看到主要提交了两个表单数据,格式如下:

params :xFV7hdq52mP4aeQhkR/lr99xZA+jznlqmn651M1B3/TDrlPBhC4FO5FuaBCv7uul1T3ZTL2pYN/WBTnkeKFSWJl8lbuhyzXIc4buJfbdtguA31eY8ZoTFmRhdOAYmwKK/C7oY3OGt3OlDKkDFowX7w==
encSecKey : 7afd112b56856ce059b5d3ebc95ea681aabf754189539a78ad05910543dfb03e8a2044d8d63bcd8842d356503d754c8a692e98d760690bd0bc6167b4d46e2d2165f49095f6b05dc1d5e17c6a6048da583bab32693cc055198db1f8034cb7caa73225ef8951bf686be52288cfc882d23e2e7cabfa8c6a74f3ddac303042bb4bca

加密参数分析

搜索加密参数名可以直接定位到加密点。
在这里插入图片描述
e3x.data 处打下断点,然后清空缓存刷新,网站会直接断下,根据右边作用域可以发现是在请求其它接口时也生成了这两个加密参数。
在这里插入图片描述
这里直接 F8 ,过掉所有断点,点击播放,直到右边作用域中的接口为我们想要采集的接口 enhance/player/url/v1

可以看到,params 和 encSecKey 都是由 bMs1x 得来。而 bMs1x 的生成在上一条语句。
var bMs1x = window.asrsea(JSON.stringify(i3x), bsi6c(["流泪", "强"]), bsi6c(Vx0x.md), bsi6c(["爱心", "女孩", "惊恐", "大笑"]))

其中关键点在于

方法 window.asrsea
i3x
方法 bsi6c
Vx0x.md

i3x 是一个对象,内容如下:
{ids: '[2034742057]', level: 'standard', encodeType: 'aac', csrf_token: ''}
我们通过分析可以知道除了 ids 其余的都是固定值,而 ids 正是歌曲 ID ,所以这个点我们就解决掉了,在采集不同歌曲时修改 ids 的值即可。
Vx0x.md 的值通过调试可以知道是固定的,写死就行。

然后就是喜闻乐见的扣代码环节,缺啥补啥。可以扣整体,也可以一个一个补,也不多。

bsi6c 大概补五六个函数和一个对象就可以了,主要是 window.asrsea。

在这里插入图片描述
b 是一个 AES 加密,可以通过调 node 的 crypto-js 库来实现,其余的慢慢扣就行。

源码

各平台参数逆向源码

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BuerCC

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值