天颖 发表于 2008-2-18 21:30:23

新手破解电脑维修助手v8.01 中等难度

【破文标题】新手破解电脑维修助手v8.01 中等难度
【破文作者】天颖
【作者邮箱】[email protected]
【作者主页】
【破解工具】PEiD,OD,LordPE,taskmgr查看目录版,WinHex,DeDe,PE Explore
【破解平台】Windos XP sp2
【软件名称】电脑维修助手v8.01
【软件大小】
【原版下载】http://shareware.skycn.com/soft/5329.htm
【保护方式】UPX 0.89.6 - 1.02 / 1.05 - 1.24 (Delphi) stub -> Markus & Laszlo
【软件简介】电脑维修助手其功能要点如下:
随着电脑的普及,电脑维修人员日益缺乏,为此特把《电脑维修助手》献给大家。它图文并茂,覆盖面广,实用性强,即可作为初学维修人员的自学入门教材,也可作为维修人员的提高教材。当然也是每个电脑使用者了解电脑知识,维护电脑正常运行不可或缺的教材软件。本套软件有详尽的文字教程,并配有形象生动的图解。它从实际出发,深入细致,通俗易懂地讲述了各种板卡的工作原理,制作技术和维修方法,更加详细到每一个电子元器件的作用和故障诊断,并附有宝贵的维修经验。告诉你每个部件的易损件,故障检测点等。使你很快在现有水平上有一个突飞的发展。

【破解声明】首先对作者道歉!用了他的软件来让自己和学员们练手!希望大家不要去做些对别人的自主产权有害的事!
------------------------------------------------------------------------
【破解过程】我们还是按照老步骤来做!

1.查壳   PEiD:UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo
用ESP定律脱之我这里不详解   
声明一点 软件作者很狡猾 把真程序放到了 C:\WINDOWS\system32\pcwxzs\dnwxzs.com 里你安装目录盘里的只是假程序这里我用taskmgr查看目录版才找出来的
打开C:\WINDOWS\system32\pcwxzs\dnwxzs.com把dnwxzs.com 改后缀dnwxzs.exe
继续查壳 UPX 0.89.6 - 1.02 / 1.05 - 1.24 (Delphi) stub -> Markus & Laszlo 普通壳 要附加数据处理
ESP定律脱壳后 大家别急 处理一下附加数据LordPE载入源程序 查看源程序区段 看最下一个 .rsrc 把R.偏移和R.大小 的数值 用16进制 相加    我这里是 00045E00 + 00002600 =48400(有人问为什么)不懂就去看下教程
再用WinHex 打开源程序   位置-》转到偏移量把我们的48400打上去点OK把00 00 后有数值的往下全部复制
再WinHex打开脱壳后的程序 拉到最下 把刚复制的数据 全部粘贴保存!
好了完成上面的工作 就可以运行脱壳后的程序了
Borland Delphi 6.0 - 7.0
输入注册码看有没有提示(你输入的信息....不正确....)
用OD载入 查看 可是找不到提示没办法 只有用DEDE了!
这里我已经找到按扭事件了 0049880C 我不详说了!要不12点都写不完大家原谅 不懂的可以去网上看下教程
用OD载入CTRL+G输入表达式 0049880C
0049880C    55            push ebp                           ; 下断
0049880D    8BEC            mov ebp,esp
0049880F    6A 00         push 0
00498811    6A 00         push 0
00498813    53            push ebx
00498814    8BD8            mov ebx,eax
00498816    33C0            xor eax,eax
00498818    55            push ebp
00498819    68 B2884900   push Unpack_1.004988B2
0049881E    64:FF30         push dword ptr fs:
00498821    64:8920         mov dword ptr fs:,esp
00498824    8BC3            mov eax,ebx
00498826    8B10            mov edx,dword ptr ds:
00498828    FF92 04010000   call dword ptr ds:      ; 关键CALL要进入
0049882E    8B15 ACFF4900   mov edx,dword ptr ds:      ; Unpack_1.004A1D60
00498834    8802            mov byte ptr ds:,al
00498836    A1 ACFF4900   mov eax,dword ptr ds:
0049883B    8038 00         cmp byte ptr ds:,0
0049883E    75 19         jnz short Unpack_1.00498859      ; 关键跳追码F7跟进
00498840    6A 00         push 0
00498842    A1 00044A00   mov eax,dword ptr ds:
00498847    8B00            mov eax,dword ptr ds:
00498849    66:8B0D C088490>mov cx,word ptr ds:
00498850    B2 01         mov dl,1
00498852    E8 EDA4F9FF   call Unpack_1.00432D44             ; 注册失败
00498857    EB 3E         jmp short Unpack_1.00498897
00498859    8D55 FC         lea edx,dword ptr ss:
0049885C    8BC3            mov eax,ebx
0049885E    8B08            mov ecx,dword ptr ds:
00498860    FF91 F8000000   call dword ptr ds:
00498866    8B55 FC         mov edx,dword ptr ss:
00498869    A1 D4004A00   mov eax,dword ptr ds:
0049886E    E8 59B9F6FF   call Unpack_1.004041CC
00498873    8D55 F8         lea edx,dword ptr ss:
00498876    8BC3            mov eax,ebx
00498878    8B08            mov ecx,dword ptr ds:
0049887A    FF91 F4000000   call dword ptr ds:
00498880    8B55 F8         mov edx,dword ptr ss:
00498883    A1 1C034A00   mov eax,dword ptr ds:
00498888    E8 3FB9F6FF   call Unpack_1.004041CC
0049888D    C783 4C020000 0>mov dword ptr ds:,1
00498897    33C0            xor eax,eax
00498899    5A            pop edx
0049889A    59            pop ecx
0049889B    59            pop ecx
0049889C    64:8910         mov dword ptr fs:,edx
0049889F    68 B9884900   push Unpack_1.004988B9
004988A4    8D45 F8         lea eax,dword ptr ss:
004988A7    BA 02000000   mov edx,2
004988AC    E8 EBB8F6FF   call Unpack_1.0040419C
004988B1    C3            retn

