吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 9961|回复: 76
收起左侧

[Web逆向] 获取九酷音乐文件源地址

[复制链接]
吴天王 发表于 2020-9-30 01:11
系统:Windows10专业版64
工具:Chrome developer tools、postman
语言要求:JavaScript

第一步:打开调试工具,随便播放一首音乐
>如果是第一次播放,会请求一次音乐文件,之后都是读取的缓存。

图1

图1



第二步:复制音乐文件地址,添加到断点。刷新页面看是否能捕获到该请求。刷新之后并没有捕获到,那么接下来换一种方式试试

图2

图2



第三步:查看播放按钮的点击事件。在图3中,可以看到有好几个点击事件。为了确定哪一个点击事件是有效的播放事件,这里可以保留一个点击事件,其他的都移除(点击Remove)。

图3

图3


第四步:经过筛选,获取到有效的播放事件

图4

图4



第五步:点击该点击事件(图4红色框内蓝色字部分),随后会进入到一个JS文件,我们点击箭头指示的按钮,格式化这个文件。

图5

图5



第六步:格式化之后,会进入到第1436行。这里下一个断点(断点位置会在1437行)

图6

图6


第七步:刷新页面,然后点击播放按钮。如果不出意外,会进入到断点处。简单看下调用了什么函数,变量中有哪些信息。有没有特别的地方(主要寻找音乐文件的地址)

图7

图7



第八步:单步调试,按F9或找一找图7红色框内第一行中的按钮。如果不知道这几个按钮是干什么的,那就随便点呗,反正点不坏!
图八是第一次单步之后的界面,这里也没有我想要的数据

图8

图8


第九步:继续单步执行(大概走6、7步),直到图9这个地方。这里可以看到this.status中有了音乐文件的播放地址(this.status.src);

图9(补)

图9(补)


第十步:搜索this.status.media或this.status.src赋值的地方,我只找到了this.status.media赋值的地方(图十中1265行)。
当然,这只是其中一种方式,还有其他方式也可以获取到这个播放地址,这里就只展示这一种。
在这里下个断点,然后刷新页面

图10

图10



第十一步:查看调用的函数,其实根据函数名这里已经可以找到获取播放地址的地方了。
但有点偷懒的意思

图11

图11


第十二步:从setMeIDA函数依次点击它下面的函数(先调用的函数在下面),直到图12这里,发现了media这个变量就是音乐文件地址

图12

图12


第十三步:继续看下面的函数,图13中可以看到yesplay函数中对media进行了赋值

图13

图13


第14步:在图13中520行下个断点,刷新页面。看看dict.get是干嘛用的。图14中可以到,它只是this变量中的一个值

图14

图14


第15步:继续看下面的函数,直到getmusicinfo这个函数,这个函数中的item变量包含了音乐文件地址

图15

图15


第16步:仔细看一下这个函数,如果在item变量没有值情况下,会请求一个JS文件。并把相应的数据储存到缓存中。
请求路径中的两个变量:id和tpath,id可以从当前播放路径获取,tpath不多说。

图16

图16



第17步:postman测试API,结果:可以获取到。

图17

图17


以下我总结三点
...

最后,如有违规我会及时删除

图12

图12

图13

图13

免费评分

参与人数 19威望 +1 吾爱币 +40 热心值 +17 收起 理由
默默看着你 + 2 + 1 谢谢@Thanks!
2152004 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
seeyou_shj + 1 + 1 热心回复!
Hmily + 1 + 20 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
wuliwuli + 1 我很赞同!
吾恋兮不知 + 1 + 1 谢谢@Thanks!
anlovedong + 1 + 1 谢谢@Thanks!
tony2526 + 1 + 1 热心回复!
ABC大叔 + 1 + 1 谢谢@Thanks!
丶峰宇 + 1 + 1 热心回复!
心在梦在 + 1 + 1 谢谢@Thanks!
樱落丶未央 + 1 + 1 热心回复!
唐小样儿 + 1 + 1 我很赞同!
梅洛 + 1 + 1 我很赞同!
火绒 + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
麟之游 + 1 + 1 我很赞同!
破竹而入 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
jack111nsy + 1 谢谢@Thanks!
策士 + 2 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 吴天王 发表于 2020-12-29 16:50
小飞虫 发表于 2020-10-2 14:33
现在网站是不是改了?我跑到第九步,单步调试就跟不上图片的步骤了
第一次:jcha2.js,1948,this.isDefau ...

这么久没回复,抱歉哈。能这么认真去看并且付出了实际行动,让我太感动了。

我刚才去调试了一下,确实跟上面的调试过程不太一样。他们应该也会偶尔更新JS吧,毕竟一直在运营。

首先,这个调试的目的是为了获取请求音频文件的API。可以跟上面的调试过程一样一点一点分析。也可以打开Google DevTools,直接大概的去看下请求的JS文件内容,看看有没有相关的东西。我刚才试了一下,根据他们的注释很快找到了一个获取下载地址的API。

图片排版确实有两张错了,总体影响不算大。

基础应该要求不算大。如果对此类型的文章感兴趣,强烈推荐看一下这个帖子:XXX视频cKey9.1的生成分析和实现
https://www.52pojie.cn/thread-948353-1-1.html

我这个非专业人士写的帖子比较生硬,可以看下这位大佬写的过程,很详细了。

免费评分

参与人数 1吾爱币 +2 热心值 +1 收起 理由
小飞虫 + 2 + 1 过去这么久还回复我,分给你

查看全部评分

seeyou_shj 发表于 2020-10-27 10:51
九酷的音乐不错。我也发一个快速下载歌曲的方法。

譬如,我想听《自由自在》这首歌,先找到歌曲地址:

http://www.9ku.com/play/574160.htm

ok,最后那个数字就是了,574160。现在直接用如下地址下载:

http://mp3.9ku.com/hot/2013/12-16/574160.mp3

浏览器打开,没错!另存一下,这首音乐就下来了。

简单吧?简单唬得给个免费的热心值呗?
abcing 发表于 2020-9-30 11:20
Crazy开发仔 发表于 2020-9-30 11:38
取用户名好难 发表于 2020-9-30 11:45
技术。慢慢看。有时间试下
 楼主| 吴天王 发表于 2020-9-30 11:48
发帖的时候批量上传的图片,图片编号混乱了。第N步对应第N张图片就行,最下面的两张图可以无视。与腾讯视频的Ckey获取相比,这里简直是脱光给你看的。技术指数一颗星
eikefeng 发表于 2020-9-30 11:48
很好的帖子,谢谢 了
ilavac 发表于 2020-9-30 11:57
那么最终得出的结论是啥?

或者说

产出物是啥?

小白怎么使用?
 楼主| 吴天王 发表于 2020-9-30 12:03
ilavac 发表于 2020-9-30 11:57
那么最终得出的结论是啥?

或者说

相当于得到一个获取音乐文件的API。利用这个API可以做的事就多了。比如这个API加上采集脚本。。
这个应该容易理解吧,说多了我也怕
qingfeng123 发表于 2020-9-30 12:35
感谢楼主
Gaho2002 发表于 2020-9-30 13:02
F12切音呀
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-16 05:26

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表