背景
网易云等在线音乐文件的加密源码都按照一定的规则加密,通过对音乐文件的源码分析转化,有望实现对加密文件的解密
实现内容
实现对加密音乐文件的解密
实现对无版权的音乐文件的转化
实现环境
010editor
010 Editor是一个专业的文本编辑器和十六进制编辑器,旨在快速轻松地编辑计算机上任何文件的内容。
C32Asm
快速静态反编译PE格式文件(Exe、Dll等) 提供Hex文件编辑功能,功能强大提供内存Dump、内存编辑、PE文件Dump、PE内存ImageSize修正等多种实用功能提供内存反汇编功能,提供汇编语句直接修改功能。
node.js
NodeJS是为了开发高性能的服务器而诞生的一种技术,是运行在服务端的 JavaScript,基于V8(谷歌浏览器的版本)进行运行,使用了一个事件驱动、非阻塞式 I/O 的模型。
Windows PowerShell
Windows PowerShell 是一种命令行外壳程序和脚本环境,类型是一种命令行工具、在Windows/.NET平台上。使命令行用户和脚本编写者可以利用 .NET Framework的强大功能。
实现原理
通过010editor和C32Asm对音乐文件的源码进行分析,并二进制异或,实现对加密源码的破解,从而实现文件解密
具体过程
对加密音乐文件的破解
选择一首下载需要VIP的歌曲,先进行在线播放(此过程是对该文件的源码进行本地保存)
在设置中,选择下载设置,找到缓存目录
在本地文件夹中找到对应的下载文件
用工具010Ediotor打开缓存UC文件,如下图:
安装010Ediotor
通过查找工具分析,最多的数据是A3,所以可以推测A3就是加密过后的无意义字符0
接下来对数据进行处理分析,对二进制进行异或。
点开菜单->工具->十六进制操作->二进制异或
对A3进行异或
解密后的结果,前三个字节是ID3,也就是MP3文件格式,将解密后的文件保存,格式修改为MP3格式
保存后发现,音乐文件已变为本地文件,实现了对加密文件的解密
实现对无版权音乐文件的解密转化
先在线寻找无版权的音乐文件(灰色文件表示无版权,是不可播放的)
下载node.js,并安装
在官网下载windows x64版本。
在cmd中查看是否安装成功node和npm。
找到安装的目录,在安装目录下新建两个文件夹【node_global】和【node_cache】
创建完毕后,使用管理员身份打开cmd命令窗口输入
npm config set prefix "C:\Program Files\nodejs\node_global"
npm config set cache "C:\Program Files\nodejs\node_cache"
配置环境变量: 选中 计算机 -->属性-->高级系统设置-->环境变量。
下载网易云安装包(包括js文件和启动加载.bat)
在cmd中 输入:ping music.163.com (这是网易云网址)目的是获取网易云音乐的ip地址:
windows键+ x ,打开Windows PowerShell(管理员)输入以下命令:
打开网易云音乐客户端:选择 设置-->工具-->自定义代理:
在cmd输入ipconfig查看虚拟机ip地址。
输入本机ip 192.168.41.137 端口号设置为:65535
此时windows PowerShell 同步加载实时链接
编辑打开启动加载.bat
添加安装包的路径
保存之后 鼠标右击 计算机 -->管理 -->操作 -->创建基本任务
设置任务属性
完成启动加载配置
此时发现灰色音乐文件变色了,实现了解密转化
结果分析
音乐文件的加密形式基本趋于规律化,通过分析相似文件的十六进制代码就可找到相关联的代码。
实验总结:
在本实验中我掌握音乐文件逆向破解的技术,了解其加密和解密的原理。
案例一:对加密音乐文件的破解
首先选择一首需要VIP的歌曲进行在线播放,本地保存其源码,接着在设置中,找到缓存目录;在本地文件夹中找到下载文件,然后使用010Ediotor工具打开缓存UC文件,之后分析界面,发现A3是无意义的字符,紧接着通过工具分析,得知A3是加密后的无意义字符0,然后对二进制数据进行异或操作,得到解密后的结果,接着将解密后的文件保存,格式修改为MP3格式,最后音乐文件成功转化为本地文件。
案例二:实现对无版权音乐文件的解密转化
首先在线寻找无版权的音乐文件,接着下载并安装node.js,之后配置环境变量,之后获取网易云音乐的ip地址,接着输入相关命令,然后在网易云音乐客户端中设置代理,接着同步加载实时链接,紧接着编辑启动加载.bat文件,添加安装包的路径,最后完成启动加载配置,结果可以发现灰色音乐文件变色,实现解密转化。
通过以上两个案例,我们可以看到音乐文件逆向破解的过程并不简单,需要一定的技术知识和工具的支持。同时,我们也要注意到,音乐文件的加密是为了保护版权,逆向破解音乐文件的行为是违法的,我们应该尊重知识产权,支持正版音乐。在实际的学习和工作中,我们应该采用合法的方式来获取和使用音乐文件。