【整理作者】 頽廢ヾ
【作者邮箱】 faye_3762@163.com
【使用工具】 PEID,ollydbg1.10,LordPE,ImportREC
【破解平台】 Windows Vista SP2
【软件名称】 某公务员考试宝典
【下载地址】 www.ksbao.com
【加壳方式】 ASPack 2.12
【破解说明】
随着各行业的职称考试临近,网上广为流传的 “宝典”类软件很是热门,,此软件,做的很简洁,占用空间小,速度很快,主要是题量很丰富,嗯,很实用的。
记得以前老婆急着用的时候我也找过N多的”破解版”不过,都是骗人的,仅仅是把未注册三个字改成了已注册,有些甚至还注册弹窗都没有去除~~然后破解人就给放出来了….而题量还是未注册版的仅仅一道题,哎~~~
不过想了想,软件商黑心,这些考试宝典类的软件最少的也要88元,一般的注册费用一度攀升到了现在的128元左右了,真的,用这些钱,不如去新华买上三本厚厚的专业考试用书,来得塌实….
这并不是,驱使我放出破解方法的原因,主要还是因为,有太多的朋友需要,嗯,希望能给忙着参加职称考试的朋友带来帮助.。。
进入正题吧。(以下,主要以图说明吧某种意义上讲,图能更好理解….)
↓↓此软件是典型的“重启验证”,注册后,注册码放在安装目录里面的一个隐藏的INI文件里了….这些我没有过多的研究,下面是通过修改程序来达到破解目的的。
查壳为ASPack 2.12 ---压缩壳。
OD载入,ESP定律来到OEP。。。
LordPE脱,importREC修复,或者OD插件的第二种方式脱可以不用修复就能运行….
载入脱 壳后程序。
查找ASCII码,,
双击正式版,来到程序
Je上面的关键CALL下F2断点,F9运行,F7进入
从第一行开始改,,
0054D87C 55 push ebp
0054D87D 8BEC mov ebp, esp
0054D87F E8 08020000 call 0054DA8C
此处改为
0054D87C 40 inc eax
0054D87D C3 retn
保存。
OD载入修改后程序。查找ASCII码。。“正在生成….”
双击“正在生成单选题………….”来到,
向上找段首
0055B0F8处为段首,下F2断点,
F9运行,程序跑起来之后点击”模拟考试。。“输入大于1的题量,我这里输入88道题便于区分….
点击开始考试,程序运行,断在了0055B0F8处!!此时F8往下跟…
0055B0F8 55 push ebp
0055B0F9 68 B4B15500 push 0055B1B4
0055B0FE 64:FF30 push dword ptr fs:[eax]
0055B101 64:8920 mov dword ptr fs:[eax], esp
0055B104 FF75 F0 push dword ptr ss:[ebp-10] ; (初始 cpu 选择)
(跟到些处,看FPU里的EDX,然后点数据窗口跟随,如下图)
[ebp-10 ]=88(88道题)
0055B107 8D45 DC lea eax, dword ptr ss:[ebp-24]
0055B10A 8B15 A8FF5C00 mov edx, dword ptr ds:[5CFFA8] ; 1.005CEF60
0055B110 E8 53A8EAFF call 00405968
0055B115 8B45 DC mov eax, dword ptr ss:[ebp-24]
0055B118 8D4D E0 lea ecx, dword ptr ss:[ebp-20]
0055B11B 8B15 5CFD5C00 mov edx, dword ptr ds:[5CFD5C] ; 1.005CF320
0055B121 0FB712 movzx edx, word ptr ds:[edx]
0055B124 E8 470FFDFF call 0052C070
0055B129 FF75 E0 push dword ptr ss:[ebp-20]
0055B12C 8D45 D8 lea eax, dword ptr ss:[ebp-28]
0055B12F E8 6447FFFF call 0054F898
0055B134 FF75 D8 push dword ptr ss:[ebp-28]
0055B137 8D45 FC lea eax, dword ptr ss:[ebp-4]
0055B13A BA 03000000 mov edx, 3
0055B13F E8 70A9EAFF call 00405AB4
0055B144 6A 00 push 0
0055B146 8D45 D4 lea eax, dword ptr ss:[ebp-2C]
0055B149 50 push eax
0055B14A 8D45 CC lea eax, dword ptr ss:[ebp-34]
0055B14D 8B15 A8FF5C00 mov edx, dword ptr ds:[5CFFA8] ; 1.005CEF60
0055B153 E8 10A8EAFF call 00405968
0055B158 8B45 CC mov eax, dword ptr ss:[ebp-34]
0055B15B 8D4D D0 lea ecx, dword ptr ss:[ebp-30]
0055B15E 8B15 5CFD5C00 mov edx, dword ptr ds:[5CFD5C] ; 1.005CF320
0055B164 0FB712 movzx edx, word ptr ds:[edx]
0055B167 E8 040FFDFF call 0052C070
0055B16C 8D45 D0 lea eax, dword ptr ss:[ebp-30]
0055B16F 50 push eax
0055B170 8D45 C8 lea eax, dword ptr ss:[ebp-38]
0055B173 E8 D45DFFFF call 00550F4C
0055B178 8B55 C8 mov edx, dword ptr ss:[ebp-38]
0055B17B 58 pop eax
0055B17C E8 6BA8EAFF call 004059EC
0055B181 8B55 D0 mov edx, dword ptr ss:[ebp-30]
0055B184 33C9 xor ecx, ecx
0055B186 8B45 FC mov eax, dword ptr ss:[ebp-4]
0055B189 E8 6AF9FCFF call 0052AAF8
0055B18E 8B55 D4 mov edx, dword ptr ss:[ebp-2C]
0055B191 8D45 FC lea eax, dword ptr ss:[ebp-4]
0055B194 E8 03A6EAFF call 0040579C
0055B199 8B55 FC mov edx, dword ptr ss:[ebp-4]
(跟到此处,看FPU点EDX数据窗口跟随看下图)
[ebp-4] = 1(1道题)
&&&&&
如果我们把ebp-4改成ebp-10那么会怎样??
可以试试的…..
下面,就没有必要再跟了…..嗯,
字符串里面,有“正在生成单选题…..多选题,A型题,B型题,X型题…..可以一步步来改,
上面是破解单选题的题 量,如果再来到多选题,一定会发现相同之处:
多选题:
0055B199 8B55 FC mov edx, dword ptr ss:[ebp-4]
0055B19C 8B45 F4 mov eax, dword ptr ss:[ebp-C]
0055B19F 8B08 mov ecx, dword ptr ds:[eax]
0055B1A1 FF51 04 call dword ptr ds:[ecx+4]
0055B1A4 8945 E8 mov dword ptr ss:[ebp-18], eax
0055B1A7 33C0 xor eax, eax
A型题:
0055B199 8B55 FC mov edx, dword ptr ss:[ebp-4]
0055B19C 8B45 F4 mov eax, dword ptr ss:[ebp-C]
0055B19F 8B08 mov ecx, dword ptr ds:[eax]
0055B1A1 FF51 04 call dword ptr ds:[ecx+4]
0055B1A4 8945 E8 mov dword ptr ss:[ebp-18], eax
0055B1A7 33C0 xor eax, eax
B型题:
0055B199 8B55 FC mov edx, dword ptr ss:[ebp-4]
0055B19C 8B45 F4 mov eax, dword ptr ss:[ebp-C]
0055B19F 8B08 mov ecx, dword ptr ds:[eax]
0055B1A1 FF51 04 call dword ptr ds:[ecx+4]
0055B1A4 8945 E8 mov dword ptr ss:[ebp-18], eax
0055B1A7 33C0 xor eax, eax
X型题……………..
不如用UE来改程序吧…
目的是把标志位的[ebp-4]改成[ebp-10]
为了能够让UE准确的确定位置,我们需要,把前后相同的二进程字符串都加进来,这样不容易改错…
8B55FC8B45F48B08FF51048945E8
替换为
8B55F08B45F48B08FF51048945E8
然后,别存为.exe放到安装目录里,运行就可以了。
如果你是学其它专业的,也可以用上面的二进制串符替换一下,不过要先脱掉壳。我有试过,大多数的宝典类软件都可以的使用上面的字符串,为保护作者权益,请不要用做商业用途..谢谢。如果,你自已搞定了,最好不要随便传给别人....嗯,仅仅是为了内些囊中羞涩的学生朋友提供帮助.希望各位理解...
------------------------
神仙请加我,相互学习,共同进步
未_来 20090529
[课程]Android-CTF解题方法汇总!