飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 17366|回复: 31

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

[复制链接]
  • TA的每日心情
    奋斗
    2017-4-21 10:43
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2008-2-18 21:30:23 | 显示全部楼层 |阅读模式
    【破文标题】新手破解电脑维修助手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 [Overlay]
    【软件简介】电脑维修助手其功能要点如下:
      随着电脑的普及,电脑维修人员日益缺乏,为此特把《电脑维修助手》献给大家。它图文并茂,覆盖面广,实用性强,即可作为初学维修人员的自学入门教材,也可作为维修人员的提高教材。当然也是每个电脑使用者了解电脑知识,维护电脑正常运行不可或缺的教材软件。本套软件有详尽的文字教程,并配有形象生动的图解。它从实际出发,深入细致,通俗易懂地讲述了各种板卡的工作原理,制作技术和维修方法,更加详细到每一个电子元器件的作用和故障诊断,并附有宝贵的维修经验。告诉你每个部件的易损件,故障检测点等。使你很快在现有水平上有一个突飞的发展。

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

    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 [Overlay] 普通壳 要附加数据处理  
    ESP定律脱壳后 大家别急 处理一下附加数据  LordPE载入源程序 查看源程序区段 看最下一个 .rsrc 把R.偏移和R.大小 的数值 用16进制 相加    我这里是 00045E00 + 00002600 =48400  (有人问为什么)不懂就去看下教程
    再用WinHex 打开源程序   位置-》转到偏移量  把我们的48400打上去  点OK  把00 00 后有数值的往下全部复制
    再WinHex打开脱壳后的程序 拉到最下 把刚复制的数据 全部粘贴  保存!
    好了  完成上面的工作 就可以运行脱壳后的程序了  
    Borland Delphi 6.0 - 7.0 [Overlay]
    输入注册码  看有没有提示  (你输入的信息....不正确....)
    用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:[eax]
    00498821    64:8920         mov dword ptr fs:[eax],esp
    00498824    8BC3            mov eax,ebx
    00498826    8B10            mov edx,dword ptr ds:[eax]
    00498828    FF92 04010000   call dword ptr ds:[edx+104]        ; 关键CALL  要进入
    0049882E    8B15 ACFF4900   mov edx,dword ptr ds:[49FFAC]      ; Unpack_1.004A1D60
    00498834    8802            mov byte ptr ds:[edx],al
    00498836    A1 ACFF4900     mov eax,dword ptr ds:[49FFAC]
    0049883B    8038 00         cmp byte ptr ds:[eax],0
    0049883E    75 19           jnz short Unpack_1.00498859        ; 关键跳  追码F7跟进
    00498840    6A 00           push 0
    00498842    A1 00044A00     mov eax,dword ptr ds:[4A0400]
    00498847    8B00            mov eax,dword ptr ds:[eax]
    00498849    66:8B0D C088490>mov cx,word ptr ds:[4988C0]
    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:[ebp-4]
    0049885C    8BC3            mov eax,ebx
    0049885E    8B08            mov ecx,dword ptr ds:[eax]
    00498860    FF91 F8000000   call dword ptr ds:[ecx+F8]
    00498866    8B55 FC         mov edx,dword ptr ss:[ebp-4]
    00498869    A1 D4004A00     mov eax,dword ptr ds:[4A00D4]
    0049886E    E8 59B9F6FF     call Unpack_1.004041CC
    00498873    8D55 F8         lea edx,dword ptr ss:[ebp-8]
    00498876    8BC3            mov eax,ebx
    00498878    8B08            mov ecx,dword ptr ds:[eax]
    0049887A    FF91 F4000000   call dword ptr ds:[ecx+F4]
    00498880    8B55 F8         mov edx,dword ptr ss:[ebp-8]
    00498883    A1 1C034A00     mov eax,dword ptr ds:[4A031C]
    00498888    E8 3FB9F6FF     call Unpack_1.004041CC
    0049888D    C783 4C020000 0>mov dword ptr ds:[ebx+24C],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:[eax],edx
    0049889F    68 B9884900     push Unpack_1.004988B9
    004988A4    8D45 F8         lea eax,dword ptr ss:[ebp-8]
    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:[eax]
    00498769    64:8920         mov dword ptr fs:[eax],esp
    0049876C    8D55 FC         lea edx,dword ptr ss:[ebp-4]
    0049876F    8BC3            mov eax,ebx
    00498771    8B08            mov ecx,dword ptr ds:[eax]
    00498773    FF91 F4000000   call dword ptr ds:[ecx+F4]         ; 读取注册码
    00498779    8B45 FC         mov eax,dword ptr ss:[ebp-4]
    0049877C    50              push eax
    0049877D    8D55 F8         lea edx,dword ptr ss:[ebp-8]
    00498780    8BC3            mov eax,ebx
    00498782    8B08            mov ecx,dword ptr ds:[eax]
    00498784    FF91 F8000000   call dword ptr ds:[ecx+F8]         ; 读取 机器码
    0049878A    8B45 F8         mov eax,dword ptr ss:[ebp-8]
    0049878D    8B8B 20030000   mov ecx,dword ptr ds:[ebx+320]     ;  (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:[eax],edx
    004987A3    68 BD874900     push Unpack_1.004987BD
    004987A8    8D45 F8         lea eax,dword ptr ss:[ebp-8]
    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:[ebp-4],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:[eax]
    00497472    64:8920         mov dword ptr fs:[eax],esp
    00497475    8D8D FCFEFFFF   lea ecx,dword ptr ss:[ebp-104]
    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:[ebp-104]     ;真码出现  ASCII 0C,"RO6vMRjdMcYm"
    0049748A    8D45 FC         lea eax,dword ptr ss:[ebp-4]
    0049748D    E8 4ACFF6FF     call Unpack_1.004043DC
    00497492    8B45 FC         mov eax,dword ptr ss:[ebp-4]
    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:[eax],edx
    004974A9    68 BE744900     push Unpack_1.004974BE
    004974AE    8D45 FC         lea eax,dword ptr ss:[ebp-4]
    004974B1    E8 C2CCF6FF     call Unpack_1.00404178
    004974B6    C3              retn

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




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

    评分

    参与人数 1威望 +40 飘云币 +40 收起 理由
    Nisy + 40 + 40 感谢分享 重在交流 祝春节快乐

    查看全部评分

    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-2-19 00:02:43 | 显示全部楼层
    学习了 谢谢楼主分享
    做个沙发 咿呀咿呀哟……
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-2-19 22:35:30 | 显示全部楼层
    "什么事都求个明白    可是大侠们写的什么都不明白!呵"""

    这话说的/:017 /:017
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-2-19 22:55:20 | 显示全部楼层
    好厉害啊,谢谢楼主了!!
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-2-19 23:29:03 | 显示全部楼层
    楼主高手高手高高手啊,谢谢了
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2008-2-20 11:00:35 | 显示全部楼层
    感谢!!!!!!!!!!!!!!学习了。
    PYG19周年生日快乐!
  • TA的每日心情

    2024-8-3 12:30
  • 签到天数: 33 天

    [LV.5]常住居民I

    发表于 2008-2-20 12:00:08 | 显示全部楼层
    学习了...谢谢.............
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2021-4-29 01:28
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    发表于 2008-2-20 16:50:28 | 显示全部楼层
    嗯,不错,它指定的文件用ESP脱了后,用unicode查看能看到它的真实地址!佩服楼主!
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-6-18 08:20
  • 签到天数: 279 天

    [LV.8]以坛为家I

    发表于 2008-2-20 17:11:56 | 显示全部楼层
    学习了。。
    呵呵。。
    感谢楼主
    PYG19周年生日快乐!

    该用户从未签到

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

    这种处理Overlay的方法不错 定位的方法很好 当然想省事的话最简单的方法还是用工具Overlay这个工具直接处理  或者直接带壳调试 不脱壳的话 下断上使用API或万能断点试下
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表