带壳破解某医学考试软件破解教程
[ 本帖最后由 Sakya 于 2017-7-29 02:30 编辑 ]\n\n【文章标题】: 带壳破解某医学考试软件
【软件名称】: 初级师药剂师
【下载地址】: http://www.drugabc.net/
【加壳方式】: ASProtect
【编写语言】: Delphi
【使用工具】: OD,keymade
【操作平台】: WinXP虚拟机
--------------------------------------------------------------------------------
【详细过程】
1、PEID查壳,ASProtect v1.32的壳,脱壳机不能把它脱掉,于是只能带壳调试,壳的强度不高。
2、OD载入,ctrl+G输入00401000到程序代码段,F9运行程序,程序跑起来到程序主界面,搜索字符串使用智能搜索,搜索内容“试用版”,因为程序左上角显示的是试用版。
代码如下:
0054E09F E8 ACB10200 call MedicalK.00579250 ; 关键CALL,软件升级和注册框都是调用这里来进行比较
0054E0A4 8BD8 mov ebx,eax ; 程序是通过赋值来进行比较的,所以要进关键CALL去修改
0054E0A6 889F 24030000 mov byte ptr ds:,bl
0054E0AC 84DB test bl,bl
0054E0AE 74 39 je short MedicalK.0054E0E9 ; 跳了就变成未注册版,改跳转功能还是会被限制
0054E0B0 8BC6 mov eax,esi
0054E0B2 B9 5CE15400 mov ecx,MedicalK.0054E15C ; (正式版)
0054E0B7 8B97 0C030000 mov edx,dword ptr ds:
0054E0BD E8 B26FEBFF call MedicalK.00405074
0054E0C2 A1 30295B00 mov eax,dword ptr ds: ; 4T[
0054E0C7 8B00 mov eax,dword ptr ds:
0054E0C9 8B80 0C040000 mov eax,dword ptr ds:
0054E0CF 8B90 68010000 mov edx,dword ptr ds:
0054E0D5 A1 602B5B00 mov eax,dword ptr ds: ; lW[
0054E0DA 8B00 mov eax,dword ptr ds:
0054E0DC 8B80 70040000 mov eax,dword ptr ds:
0054E0E2 E8 4D91EEFF call MedicalK.00437234
0054E0E7 EB 37 jmp short MedicalK.0054E120
0054E0E9 8BC6 mov eax,esi
0054E0EB B9 70E15400 mov ecx,MedicalK.0054E170 ; (试用版)
3、通过代码可以看出 0054E0AE 这个跳转实现了就会跳到试用版,当前程序就是试用版,由代码 0054E0A4 到 0054E0AC能看出程序是通过赋值来判断是否注册,所以 0054E09F 是关键CALL,进0054E09F去看看。
4、改赋值
进去之后看到
00579250 55 push ebp
00579251 8BEC mov ebp,esp
00579253 51 push ecx
00579254 B9 05000000 mov ecx,0x5
00579259 6A 00 push 0x0
0057925B 6A 00 push 0x0
0057925D 49 dec ecx
如果不确定这里是否是关键处可以下硬件执行断点,之前下过了确实是,可以确定程序是通过赋值进行判断,那么直接改代码:
00579250 55 push ebp
00579251 8BEC mov ebp,esp
00579253 51 push ecx
00579254 B9 05000000 mov ecx,0x5
改成
00579250 B8 01000000 mov eax,0x1
00579255 C3 retn
00579256 90 nop
00579257 90 nop
00579258 90 nop
以上两段要记下来,因为有壳无法保存。
5、制作内存补丁
打开keymade v2.0程序,点其他-制作内存补丁,程序名称点浏览找到MedicalKitMain.exe文件名,下面点击添加有5个输入地方:
修改地址:00579250
搜索范围:不用填
修改长度:9
原始指令:558BEC51B905000000
修改指令:B801000000C3909090
填完后点添加-生成-取个key.exe的名字。
找到程序目录点key.exe就能看到破解成功了。补丁会报毒,请考虑后再打开。
--------------------------------------------------------------------------------
【方法通用】
网站里的其他软件貌似用一个内存补丁就能搞定,至少一个补丁用了三个不同的程序都能注册。
评分免CB,有回帖就更好 lijin320925 发表于 2017-7-29 14:17
楼主能不能破解一个“临床医学检验技术”的,谢谢!
http://www.drugabc.net/productdetail.aspx?pid=23 ...
临床的内存地址变了,而且用keymade无法正常注册,但破解原理是相同的,使用“Inline Loader v1.0"补丁软件能解决。 我的进CALL后,是这样的,应该怎么改呢??求救
00437234 56 push esi
00437235 8BF0 mov esi,eax
00437237 8B86 68010000 mov eax,dword ptr ds:
0043723D 8B08 mov ecx,dword ptr ds:
0043723F FF51 08 call dword ptr ds:
00437242 5E pop esi ; 046B0ABD
00437243 C3 retn
00437244 3A90 78010000 cmp dl,byte ptr ds:
0043724A 74 0D je short MedicalK.00437259
0043724C 8890 78010000 mov byte ptr ds:,dl
00437252 8BD0 mov edx,eax
00437254 E8 33000000 call MedicalK.0043728C
00437259 C3 retn
0043725A 8BC0 mov eax,eax
0043725C 3A90 7B010000 cmp dl,byte ptr ds:
00437262 74 0D je short MedicalK.00437271
00437264 8890 7B010000 mov byte ptr ds:,dl
0043726A 8BD0 mov edx,eax
感謝分享原創破解教學 学习一下了哦 学习下楼主的技术 支持楼主! 很不错学习了 学习了,向高手致敬 支持一下分享 不错,楼主高手
向高手学习了