可以直接爆破 但每次运行都要写一次码麻烦我们继续追码


00498757    6A 00         push 0
00498759    6A 00         push 0
0049875B    53            push ebx
0049875C    8BD8            mov ebx,eax
0049875E    33C0            xor eax,eax
00498760    55            push ebp
00498761    68 B6874900   push Unpack_1.004987B6
00498766    64:FF30         push dword ptr fs:
00498769    64:8920         mov dword ptr fs:,esp
0049876C    8D55 FC         lea edx,dword ptr ss:
0049876F    8BC3            mov eax,ebx
00498771    8B08            mov ecx,dword ptr ds:
00498773    FF91 F4000000   call dword ptr ds:         ; 读取注册码
00498779    8B45 FC         mov eax,dword ptr ss:
0049877C    50            push eax
0049877D    8D55 F8         lea edx,dword ptr ss:
00498780    8BC3            mov eax,ebx
00498782    8B08            mov ecx,dword ptr ds:
00498784    FF91 F8000000   call dword ptr ds:         ; 读取 机器码
0049878A    8B45 F8         mov eax,dword ptr ss:
0049878D    8B8B 20030000   mov ecx,dword ptr ds:   ;(ASCII "bai5076hu740115jb")我原来以为是真码但不是
00498793    5A            pop edx
00498794    E8 B7ECFFFF   call Unpack_1.00497450             ; F7进去
00498799    8BD8            mov ebx,eax
0049879B    33C0            xor eax,eax
0049879D    5A            pop edx
0049879E    59            pop ecx
0049879F    59            pop ecx
004987A0    64:8910         mov dword ptr fs:,edx
004987A3    68 BD874900   push Unpack_1.004987BD
004987A8    8D45 F8         lea eax,dword ptr ss:
004987AB    BA 02000000   mov edx,2
004987B0    E8 E7B9F6FF   call Unpack_1.0040419C
004987B5    C3            retn

原来还以为ASCII "bai5076hu740115jb 是注册码 可是不是 我也不知道是什么我们继续进去看


