音乐文件逆向破解

news2024/9/24 15:28:22

背景

网易云等在线音乐文件的加密源码都按照一定的规则加密,通过对音乐文件的源码分析转化,有望实现对加密文件的解密

实现内容

实现对加密音乐文件的解密

实现对无版权的音乐文件的转化

实现环境

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文件,添加安装包的路径,最后完成启动加载配置,结果可以发现灰色音乐文件变色,实现解密转化。

通过以上两个案例,我们可以看到音乐文件逆向破解的过程并不简单,需要一定的技术知识和工具的支持。同时,我们也要注意到,音乐文件的加密是为了保护版权,逆向破解音乐文件的行为是违法的,我们应该尊重知识产权,支持正版音乐。在实际的学习和工作中,我们应该采用合法的方式来获取和使用音乐文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1596010.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

IDEA pom.xml显示灰色并被划线

在使用 IDEA 进行开发的过程中,有时候会遇到 pom.xml 显示灰色并被划线的情况,如下图: 这一般是因为该文件被 Maven 忽略导致的,可以进行如下操作恢复: 设置保存后,可以看到 pom.xml 恢复了正常&#xff1a…

【UE5.1】使用MySQL and MariaDB Integration插件——(1)连接MySQL

效果 步骤 1. 在虚幻商城下载“MySQL and MariaDB Integration”插件 2. 购买安装后,我们将插件添加到一个新工程中,打开新工程可以看到已经添加了插件 3. 新建一个蓝图,选择父类为“MySQLDBConnectionActor” 这里命名为该蓝图为“BP_MySQL…

【菜狗学前端】npm i -g nodemon 遇到的下载卡住及运行权限问题解决记录

一、下载nodemon原因 nodemon作用:用node环境运行js文件时可以实时刷新运行出结果 (即修改js代码后不需再手动重新运行js文件) 二、下载卡住 reify:semver:timing reifyNode:node_modules/nodemon Completed 卡住位置:reify:semver: timing reifyNode…

【Java探索之旅】数组概念与初始化指南:动静结合

🎥 屿小夏 : 个人主页 🔥个人专栏 : Java编程秘籍 🌄 莫道桑榆晚,为霞尚满天! 文章目录 📑前言一、初识数组1.1 为什么要有数组?1.2 数组的的概念 二、数组的创建及初始化…

【Node.js】Express学习笔记(黑马)

目录 初识 ExpressExpress 简介Express 的基本使用托管静态资源nodemon Express 路由路由的概念路由的使用 Express 中间件中间件的概念Express 中间件的初体验中间件的分类 初识 Express Express 简介 什么是 Express? 官方给出的概念:Express 是基于…

SpringMVC--获取请求参数 / 域对象共享数据

目录 1. SpringMVC 获取请求参数 1.1. 通过ServletAPI获取 1.2. 控制器方法形参获取 1.3. RequestParam 1.4. RequestHeader 1.5. CookieValue 1.6. 通过POJO获取请求参数 1.7. 解决获取请求参数的乱码问题 2. 域对象共享数据 2.1. 三大域对象 2.2. 准备工作 2.3. S…

海外短剧系统开发:引领全球短剧新潮流,打造跨文化娱乐新体验

随着全球化和互联网的快速发展,跨文化娱乐已经成为人们日常生活中不可或缺的一部分。海外短剧作为一种新颖、便捷的娱乐形式,正逐渐受到越来越多观众的喜爱。为了满足广大用户的需求,我们荣幸地推出全新的海外短剧系统开发方案,旨…

IDEA 找不到或无法加载主类

IDEA 中,有时候会遇到明明存在这个类,import 也没有报错,但编译时会报找不到或无法加载主类。 解决方法: 图像化操作 右侧 Maven > 根项目 > Lifecycle > clean > install 命令操作 mvn clean install

Java单例集合

Collection接口介绍 Collection 表示一组对象,它是集中、收集的意思。Collection接口的两个子接口是List、Set接口。 Collection接口中定义的方法 方法说明boolean add(Object element)增加元素到容器中boolean remove(Object element)从容器中移除元素 boolean c…

