文件加锁王飘云阁特别版 重起验证爆破追码过程
【破文标题】文件加锁王飘云阁特别版重起验证爆破追码过程【破文作者】gglhy
【作者邮箱】
【作者主页】
【破解工具】PEID看雪版、W32DSM、OD、Aspackdie、keymake1.73
【破解平台】Winxp-sp2
【软件名称】文件加锁王2007企业版 V 6.47 飘云阁特别版
【软件大小】
【原版下载】
【保护方式】
【软件简介】
【破解声明】只为了解软件的保护技术、顺便看看非计算机专业的自己水平有多菜。时刻谨记:追码不为利只为艺!
------------------------------------------------------------------------
【破解过程】 先说点题外话:从网上下了这个软件,安装时发现有“附赠一组正版KEY:用户名:Nisy 注册码:[随意]--[随意]”,于是想看看自己能否找出自己的注册信息。于是就没有用Nisy大侠的附赠正版KEY注册,于是就有了这篇破文。我不知道PYG是否有了这个软件的破文,但我觉得应当将我自己的破解经过纪录下来,留下我的足印。因此,如果本文有与其他破文雷同之处,我只想说“我没作弊!”
1.运行folderlockpro.exe,呵呵,注册时发现注册名称:Nisy,授权密码******-**********-******已填入,注册认证按钮为灰,用激活专家.exe也无法激活它,显然不能注册。退出。
为什么不能注册呢?Use your head,and you will find a way!分析一下,这可能有以下的几种情况:
(1)程序已注册,注册认证按钮是灰色的;
(2)程序是实时验证,注册信息正确的话注册认证按钮就被被激活;
(3)其他我还没有掌握的情况 :)
2.那我们先来对第一种情形实验一下:
OD载入,N次F9运行后,输入密码:1234后进入主界面,查找字符串,没有什么发现。
用PEID查壳:ASPack 2.12 -> Alexey Solodovnikov ,Aspackdie脱后的UNPACKED.EXE无法运行,看来有自校验?W32DSM出马。找到如下信息:
(这里省略部分信息)
A “ 提示:软件试用期已到,要继续使用,请和供应商联系注册。” ----(00506EC9)
B" 提示:未注册版本可以免费使用10天,现在还剩下" ----(00506F4A)
C"请重新启动软件以验证注册码!感谢您对我们的支? ----(呵呵,W32告诉我字符串没找到!)
OD载入,右键--转到--表达式,输入:00506EC9,确定,来到:
(这里省略部分代码)
00506E78 55 push ebp
00506E79 68 9F6F5000 push 00506F9F
00506E7E 64:FF30 push dword ptr fs:
00506E81 64:8920 mov fs:, esp
00506E84 8B83 E4040000 mov eax,
00506E8A E8 69EDFEFF call 004F5BF8
00506E8F 84C0 test al, al
00506E91 74 4A je short 00506EDD
00506E93 A1 B41E5100 mov eax,
00506E98 8B80 F0040000 mov eax,
00506E9E 33D2 xor edx, edx
00506EA0 8B08 mov ecx,
00506EA2 FF51 64 call
00506EA5 A1 B41E5100 mov eax,
00506EAA 8B80 2C030000 mov eax,
00506EB0 33D2 xor edx, edx
00506EB2 8B08 mov ecx,
00506EB4 FF51 64 call
00506EB7 A1 B41E5100 mov eax,
00506EBC 8B80 3C030000 mov eax,
00506EC2 33D2 xor edx, edx
00506EC4 8B08 mov ecx,
00506EC6 FF51 64 call
00506EC9 BA B46F5000 mov edx, 00506FB4 ;提示:软件试用期已到,要继续使用,请和供应商联 系注册。
00506ECE A1 B41E5100 mov eax,
00506ED3 E8 94EBF3FF call 00445A6C
00506ED8 E9 A7000000 jmp 00506F84
00506EDD 8B83 E4040000 mov eax,
00506EE3 E8 E8E6FEFF call 004F55D0
00506EE8 84C0 test al, al
00506EEA 74 5E je short 00506F4A
00506EEC 33D2 xor edx, edx
00506EEE 8B83 BC040000 mov eax,
00506EF4 8B08 mov ecx,
00506EF6 FF51 64 call
00506EF9 BA F46F5000 mov edx, 00506FF4 ; *****
00506EFE 8B83 D0040000 mov eax,
00506F04 E8 63EBF3FF call 00445A6C
00506F09 BA F46F5000 mov edx, 00506FF4 ; *****
00506F0E 8B83 D8040000 mov eax,
00506F14 E8 53EBF3FF call 00445A6C
00506F19 BA 04705000 mov edx, 00507004 ;文件加锁王企业版飘云阁论坛奉送
00506F1E A1 B41E5100 mov eax,
00506F23 E8 44EBF3FF call 00445A6C
00506F28 BA 2C705000 mov edx, 0050702C ; nisy
00506F2D 8B83 C8040000 mov eax,
00506F33 E8 34EBF3FF call 00445A6C
00506F38 BA 3C705000 mov edx, 0050703C ; xxxxxxxxxx
00506F3D 8B83 D4040000 mov eax,
00506F43 E8 24EBF3FF call 00445A6C
00506F48 EB 3A jmp short 00506F84
00506F4A 68 50705000 push 00507050 ;提示:未注册版本可以免费使用10天,现在还剩下
00506F4F 8B83 E4040000 mov eax,
00506F55 E8 36E6FEFF call 004F5590
00506F5A 8D55 F8 lea edx,
00506F5D E8 EE27F0FF call 00409750
00506F62 FF75 F8 push dword ptr
00506F65 68 84705000 push 00507084 ; 天。
看,00506E91处的je short 00506EDD实现的话,就表示还在注册期内,因此,必须让00506e91的跳转实现,这是一个爆破点,改为JMP。
那么这一段程序是从哪跳来的?在W32DSM中一分析,原来,这个跳转来自00508CAC,好。OD中表达式输入00508CAC,来到:
00508CA7 64:8920 mov fs:, esp
00508CAA 8BC3 mov eax, ebx
00508CAC E8 BBE1FFFF call 00506E6C
这个00508CAC处的CALL肯定有问题。猜想它可能是判断程序是否已经注册的,那么是不是它的存在无法让注册按钮生效呢?好验证一下,选中这3行,右键--》二进制--》用NOP填充,再点程序的软件注册按钮,哈哈,注册名称、授权密码、注册认证按钮都能用了。看来猜的没错。填入假码:注册名称:gglhy,授权密码111111-2222222222222222-333333 点注册认证按钮,告诉我重起!OK,现在解决了不能注册的问题了。
能注册就好办了。现在OD载入,右键--转到--表达式,输入:00506F4A,点确定。然后右键查找字符串-->ASCII,呵呵,看到了好多让我看见希望的东东!:)
比如:
“0050B49A未输入注册码或者输入的注册码不正确,请重新输入或者与软件供应商联系!”哈哈!在W32中可没看见吧
“0050B4C6请重新启动软件以验证注册码!\n感谢您对我们的支持,我们将为您提供终身免费升级。”
OD中右键--转到--表达式,输入:0050B49A,来到这里:
0050B48E E8 01A5FEFF call 004F5994
0050B493 84C0 test al, al
0050B495 75 2C jnz short 0050B4C3
0050B497 8D45 FC lea eax,
0050B49A BA 30B55000 mov edx, 0050B530 ; 【提示信息】:未输入注册码或者输入的注册码不正确,请重新输入或者与软件供应商联系!
0050B49F E8 8096EFFF call 00404B24
0050B4A4 6A 40 push 40
0050B4A6 8B45 FC mov eax,
0050B4A9 E8 8E9AEFFF call 00404F3C
0050B4AE 8BD0 mov edx, eax
0050B4B0 B9 84B55000 mov ecx, 0050B584 ; 提示信息
0050B4B5 A1 B4035100 mov eax,
0050B4BA 8B00 mov eax,
0050B4BC E8 83B4F5FF call 00466944
0050B4C1 EB 36 jmp short 0050B4F9
0050B4C3 8D45 FC lea eax,
0050B4C6 BA 98B55000 mov edx, 0050B598 ; 请重新启动软件以验证注册码!\n感谢您对我们的 支持,我们将为您提供终身免费升级。
0050B4CB E8 5496EFFF call 00404B24
分析下,0050B495的跳实现了的话,就会跳到00500B4C6 处的提示重起验证地方来,能否跳过重起验证呢?看0050B4C6处的重起验证上边00500B4C1有个JMP,这个JMP跳过了重起验证。除了0050B495外这个JMP上方有没有什么跳会跳过这个JMP?在这一段里好象没有了。但是如果我们把它NOP掉呢,会发生什么?显然,0050B49A的错误信息就会出现。那么0050B48E处的call就很关键了。必须进去看看。下断后填入假码注册被OD断下了,F7进入:然后F8前进到这里:
004F5A19 E8 BAFBFFFF call 004F55D8
004F5A1E 8B45 F0 mov eax, dword ptr >
004F5A21 8B55 F0 mov edx, dword ptr >
004F5A24 E8 3338F1FF call 0040925C
在右边堆栈处看到:
0012FBC4 00ECDF24ASCII "005B797AD8"
0012FBC8 00ECDECCASCII "2222222222222222222222222"
0012FBCC 00000000
0012FBD0 00EAAB6CASCII "gglhy"
"005B797AD8"第一次出现。 呵呵。这个字符串居然敢和我的假码(的中段)在一起聊天!
这里004F5A19的call 是不是该进去LOOK下?
OD重新载入,(前面该修改的就修改,该F2的就F2,不废话了)在004F5A19下断,运行到004F5A19后F7+N*F8,沿途看见一个字符串"gf258gglhy369gf"重复出现。要不是我的数学一直在及格线上徘徊,我还真想跟一跟它的来历。
当来到004f5737时,
004F5732 E8 7D40F1FF call 004097B4
004F5737 8B07 mov eax, dword ptr
004F5739 E8 06F6F0FF call 00404D44
右边堆栈看到
0012FBC4|00ECDEF8ASCII "005B797AD8"
0012FBC8|00ECDEA4ASCII "22222222222222222222222"
0012FBCC|00000000
0012FBD0|00E950C0ASCII "gglhy"
------------------------------------------------------------------------
【破解总结】呵呵,先动脑再动手,往往事半功倍!
------------------------------------------------------------------------
【版权声明】请尊重软件作者的辛勤劳动,破解只为艺不为利! 谢谢楼主的分享,下载实习。/:001 写得不错,支持/:good 很好的文章,菜鸟学习下 这软件光有注册码也不行的,需要登陆他网站去下个什么文件才能得到正式授权,不然一样有限制。 这个软件不好用哦 太难了吧!我做不出来 学习中/:012 /:012 很好的文章啊 ,来学习下啊 看着是晕乎的,请整理一套脱壳教程哈,把ESP简单化
页:
[1]
2