- UID
- 475
注册时间2005-3-30
阅读权限20
最后登录1970-1-1
以武会友
TA的每日心情 | 无聊 2022-9-12 06:24 |
---|
签到天数: 188 天 [LV.7]常住居民III
|
【破解作者】 风明月
【作者邮箱】 ws5483@tom.com
【作者主页】 PYG
【使用工具】 peid OD
【破解平台】 Win9x/NT/2000/XP
【软件名称】 超级电脑助手
【软件大小】 1.22M
【加壳方式】 无壳
【破解声明】 我是一只小菜鸟,偶得一点心得,愿与大家分享:)
--------------------------------------------------------------------------------
【破解内容】
先用peid查壳,显示Borland Delphi 6.0 - 7.0编写。无壳。
od载入
005AEDBC > $ 55 push ebp
005AEDBD . 8BEC mov ebp,esp
005AEDBF . 83C4 F0 add esp,-10
005AEDC2 . 53 push ebx
因为这个软件是注册没有提示的。我们先不运行。打开OD插件——字符串参考——2搜搜索UNicode
然后出会出来搜索到的字符串。我们下下看。
OllyDbg 字符串参考搜索,这里有两个
项目 871
地址=00549D26 反汇编=mov eax,dnzs.0054A1F0 字符串=软件未注册,功能限制(这个地方我不知道怎么用去弄所以没有选)
项目 946
地址=0056C156 反汇编=mov eax,dnzs.0056C3C8 字符串=软件注册成功,谢谢注册。(我选的是这个地方。因为爆破找跳到正确的地方比较快)
我们看到这里。双击0056C156来到OD注册正确的地方
0056C0C4 /. 55 push ebp
0056C0C5 |. 8BEC mov ebp,esp
0056C0C7 |. B9 08000000 mov ecx,8
0056C0CC |> 6A 00 /push 0
0056C0CE |. 6A 00 |push 0
0056C0D0 |. 49 |dec ecx
0056C0D1 |.^ 75 F9 \jnz short dnzs.0056C0CC
0056C0D3 |. 51 push ecx
0056C0D4 |. 53 push ebx
0056C0D5 |. 56 push esi
0056C0D6 |. 8BD8 mov ebx,eax
0056C0D8 |. 33C0 xor eax,eax
0056C0DA |. 55 push ebp
0056C0DB |. 68 6DC35600 push dnzs.0056C36D
0056C0E0 |. 64:FF30 push dword ptr fs:[eax]
0056C0E3 |. 64:8920 mov dword ptr fs:[eax],esp
0056C0E6 |. B2 01 mov dl,1
0056C0E8 |. A1 88134700 mov eax,dword ptr ds:[471388]
0056C0ED |. E8 0254F0FF call dnzs.004714F4
0056C0F2 |. 8BF0 mov esi,eax
0056C0F4 |. BA 02000080 mov edx,80000002
0056C0F9 |. 8BC6 mov eax,esi
0056C0FB |. E8 D054F0FF call dnzs.004715D0
0056C100 |. B1 01 mov cl,1
0056C102 |. BA 84C35600 mov edx,dnzs.0056C384 ; ASCII "SOFTWARE\Microsoft\Yhds"
0056C107 |. 8BC6 mov eax,esi
0056C109 |. E8 0656F0FF call dnzs.00471714
0056C10E |. 8D4D FC lea ecx,dword ptr ss:[ebp-4]
0056C111 |. BA A4C35600 mov edx,dnzs.0056C3A4 ; ASCII "regdnzs"
0056C116 |. 8BC6 mov eax,esi
0056C118 |. E8 2F5BF0FF call dnzs.00471C4C
0056C11D |. 837D FC 00 cmp dword ptr ss:[ebp-4],0
0056C121 |. 74 42 je short dnzs.0056C165 把这里的je改成jnz
0056C123 |. 8D55 F4 lea edx,dword ptr ss:[ebp-C]
0056C126 |. A1 4C3D5B00 mov eax,dword ptr ds:[5B3D4C]
0056C12B |. 8B00 mov eax,dword ptr ds:[eax]
0056C12D |. E8 86DEEFFF call dnzs.00469FB8
0056C132 |. 8B45 F4 mov eax,dword ptr ss:[ebp-C]
0056C135 |. 8D55 F8 lea edx,dword ptr ss:[ebp-8]
0056C138 |. E8 DBDAE9FF call dnzs.00409C18
0056C13D |. 8D45 F8 lea eax,dword ptr ss:[ebp-8]
0056C140 |. BA B4C35600 mov edx,dnzs.0056C3B4 ; ASCII "li1ul.dll"
0056C145 |. E8 728CE9FF call dnzs.00404DBC
0056C14A |. 8B45 F8 mov eax,dword ptr ss:[ebp-8]
0056C14D |. E8 DED8E9FF call dnzs.00409A30
0056C152 |. 3C 01 cmp al,1
0056C154 |. 75 0F jnz short dnzs.0056C165 把这里的jnZ改成je
0056C156 |. B8 C8C35600 mov eax,dnzs.0056C3C8 ; 软件注册成功,谢谢注册
0056C15B |. E8 A056EDFF call dnzs.00441800
0056C160 |. /E9 94010000 jmp dnzs.0056C2F9
0056C165 |> |8D55 F0 lea edx,dword ptr ss:[ebp-10]
0056C168 |. |8B83 38030000 mov eax,dword ptr ds:[ebx+338]
我们向上看。这多么的代码,我不明白是什么。呵呵。不过老大的写的东西里有讲到过。好像就是分析算法什么的。
反正是我不会的。不去管它了。就找关键的跳转吧于是我就看是从什么地方跳到这里来的。上面的两个跳转都是跳到注册正功下面的
所以在这里我们就要修改,让两个跳转都不能实现。这样就做成了爆破软件。然后运行,注册。呵呵。
用户名5483
注册码123456789
显示注册成功。这里的都是随便输入的。
--------------------------------------------------------------------------------
【破解总结】
我还不会算法。这样还不行。我会在今后的日子里。在高手们的指点下。早日学会找注册码做注册机。呵呵努力中。
--------------------------------------------------------------------------------
【版权声明】 本文纯属技术交流, 转载请注明作者和PYG并保持文章的完整, 谢谢!
[ Last edited by ly83 on 2005-9-26 at 12:32 AM ] |
|