Angular 使用DomSanitizer防范跨站脚本攻击

跨站脚本Cross-site scripting 简称XSS,是代码注入的一种,是一种网站应用程序的安全漏洞攻击。它允许恶意用户将代码注入到网页上,其他用户在使用网页时就会收到影响,这类攻击通常包含了HTML和用户端脚本语言(JS&…

代码随想录算法训练营三刷day55 | 动态规划之子序列 392.判断子序列 115.不同的子序列

day55 392.判断子序列1.确定dp数组(dp table)以及下标的含义2.确定递推公式3.dp数组如何初始化4.确定遍历顺序5.举例推导dp数组 115.不同的子序列1.确定dp数组(dp table)以及下标的含义2.确定递推公式3.dp数组如何初始化4.确定遍历…

【Linux学习】初识Linux指令(二)

文章标题 1.rm 指令2.man指令3.nano指令4.cp指令5.mv指令6.alias指令7. cat与8.echo指令 ⚶文章简介 ⚶本篇文章继上篇文章Linux指令讲解,本篇文章主要会涉及到的指令会有:rm指令与 *(通配符)的搭配使用,man指令&…

CRMEB 开源/标准版商城系统客服配置教程

管理后台/设置/系统设置/商城配置/客服端配置 有系统客服/拨打电话/跳转链接可选,系统客服为系统自带的客服系统,拨打电话为用户点击联系客服为拨打客服电话的方式,跳转链接为可以跳转自己开发的客服系统或者第三方的客服系统或者企业微信的…

文献学习-33-一个用于生成手术视频摘要的python库

VideoSum: A Python Library for Surgical Video Summarization Authors: Luis C. Garcia-Peraza-Herrera, Sebastien Ourselin, and Tom Vercauteren Source: https://arxiv.org/pdf/2303.10173.pdf 这篇文章主要关注的是如何通过视频摘要来简化和可视化手术视频&#xff0c…

mediapipe人体姿态检测(全方位探索手部、面部识别、姿势识别与物体检测及自拍分割技术)

引言 本文将聚焦于MediaPipe对人体姿态检测的全面支持,包括手部、面部识别、全身姿势识别、物体检测以及自拍分割五大关键技术。通过深入了解这些功能,读者将能更好地运用MediaPipe在各种应用中实现精准的人体动作捕捉与分析。 一、手部关键点检测 Me…

Web应用程序中的常见安全漏洞

大家好,我是咕噜铁蛋!今天,我想和大家聊聊一个在我们日常开发中经常遇到的问题——Web应用程序中的安全漏洞。在这个数字化时代,Web应用几乎无处不在,它们不仅方便了我们的生活,也推动了社会的进步。然而&a…

python实现简单的车道线检测

描述 python实现简单的车道线检测,本文章将介绍两种简单的方法 颜色阈值区域掩模canny边缘检测霍夫变换 这两种方法都能实现简单的车道线检测demo,注意仅仅是demo 下面的图片是用到的测试图片 方法1:颜色阈值(Color Selection…

李廉洋:4.15黄金,原油最新资讯,美盘走势分析及策略。

由于欧洲央行很可能先于美联储降息,美元走强。法国兴业银行分析师基特•朱克斯表示,市场“假设我们看到欧洲央行将在6月降息,但美联储不会”,这对美元有利。朱克斯表示,尽管在货币政策决定之前会公布一些相关数据&…

JMeter多个线程组的使用说明!

当JMeter测试计划中存在多个线程组,您需要了解如何结合JMeter和PTS配置参数,使多个线程组并行或串行压测。 前提条件 创建JMeter压测场景。具体操作,请参见创建JMeter场景。 背景信息 JMeter线程组包括setUp线程组、tearDown线程组和主线…

升级win11后无线鼠标失灵,win11鼠标用不了

鼠标失灵是常见的设备故障问题,今天带来相关的解决方法,本文主要是针对升级win11后无线鼠标失灵的处理方法。不少小伙伴在使用电脑的过程中,都遇到过鼠标移动缓慢或者动不了的情况,升级到win11系统的小伙伴也不例外。一般刚升级新系统后,才出现的鼠标失灵问题,那么可能会…