EV加密播放器的分析过程+过虚拟机方法
开启了OD载入播放器进行分析,发现如下问题:
1、播放器会进行翻录检测
2、防止虚拟机播放
3、视频播放后,可直接对内存操作提取出源视频
翻录检测:主要是对指定的文件名或进程名对比
虚拟机检测:是针对虚拟机特征码
源视频提取:视频在解密后,源数据出现在内存当中。可直接进行HOOK保存到磁盘中!
破解播放器:输入正确激活码后,数据会保存到注册表内。直接HOOK修改下即可多机播放。
另外该播放器有个重大BUG(个人见解,不知算不算BUG),可实现无密码播放或提取源视频。
下面我们一起学习下如何过虚拟机:
首先,安装完播放器后,用OD载入播放器。我安装在C盘:C:\Program Files (x86)\EVPlayer,F9运行后有个错误提示:
本次使用 暂停法找关键位置 来过虚拟机检测。在调用的位置下好断后,运行起程序一直F8走。走到播放器内存段后,向上看:
0040882F C74424 04 00060>mov dword ptr ss:[esp+0x4],EVPlayer.0100>; OK
00408837 8D5D 9C lea ebx,dword ptr ss:[ebp-0x64]
0040883A C70424 A010FE00 mov dword ptr ss:[esp],EVPlayer.00FE10A0
00408841 8985 70FFFFFF mov dword ptr ss:[ebp-0x90],eax
00408847 FFD6 call esi
00408849 83EC 0C sub esp,0xC
0040884C 8D45 A0 lea eax,dword ptr ss:[ebp-0x60]
0040884F C74424 08 00000>mov dword ptr ss:[esp+0x8],0x0
00408857 8D4D 94 lea ecx,dword ptr ss:[ebp-0x6C]
0040885A C74424 04 14060>mov dword ptr ss:[esp+0x4],EVPlayer.0100>; Can not work in virtual Machine
00408862 C70424 A010FE00 mov dword ptr ss:[esp],EVPlayer.00FE10A0
00408869 8985 70FFFFFF mov dword ptr ss:[ebp-0x90],eax
0040886F 89B5 74FFFFFF mov dword ptr ss:[ebp-0x8C],esi
00408875 FFD6 call esi
00408877 83EC 0C sub esp,0xC
0040887A 8D75 90 lea esi,dword ptr ss:[ebp-0x70]
0040887D 8D45 A0 lea eax,dword ptr ss:[ebp-0x60]
00408880 89F1 mov ecx,esi
00408882 C74424 08 00000>mov dword ptr ss:[esp+0x8],0x0
0040888A C74424 04 E1050>mov dword ptr ss:[esp+0x4],EVPlayer.0100>; Note
00408892 C70424 A010FE00 mov dword ptr ss:[esp],EVPlayer.00FE10A0
00408899 8985 70FFFFFF mov dword ptr ss:[ebp-0x90],eax
0040889F FF95 74FFFFFF call dword ptr ss:[ebp-0x8C]
004088A5 83EC 0C sub esp,0xC
004088A8 8D55 98 lea edx,dword ptr ss:[ebp-0x68]
004088AB 8D45 A0 lea eax,dword ptr ss:[ebp-0x60]
004088AE 895424 0C mov dword ptr ss:[esp+0xC],edx
004088B2 8D55 94 lea edx,dword ptr ss:[ebp-0x6C]
004088B5 C74424 1C FFFFF>mov dword ptr ss:[esp+0x1C],-0x1
004088BD C74424 18 00000>mov dword ptr ss:[esp+0x18],0x0
004088C5 8985 70FFFFFF mov dword ptr ss:[ebp-0x90],eax
004088CB 894424 14 mov dword ptr ss:[esp+0x14],eax
004088CF 895C24 10 mov dword ptr ss:[esp+0x10],ebx
004088D3 895424 08 mov dword ptr ss:[esp+0x8],edx
004088D7 897424 04 mov dword ptr ss:[esp+0x4],esi
004088DB C70424 00000000 mov dword ptr ss:[esp],0x0
004088E2 FF15 58C2D501 call dword ptr ds:[0x1D5C258] ; QtGui4._ZN11QMessageBox11informationEP7QWidgetRK7QStringS4_S4_S4_S4_ii
004088E8 89F1 mov ecx,esi
Can not work in virtual Machine 这字符是不是很熟悉?在向上翻,找关键位置下断。重新加载播放器,F9在运行。最终我们发现一个可疑位置:
004082EE /0F84 DC030000 je EVPlayer.004086D0
004082F4 |8D45 84 lea eax,dword ptr ss:[ebp-0x7C]
004082F7 |E8 84F8FFFF call EVPlayer.00407B80
004082FC |8B35 3CBDD501 mov esi,dword ptr ds:[0x1D5BD3C] ; QtCore4._ZN7QString16fromAscii_helperEPKci
00408302 |C74424 04 FFFFF>mov dword ptr ss:[esp+0x4],-0x1
0040830A |C70424 03060001 mov dword ptr ss:[esp],EVPlayer.01000603 ; VMWARE
00408311 |FFD6 call esi ; ??
00408313 |8945 88 mov dword ptr ss:[ebp-0x78],eax
00408316 |8D45 88 lea eax,dword ptr ss:[ebp-0x78]
00408319 |89F9 mov ecx,edi
0040831B |8985 6CFFFFFF mov dword ptr ss:[ebp-0x94],eax
00408321 |890424 mov dword ptr ss:[esp],eax
00408324 |A1 4CC0D501 mov eax,dword ptr ds:[0x1D5C04C]
00408329 |C74424 08 01000>mov dword ptr ss:[esp+0x8],0x1
00408331 |C74424 04 00000>mov dword ptr ss:[esp+0x4],0x0
00408339 |8985 70FFFFFF mov dword ptr ss:[ebp-0x90],eax
0040833F |FFD0 call eax
00408341 |83EC 0C sub esp,0xC
00408344 |83F8 FF cmp eax,-0x1
00408347 |BB 01000000 mov ebx,0x1
0040834C |0F84 CE030000 je EVPlayer.00408720
VMWARE 这是不是也熟悉?前面讲了,它是对特征码来判断虚拟机的。于是我们把这字符串直接修改成别的后。F9运行,发现播放器启动了。
就这样跳过虚拟机检测了。
EV加密播放器的分析过程+过虚拟机方法的更多相关文章
- 零基础读懂视频播放器控制原理——ffplay播放器源代码分析
版权声明:本文由张坤原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/535574001486630869 来源:腾云阁 ht ...
- 视频播放器控制原理:ffmpeg之ffplay播放器源代码分析
版权声明:本文由张坤原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/535574001486630869 来源:腾云阁 ht ...
- 基于Stm32的MP3播放器设计与实现
原创博文,转载请注明出处 这是我高级电子技术试验课做的作业,拿来共享一下.项目在安福莱例程基础之上进行的功能完善,里面的部分内容可参考安福莱mp3例程.当然用的板子也是安福莱的板子,因为算起来总共做了 ...
- FFmpeg简易播放器的实现-音视频同步
本文为作者原创,转载请注明出处:https://www.cnblogs.com/leisure_chn/p/10284653.html 基于FFmpeg和SDL实现的简易视频播放器,主要分为读取视频文 ...
- ckplayer网页播放器简易教程
前言 ckplayer是一款在网页上播放视频的免费视频插件,该插件兼容性强.使用简单.api齐全.另外,任何个人网站或商业网站在不修改右键版权的基础上都可以免费使用. 下面将对ckplayer的整个使 ...
- 基于MFC的Media Player播放器的制作(3---功能实现)
| 版权声明:本文为博主原创文章,未经博主允许不得转载. 下面我们试试一下,按下退出Button退出播放器的功能: 首先,我们双击退出Button按钮,就会弹出下图的框: 上面的弄好之后我们就实现 ...
- 雷火神山直播超两亿,Web播放器事件监听是怎么实现的?
Web播放器解决了在手机浏览器和PC浏览器上播放音视频数据的问题,让视音频内容可以不依赖用户安装App,就能进行播放以及在社交平台进行传播.在视频业务大数据平台中,播放数据的统计分析非常重要,所以We ...
- embed 隐藏播放器显示
昨天在页面做音频播放的时候,客户要求仅仅有声音.不显示播放器. 百度搜到解决方法: <embed id="embed_sound_id" src="test.mp3 ...
- 自制 h5 音乐播放器 可搜索
闲言碎语: 有好几天没有发表博客了,这也是因为一直开发音乐和完善我的博客项目,好不容易抽出时间总结一下这几天所做的东西,笔试又不断通知,实则匆忙 今天难得逃了一次课,就趁这时间,该写写就写写吧~~ 进 ...
随机推荐
- 在Nginx里指定ip_hash的方式解决Tomcat集群session的问题
据称,Tomcat集群session同步方案有以下几种方式: 1)使用tomcat自带的cluster方式,多个tomcat间自动实时复制session信息,配置起来很简单.但这个方案的效率比较低,在 ...
- Linux下mysql安装记录
1.MySQL下载路径:https://dev.mysql.com/downloads/ Linux下的安装步骤:http://www.runoob.com/linux/mysql-install-s ...
- 使用wangEditor富文本编辑器
客户端配置说明 下载 百度网盘地址:点我下载 下载密码:x09x 使用 首先要引入wangEditor的js文件,然后引入jQuery 然后在body里: <body> <butto ...
- linux系统漏洞扫描工具lynis
lynis 是一款运行在 Unix/Linux 平台上的基于主机的.开源的安全审计软件.Lynis是针对Unix/Linux的安全检查工具,可以发现潜在的安全威胁.这个工具覆盖可疑文件监测.漏洞.恶意 ...
- java oop 修饰符&关键字
一.修饰符 Java中四种访问权限修饰符: private 缺省(default) protected public 修饰类的成员,用来限定对象对该类成员的访问权限. 修饰符 类内部 同一个包 不同包 ...
- JVM垃圾收集机制
JVM垃圾回收机制是java程序员必须要了解的知识,对于程序调优具有很大的帮助(同时也是大厂面试必问题). 要了解垃圾回收机制,主要从三个方面: (1)垃圾回收面向的对象是谁? (2)垃圾回收算法有哪 ...
- J.U.C之ReentrantLock 可重入锁
* A reentrant mutual exclusion {@link Lock} with the same basic * behavior and semantics as the impl ...
- 关于python中break与continue的区别
在python中break和continue都有跳出循环体的作用,但是他们还是有一些区别的,具体区别如下: break:是直接跳出循环,跳出自己所处的整个循环体 continue:只是跳出本次循环,而 ...
- dubbo学习(三)配置dubbo API方式配置
provider(生产者) import com.alibaba.dubbo.config.ApplicationConfig; import com.alibaba.dubbo.config.Pro ...
- Servlet中关于中文乱码
一.客户端请求服务器的数据有乱码 1.get方式请求 ①修改tomcat/conf/server.xml,在<Connector> 标签中添加属性useBodyEncodingForURI ...