00497450    55            push ebp
00497451    8BEC            mov ebp,esp
00497453    81C4 FCFEFFFF   add esp,-104
00497459    53            push ebx
0049745A    56            push esi
0049745B    57            push edi
0049745C    33DB            xor ebx,ebx
0049745E    895D FC         mov dword ptr ss:,ebx
00497461    8BF9            mov edi,ecx
00497463    8BF2            mov esi,edx                        ; bai5076hu740115jb
00497465    8BD8            mov ebx,eax                        ; 机器码
00497467    33C0            xor eax,eax
00497469    55            push ebp
0049746A    68 B7744900   push Unpack_1.004974B7
0049746F    64:FF30         push dword ptr fs:
00497472    64:8920         mov dword ptr fs:,esp
00497475    8D8D FCFEFFFF   lea ecx,dword ptr ss:
0049747B    8BD7            mov edx,edi
0049747D    8BC3            mov eax,ebx
0049747F    E8 64FEFFFF   call Unpack_1.004972E8             ; 算法CALL 研究算法可进
00497484    8D95 FCFEFFFF   lea edx,dword ptr ss:   ;真码出现ASCII 0C,"RO6vMRjdMcYm"
0049748A    8D45 FC         lea eax,dword ptr ss:
0049748D    E8 4ACFF6FF   call Unpack_1.004043DC
00497492    8B45 FC         mov eax,dword ptr ss:
00497495    8BD6            mov edx,esi
00497497    E8 E8D0F6FF   call Unpack_1.00404584
0049749C    0F94C0          sete al
0049749F    8BD8            mov ebx,eax
004974A1    33C0            xor eax,eax
004974A3    5A            pop edx
004974A4    59            pop ecx
004974A5    59            pop ecx
004974A6    64:8910         mov dword ptr fs:,edx
004974A9    68 BE744900   push Unpack_1.004974BE
004974AE    8D45 FC         lea eax,dword ptr ss:
004974B1    E8 C2CCF6FF   call Unpack_1.00404178
004974B6    C3            retn

我们注册看 RO6vMRjdMcYm成功 哈是明码比较的 比较简单




------------------------------------------------------------------------
【破解总结】这段时间下的软件老是碰壁 今天刚破了一个 就写下来与大家分享!
谢谢 PYG 给了这个很好的平台让我们学习!再祝PYG越办越好!
------------------------------------------------------------------------

qianjinmzc 发表于 2008-2-19 00:02:43

学习了 谢谢楼主分享
做个沙发 咿呀咿呀哟……

jmzhwf 发表于 2008-2-19 22:35:30

"什么事都求个明白    可是大侠们写的什么都不明白!呵"""

这话说的/:017 /:017

zyy20 发表于 2008-2-19 22:55:20

好厉害啊,谢谢楼主了!!

184708154 发表于 2008-2-19 23:29:03

楼主高手高手高高手啊,谢谢了

langlirong 发表于 2008-2-20 11:00:35

感谢!!!!!!!!!!!!!!学习了。

bbvbvbbv 发表于 2008-2-20 12:00:08

学习了...谢谢.............

105200951 发表于 2008-2-20 16:50:28

嗯,不错,它指定的文件用ESP脱了后,用unicode查看能看到它的真实地址!佩服楼主!

cell 发表于 2008-2-20 17:11:56

学习了。。
呵呵。。
感谢楼主

Nisy 发表于 2008-2-20 19:52:31

处理附加数据   
ESP定律脱壳后 处理一下附加数据LordPE载入源程序 查看源程序区段 看最下一个 .rsrc 把R.偏移和R.大小 的数值 用16进制 相加 我这里是 00045E00 + 00002600 =48400(有人问为什么)不懂就去看下教程
再用WinHex 打开源程序位置-》转到偏移量把我们的48400打上去点OK把00 00 后有数值的往下全部复制……

这种处理Overlay的方法不错 定位的方法很好 当然想省事的话最简单的方法还是用工具Overlay这个工具直接处理或者直接带壳调试 不脱壳的话 下断上使用API或万能断点试下
页: [1] 2 3 4
查看完整版本: 新手破解电脑维修助手v8.01 中等难度