- UID
- 18470
注册时间2006-7-18
阅读权限10
最后登录1970-1-1
周游历练
该用户从未签到
|
破解这个软件分3步走
1.下载安装软件
2.查壳
3.破解
自己首先把软件下载下来,解压缩以后发现里面有好几个exe文件 我们只需要安装bhdj.msi 这个文件就可以了。
第一步我们已经做完了.
下面我们开始查壳
peid查壳显示为 ASPack 2.11 -> Alexey Solodovnikov
这个壳我一般喜欢用工具脱 然后去看雪的网站下了一个Abstersiver.exe 来脱
脱完以后peid 显示为 Borland Delphi 6.0 - 7.0
刚开始一看到Delphi 写的 想应该不是很难吧
于是抱着试下看得想法来攻破它.
于是打开软件 如图1
图1
选择软件右边的那个小三角选择第二个用户名12 用户名为空然后敲回车就进去了。
进去以后在关于里面有个注册
随便输入用户名和注册码提示注册失败如图2
图2
OK然后用OD载入查找ascll码
006D8825 处发现了 注册码失败如图3
图3
双击跟进
然后往上找,紧接着上面就是注册成功,请退出重新启动软件。还是重启验证性的。
继续往上找 找到段首,把代码给复制一下。
006D8708 /. 55 push ebp
006D8709 |. 8BEC mov ebp, esp
006D870B |. B9 04000000 mov ecx, 4
006D8710 |> 6A 00 /push 0
006D8712 |. 6A 00 |push 0
006D8714 |. 49 |dec ecx
006D8715 |.^ 75 F9 \jnz short 006D8710
006D8717 |. 51 push ecx
006D8718 |. 53 push ebx
006D8719 |. 8BD8 mov ebx, eax
006D871B |. 33C0 xor eax, eax
006D871D |. 55 push ebp
006D871E |. 68 51886D00 push 006D8851
006D8723 |. 64:FF30 push dword ptr fs:[eax]
006D8726 |. 64:8920 mov dword ptr fs:[eax], esp
006D8729 |. 8D55 F8 lea edx, dword ptr [ebp-8]
006D872C |. 8B83 00030000 mov eax, dword ptr [ebx+300]
006D8732 |. E8 11C2F0FF call 005E4948
006D8737 |. 8B45 F8 mov eax, dword ptr [ebp-8]
006D873A |. 8D55 FC lea edx, dword ptr [ebp-4]
006D873D |. E8 A617D3FF call 00409EE8
006D8742 |. 837D FC 00 cmp dword ptr [ebp-4], 0
006D8746 |. 75 2B jnz short 006D8773
006D8748 |. 6A 40 push 40
006D874A |. B9 60886D00 mov ecx, 006D8860 ; 提示
006D874F |. BA 68886D00 mov edx, 006D8868 ; 请输入用户名称!
006D8754 |. A1 E0478200 mov eax, dword ptr [8247E0]
006D8759 |. 8B00 mov eax, dword ptr [eax]
006D875B |. E8 D8E0D9FF call 00476838
006D8760 |. 8B83 00030000 mov eax, dword ptr [ebx+300]
006D8766 |. 8B10 mov edx, dword ptr [eax]
006D8768 |. FF92 C0000000 call dword ptr [edx+C0]
006D876E |. E9 C3000000 jmp 006D8836
006D8773 |> A1 6C7D8200 mov eax, dword ptr [827D6C]
006D8778 |. 50 push eax
006D8779 |. 8D55 F4 lea edx, dword ptr [ebp-C]
006D877C |. 8B83 08030000 mov eax, dword ptr [ebx+308]
006D8782 |. E8 C1C1F0FF call 005E4948
006D8787 |. 8B45 F4 mov eax, dword ptr [ebp-C]
006D878A |. 50 push eax
006D878B |. E8 AC3E0000 call <jmp.®dll.checksn> //关键CaLL
006D8790 |. 84C0 test al, al
006D8792 |. 0F84 86000000 je 006D881E //关键跳
006D8798 |. 8D55 EC lea edx, dword ptr [ebp-14]
006D879B |. 8B83 08030000 mov eax, dword ptr [ebx+308]
006D87A1 |. E8 A2C1F0FF call 005E4948
006D87A6 |. 8B45 EC mov eax, dword ptr [ebp-14]
006D87A9 |. 8D55 F0 lea edx, dword ptr [ebp-10]
006D87AC |. E8 3717D3FF call 00409EE8
006D87B1 |. 8B45 F0 mov eax, dword ptr [ebp-10]
006D87B4 |. 50 push eax
006D87B5 |. A1 6C7D8200 mov eax, dword ptr [827D6C]
006D87BA |. 50 push eax
006D87BB |. 68 80886D00 push 006D8880 ; djb
006D87C0 |. E8 7F3E0000 call <jmp.®dll.WriteRegistry>
006D87C5 |. 8D55 E4 lea edx, dword ptr [ebp-1C]
006D87C8 |. 8B83 08030000 mov eax, dword ptr [ebx+308]
006D87CE |. E8 75C1F0FF call 005E4948
006D87D3 |. 8B45 E4 mov eax, dword ptr [ebp-1C]
006D87D6 |. 8D55 E8 lea edx, dword ptr [ebp-18]
006D87D9 |. E8 0A17D3FF call 00409EE8
006D87DE |. 8B45 E8 mov eax, dword ptr [ebp-18]
006D87E1 |. 50 push eax
006D87E2 |. 8D55 DC lea edx, dword ptr [ebp-24]
006D87E5 |. 8B83 00030000 mov eax, dword ptr [ebx+300]
006D87EB |. E8 58C1F0FF call 005E4948
006D87F0 |. 8B45 DC mov eax, dword ptr [ebp-24]
006D87F3 |. 8D55 E0 lea edx, dword ptr [ebp-20]
006D87F6 |. E8 ED16D3FF call 00409EE8
006D87FB |. 8B45 E0 mov eax, dword ptr [ebp-20]
006D87FE |. 5A pop edx
006D87FF |. E8 F46F0000 call 006DF7F8
006D8804 |. 6A 40 push 40
006D8806 |. B9 60886D00 mov ecx, 006D8860 ; 提示
006D880B |. BA 84886D00 mov edx, 006D8884 ; 注册成功!请退出重新启动软件。
006D8810 |. A1 E0478200 mov eax, dword ptr [8247E0]
006D8815 |. 8B00 mov eax, dword ptr [eax]
006D8817 |. E8 1CE0D9FF call 00476838
006D881C |. EB 18 jmp short 006D8836
006D881E |> 6A 40 push 40
006D8820 |. B9 60886D00 mov ecx, 006D8860 ; 提示
006D8825 |. BA A4886D00 mov edx, 006D88A4 ; 注册失败!
006D882A |. A1 E0478200 mov eax, dword ptr [8247E0]
006D882F |. 8B00 mov eax, dword ptr [eax]
006D8831 |. E8 02E0D9FF call 00476838
006D8836 |> 33C0 xor eax, eax
006D8838 |. 5A pop edx
006D8839 |. 59 pop ecx
006D883A |. 59 pop ecx
006D883B |. 64:8910 mov dword ptr fs:[eax], edx
006D883E |. 68 58886D00 push 006D8858
006D8843 |> 8D45 DC lea eax, dword ptr [ebp-24]
006D8846 |. BA 09000000 mov edx, 9
006D884B |. E8 CCC7D2FF call 0040501C
006D8850 \. C3 retn
006D8851 .^ E9 46C0D2FF jmp 0040489C
006D8856 .^ EB EB jmp short 006D8843
006D8858 . 5B pop ebx
006D8859 . 8BE5 mov esp, ebp
006D885B . 5D pop ebp
006D885C . C3 retn
在找段首的过程中发现在 006D8792 处有一个大的跳转是跳到注册失败那里估计这个就是关键跳了。
然后将其NOP掉 保存退出 然后重新进软件 点出注册 随便输入用户名和密码
点注册 注册成功!请退出重新启动软件。如图4
图4
虽然是提示成功了。
但是重新进去后发现软件的上方还是显示试用版如图5 (- -!)很是郁闷。。。
在JE的上面的那个CAll 里面应该是算法 可惜本人是新手 还没能看得懂算法。。
感觉破解到这里很可惜 把我的破解过程写出来。。
希望论坛的哪为热心人士或者功底不错的人士来一起破解看看练练手 把其破解的过程写出来或者是做个录像发到视频区。。
也让我们新手学点东西本人不胜感激。
软件我传到网站上去了大家可以下载去看看。。
下载地址
http://www.dyql.gov.cn/bhdj.rar
补充一下 应一楼大侠的话跟进了关键CLL 006D878B |. E8 AC3E0000 call <jmp.®dll.checksn> 看了一下 小弟不才 不是很懂里面的东西
贴一下代码
00811544 > $ 55 push ebp
00811545 . 8BEC mov ebp, esp
00811547 . 83C4 F0 add esp, -10
0081154A . 53 push ebx
0081154B . B8 04088100 mov eax, 00810804
00811550 . E8 6363BFFF call 004078B8
00811555 . 8B1D E0478200 mov ebx, dword ptr [8247E0] ; bhdj_u.00825C3C
0081155B . 8B03 mov eax, dword ptr [ebx]
0081155D . E8 AE50C6FF call 00476610
00811562 . 8B03 mov eax, dword ptr [ebx]
00811564 . BA B8178100 mov edx, 008117B8 ; ASCII "商业管理系统"
00811569 . E8 AE4CC6FF call 0047621C
0081156E . 8B0D CC3C8200 mov ecx, dword ptr [823CCC] ; bhdj_u.008282CC
00811574 . 8B03 mov eax, dword ptr [ebx]
00811576 . 8B15 FCA88000 mov edx, dword ptr [80A8FC] ; bhdj_u.0080A948
0081157C . E8 A750C6FF call 00476628
00811581 . 8B0D 38468200 mov ecx, dword ptr [824638] ; bhdj_u.0082635C
00811587 . 8B03 mov eax, dword ptr [ebx]
00811589 . 8B15 D0B85A00 mov edx, dword ptr [5AB8D0] ; bhdj_u.005AB91C
0081158F . E8 9450C6FF call 00476628
00811594 . 8B0D C8498200 mov ecx, dword ptr [8249C8] ; bhdj_u.00827A14
0081159A . 8B03 mov eax, dword ptr [ebx]
0081159C . 8B15 14176600 mov edx, dword ptr [661714] ; bhdj_u.00661760
008115A2 . E8 8150C6FF call 00476628
008115A7 . A1 604A8200 mov eax, dword ptr [824A60]
008115AC . 8B00 mov eax, dword ptr [eax]
008115AE . BA D0178100 mov edx, 008117D0
008115B3 . E8 3C3EBFFF call 004053F4
008115B8 . 74 0C je short 008115C6
008115BA . 8B03 mov eax, dword ptr [ebx]
008115BC . BA DC178100 mov edx, 008117DC
008115C1 . E8 564CC6FF call 0047621C
008115C6 > 8B0D 90448200 mov ecx, dword ptr [824490] ; bhdj_u.00827C1C
008115CC . 8B03 mov eax, dword ptr [ebx]
008115CE . 8B15 008A6A00 mov edx, dword ptr [6A8A00] ; bhdj_u.006A8A4C
008115D4 . E8 4F50C6FF call 00476628
008115D9 . 8B0D FC458200 mov ecx, dword ptr [8245FC] ; bhdj_u.00828090
008115DF . 8B03 mov eax, dword ptr [ebx]
008115E1 . 8B15 BCE77700 mov edx, dword ptr [77E7BC] ; bhdj_u.0077E808
008115E7 . E8 3C50C6FF call 00476628
008115EC . 8B0D 50438200 mov ecx, dword ptr [824350] ; bhdj_u.00827D74
008115F2 . 8B03 mov eax, dword ptr [ebx]
008115F4 . 8B15 54916D00 mov edx, dword ptr [6D9154] ; bhdj_u.006D91A0
008115FA . E8 2950C6FF call 00476628
008115FF . 8B0D 144D8200 mov ecx, dword ptr [824D14] ; bhdj_u.00827D5C
00811605 . 8B03 mov eax, dword ptr [ebx]
00811607 . 8B15 186F6D00 mov edx, dword ptr [6D6F18] ; bhdj_u.006D6F64
0081160D . E8 1650C6FF call 00476628
00811612 . 8B0D A0438200 mov ecx, dword ptr [8243A0] ; bhdj_u.00827DA8
00811618 . 8B03 mov eax, dword ptr [ebx]
0081161A . 8B15 94846E00 mov edx, dword ptr [6E8494] ; bhdj_u.006E84E0
00811620 . E8 0350C6FF call 00476628
00811625 . 8B0D 9C458200 mov ecx, dword ptr [82459C] ; bhdj_u.00827AC0
0081162B . 8B03 mov eax, dword ptr [ebx]
0081162D . 8B15 44BD6700 mov edx, dword ptr [67BD44] ; bhdj_u.0067BD90
00811633 . E8 F04FC6FF call 00476628
00811638 . 8B0D 50478200 mov ecx, dword ptr [824750] ; bhdj_u.00827B0C
0081163E . 8B03 mov eax, dword ptr [ebx]
00811640 . 8B15 14F26700 mov edx, dword ptr [67F214] ; bhdj_u.0067F260
00811646 . E8 DD4FC6FF call 00476628
0081164B . 8B0D 704B8200 mov ecx, dword ptr [824B70] ; bhdj_u.00827AD0
00811651 . 8B03 mov eax, dword ptr [ebx]
00811653 . 8B15 6CDE6700 mov edx, dword ptr [67DE6C] ; bhdj_u.0067DEB8
00811659 . E8 CA4FC6FF call 00476628
0081165E . 8B0D 14408200 mov ecx, dword ptr [824014] ; bhdj_u.00827B9C
00811664 . 8B03 mov eax, dword ptr [ebx]
00811666 . 8B15 F08D6900 mov edx, dword ptr [698DF0] ; bhdj_u.00698E3C
0081166C . E8 B74FC6FF call 00476628
00811671 . 8B0D 84438200 mov ecx, dword ptr [824384] ; bhdj_u.00827DB8
00811677 . 8B03 mov eax, dword ptr [ebx]
00811679 . 8B15 7CAA6E00 mov edx, dword ptr [6EAA7C] ; bhdj_u.006EAAC8
0081167F . E8 A44FC6FF call 00476628
00811684 . 8B0D 744D8200 mov ecx, dword ptr [824D74] ; bhdj_u.00827B2C
0081168A . 8B03 mov eax, dword ptr [ebx]
0081168C . 8B15 88516800 mov edx, dword ptr [685188] ; bhdj_u.006851D4
00811692 . E8 914FC6FF call 00476628
00811697 . 8B0D 884A8200 mov ecx, dword ptr [824A88] ; bhdj_u.00827AC8
0081169D . 8B03 mov eax, dword ptr [ebx]
0081169F . 8B15 D8D76700 mov edx, dword ptr [67D7D8] ; bhdj_u.0067D824
008116A5 . E8 7E4FC6FF call 00476628
008116AA . 8B0D 444B8200 mov ecx, dword ptr [824B44] ; bhdj_u.00827DE4
008116B0 . 8B03 mov eax, dword ptr [ebx]
008116B2 . 8B15 54CC6E00 mov edx, dword ptr [6ECC54] ; bhdj_u.006ECCA0
008116B8 . E8 6B4FC6FF call 00476628
008116BD . 8B0D 6C4B8200 mov ecx, dword ptr [824B6C] ; bhdj_u.00827AA0
008116C3 . 8B03 mov eax, dword ptr [ebx]
008116C5 . 8B15 B4026700 mov edx, dword ptr [6702B4] ; bhdj_u.00670300
008116CB . E8 584FC6FF call 00476628
008116D0 . 8B0D FC3F8200 mov ecx, dword ptr [823FFC] ; bhdj_u.00827D64
008116D6 . 8B03 mov eax, dword ptr [ebx]
008116D8 . 8B15 58806D00 mov edx, dword ptr [6D8058] ; bhdj_u.006D80A4
008116DE . E8 454FC6FF call 00476628
008116E3 . 8B0D 38498200 mov ecx, dword ptr [824938] ; bhdj_u.00827DF8
008116E9 . 8B03 mov eax, dword ptr [ebx]
008116EB . 8B15 F4F96E00 mov edx, dword ptr [6EF9F4] ; bhdj_u.006EFA40
008116F1 . E8 324FC6FF call 00476628
008116F6 . 8B0D C44C8200 mov ecx, dword ptr [824CC4] ; bhdj_u.00827C78
008116FC . 8B03 mov eax, dword ptr [ebx]
008116FE . 8B15 385E6B00 mov edx, dword ptr [6B5E38] ; bhdj_u.006B5E84
00811704 . E8 1F4FC6FF call 00476628
00811709 . 8B0D 284C8200 mov ecx, dword ptr [824C28] ; bhdj_u.008279E4
0081170F . 8B03 mov eax, dword ptr [ebx]
00811711 . 8B15 24E86500 mov edx, dword ptr [65E824] ; bhdj_u.0065E870
00811717 . E8 0C4FC6FF call 00476628
0081171C . 8B0D 18468200 mov ecx, dword ptr [824618] ; bhdj_u.008279F0
00811722 . 8B03 mov eax, dword ptr [ebx]
00811724 . 8B15 A0ED6500 mov edx, dword ptr [65EDA0] ; bhdj_u.0065EDEC
0081172A . E8 F94EC6FF call 00476628
0081172F . 8B0D 90428200 mov ecx, dword ptr [824290] ; bhdj_u.008279FC
00811735 . 8B03 mov eax, dword ptr [ebx]
00811737 . 8B15 00F16500 mov edx, dword ptr [65F100] ; bhdj_u.0065F14C
0081173D . E8 E64EC6FF call 00476628
00811742 . 8B0D 20448200 mov ecx, dword ptr [824420] ; bhdj_u.00827A1C
00811748 . 8B03 mov eax, dword ptr [ebx]
0081174A . 8B15 A4196600 mov edx, dword ptr [6619A4] ; bhdj_u.006619F0
00811750 . E8 D34EC6FF call 00476628
00811755 . 8B0D 043E8200 mov ecx, dword ptr [823E04] ; bhdj_u.00827A3C
0081175B . 8B03 mov eax, dword ptr [ebx]
0081175D . 8B15 58486600 mov edx, dword ptr [664858] ; bhdj_u.006648A4
00811763 . E8 C04EC6FF call 00476628
00811768 . 8B0D 844C8200 mov ecx, dword ptr [824C84] ; bhdj_u.00827A80
0081176E . 8B03 mov eax, dword ptr [ebx]
00811770 . 8B15 90E86600 mov edx, dword ptr [66E890] ; bhdj_u.0066E8DC
00811776 . E8 AD4EC6FF call 00476628
0081177B . 8B0D 644C8200 mov ecx, dword ptr [824C64] ; bhdj_u.00827E28
00811781 . 8B03 mov eax, dword ptr [ebx]
00811783 . 8B15 C0336F00 mov edx, dword ptr [6F33C0] ; bhdj_u.006F340C
00811789 . E8 9A4EC6FF call 00476628
0081178E . 8B0D 304D8200 mov ecx, dword ptr [824D30] ; bhdj_u.00827BA4
00811794 . 8B03 mov eax, dword ptr [ebx]
00811796 . 8B15 E4A26900 mov edx, dword ptr [69A2E4] ; bhdj_u.0069A330
0081179C . E8 874EC6FF call 00476628
008117A1 . 8B03 mov eax, dword ptr [ebx]
008117A3 . E8 004FC6FF call 004766A8
008117A8 . 5B pop ebx
008117A9 . E8 B636BFFF call 00404E64
008117AE . 0000 add byte ptr [eax], al
008117B0 . FFFFFFFF dd FFFFFFFF
008117B4 . 0C000000 dd 0000000C
008117B8 . C9 CC D2 B5 B>ascii "商业管理系统",0
008117C5 00 db 00
008117C6 00 db 00
008117C7 00 db 00
008117C8 . FFFFFFFF dd FFFFFFFF
008117CC . 01000000 dd 00000001
008117D0 . 33 00 ascii "3",0
008117D2 00 db 00
008117D3 00 db 00
008117D4 FF db FF
008117D5 FF db FF
008117D6 FF db FF
008117D7 FF db FF
008117D8 10 db 10
008117D9 00 db 00
008117DA 00 db 00
008117DB 00 db 00
008117DC B3 db B3
008117DD AC db AC
008117DE . CD FA C9 CC D>ascii "旺商业管理系统",0
008117ED 00 db 00
[ 本帖最后由 woainioo7 于 2008-9-5 22:08 编辑 ] |
-
图5
|