找回密码
 立即注册
首页 业界区 业界 EXE加密视频不能看?教你手动解除一机一码限制。 ...

EXE加密视频不能看?教你手动解除一机一码限制。

谯梨夏 昨天 15:00
这是网友发的一套无人机实战视频,因为加密了。
1.png

 未购买播放密码无法观看。网友是有播放密码能正常观看的,想着能不能解出MP4文件。能不能解出后面分析。
现在分析和解决能不能用他的密码在自己电脑上观看?
视频绑了电脑,机器码和播放密码是对应的。因为机器码不一致,输入别人的播放密码出现如下提示:
Illegal password, inconsistent with the current machine code!
2.png

于是想,可不可以用别人的机器码替换本机后拿他的播放密码进行播放呢? 作为软件逆向的学习人,根据前面的基础入门知识来试试吧。
     打开调试器OllyDBG,把加密的EXE视频拖进调试器内,直接F9运行起来。
     视频打开后,出现输入播放密码的界面,前面输入播放密码有个报错。有提示框,那我们根据前面学习的文章中,使用暂停法,去找报错的关键位置。
3.png

 看堆栈窗口中有个调用来自程序自身,我们双击过去看看汇编代码。
  1. E8 EF5EECFF     call
复制代码
汇编窗口中这里调用了提示框。向上翻,看看哪个跳转是到这里的
  1. 00543310    8D95 F0EAFFFF   lea edx,dword ptr ss:[ebp-0x1510]00543316    8B85 1CFFFFFF   mov eax,dword ptr ss:[ebp-0xE4]0054331C    8B80 88030000   mov eax,dword ptr ds:[eax+0x388]00543322    E8 5D52F3FF     call 第40节:.0047858400543327    8B95 F0EAFFFF   mov edx,dword ptr ss:[ebp-0x1510]0054332D    8B45 F8         mov eax,dword ptr ss:[ebp-0x8]00543330    E8 572EECFF     call 第40节:.0040618C00543335    74 63           je short 第40节:.0054339A00543337    8D45 EC         lea eax,dword ptr ss:[ebp-0x14]0054333A    50              push eax0054333B    A1 F0FD5400     mov eax,dword ptr ds:[0x54FDF0]00543340    8B00            mov eax,dword ptr ds:[eax]00543342    B9 C0395400     mov ecx,第40节:.005439C0                   ; strErrorPlayCode00543347    BA 98395400     mov edx,第40节:.00543998                   ; frmVerifyMain0054334C    E8 EB54FEFF     call 第40节:.0052883C00543351    6A 40           push 0x4000543353    8D8D ECEAFFFF   lea ecx,dword ptr ss:[ebp-0x1514]00543359    A1 B4FC5400     mov eax,dword ptr ds:[0x54FCB4]0054335E    8B00            mov eax,dword ptr ds:[eax]00543360    05 C0170000     add eax,0x17C000543365    BA FF030000     mov edx,0x3FF0054336A    E8 B54DECFF     call 第40节:.004081240054336F    8B85 ECEAFFFF   mov eax,dword ptr ss:[ebp-0x1514]00543375    E8 5228ECFF     call 第40节:.00405BCC0054337A    50              push eax0054337B    8B45 EC         mov eax,dword ptr ss:[ebp-0x14]0054337E    E8 4928ECFF     call 第40节:.00405BCC00543383    50              push eax00543384    8B85 1CFFFFFF   mov eax,dword ptr ss:[ebp-0xE4]0054338A    E8 19DBF3FF     call 第40节:.00480EA80054338F    50              push eax00543390    E8 EF5EECFF     call            ; 错误提示
复制代码
分析代码看到,前面有个JE跳转,那说明前面2个CALL应该是有做比较。那我们往上看哪里跳转过来的,下个断点跟踪。
4.png

 
5.png

 分析后看到。前面跳转过来后,40618C地址应该是个比较函数了。同时看寄存器窗口看到分别给EDX,EAX传了值
6.png

 不难看到这就是机器码。EDX是我们本机的机器码。EAX估计是对应播放密码的机器码。于时我们把EDX改为EAX是不是就和播放密码的机器码对上了?上面猜想一样,修改后JE就实现跳转,错误框就没有了。
7.png

 9运行程序,视频直接进行播放了。通过逆向软件分析后,发现就这么简单绕过了?这感觉不要太爽,不花一分钱看VIP课程是不是觉得又赚了几百块。     关注下篇讲讲怎么编写程序,动态修改机器码。
 

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

相关推荐

您需要登录后才可以回帖 登录 | 立即注册