cao2109 发表于 2008-9-25 20:38:29

新手的第一次重启验证

【破文标题】新手的第一次重启验证(转载请说明转自PYG)
【破文作者】cao2109
【作者邮箱】[email protected]
【作者主页】http://hi.baidu.com/cao2109
【破解工具】OD,PEID0.92
【破解平台】WINXPsp2
【软件名称】迷你系统工具箱 2.48

【软件大小】896 KB
【原版下载】http://www.skycn.com/soft/24130.html
【保护方式】ASPack 2.12 -> Alexey Solodovnikov +重启验证
【软件简介】迷你系统工具箱是一款小巧的系统增强工具软件。它能进行系统优化设置、IE设置修复、系统和文件夹个性化设置,管理自启动程序等等。您不妨下载试试^_^

【破解声明】只是感兴趣,没有其他目的。
------------------------------------------------------------------------
【破解过程】看了许多野猫3大哥的教程,找个软件下手,去天空溜了一圈,看见这款软件,昨天刚发布,试试!
peid查了下,ASPack 2.12的课~~,手上没脱壳工具,手工ESP搞定。
OD载入,选择不要分析,
0056A001 >60            pushad
0056A002    E8 03000000   call    0056A00A
0056A007- E9 EB045D45   jmp   45B3A4F7
0056A00C    55            push    ebp
0056A00D    C3            retn
0056A00E    E8 01000000   call    0056A014
0056A013    EB 5D         jmp   short 0056A072
0056A015    BB EDFFFFFF   mov   ebx, -13

0056A01A    03DD            add   ebx, ebp
0056A01C    81EB 00A01600   sub   ebx, 16A000
0056A022    83BD 22040000 0>cmp   dword ptr , 0
0056A029    899D 22040000   mov   dword ptr , ebx
0056A02F    0F85 65030000   jnz   0056A39A
0056A035    8D85 2E040000   lea   eax, dword ptr
0056A03B    50            push    eax
0056A03C    FF95 4D0F0000   call    dword ptr
0056A042    8985 26040000   mov   dword ptr , eax
0056A048    8BF8            mov   edi, eax
0056A04A    8D5D 5E         lea   ebx, dword ptr
0056A04D    53            push    ebx
0056A04E    50            push    eax
0056A04F    FF95 490F0000   call    dword ptr
0056A055    8985 4D050000   mov   dword ptr , eax
0056A05B    8D5D 6B         lea   ebx, dword ptr
0056A05E    53            push    ebx
0056A05F    57            push    edi
0056A060    FF95 490F0000   call    dword ptr
0056A066    8985 51050000   mov   dword ptr , eax

F8一下,看到ESP红了,命令行下断HR 0012FFA4 ,F9运行停在这里,
0056A3B0   /75 08         jnz   short 0056A3BA
0056A3B2   |B8 01000000   mov   eax, 1
0056A3B7   |C2 0C00         retn    0C
0056A3BA   \68 64354D00   push    004D3564
0056A3BF    C3            retn

看见了么最后一个RETN返回就试真正的OEP。
004D3564    55            push    ebp
004D3565    8BEC            mov   ebp, esp
004D3567    83C4 F0         add   esp, -10
004D356A    B8 CC314D00   mov   eax, 004D31CC
004D356F    E8 0032F3FF   call    00406774
004D3574    A1 1C704D00   mov   eax, dword ptr
004D3579    8B00            mov   eax, dword ptr
004D357B    E8 18D3F8FF   call    00460898
在004D3564 dump程序,peid为Borland Delphi 6.0 - 7.0。先看看程序
用户名和注册码的方式,随便填下
cao2109
789456         弹出’请重启程序的对话框‘,重启验证的。在OD的字符串里也看到了注册表的地址。
关闭程序,载入脱壳后的文件,搜索字符串。
reguser和regno比较可疑。点进去看看,

004CF88B    E8 C466F9FF   call    00465F54
004CF890    B1 01         mov   cl, 1
004CF892    BA 94FA4C00   mov   edx, 004CFA94                  ; software\systools
004CF897    8BC6            mov   eax, esi
004CF899    E8 1A67F9FF   call    00465FB8
004CF89E    8D4D FC         lea   ecx, dword ptr
004CF8A1    BA B0FA4C00   mov   edx, 004CFAB0                  ; reguser
004CF8A6    8BC6            mov   eax, esi
004CF8A8    E8 236AF9FF   call    004662D0                <-----------取用户名
004CF8AD    8B55 FC         mov   edx, dword ptr
004CF8B0    B8 AC914D00   mov   eax, 004D91AC
004CF8B5    E8 EE4AF3FF   call    004043A8
004CF8BA    8D4D F8         lea   ecx, dword ptr
004CF8BD    BA C0FA4C00   mov   edx, 004CFAC0                  ; regno
004CF8C2    8BC6            mov   eax, esi
004CF8C4    E8 076AF9FF   call    004662D0                  <-----------取假注册码
004CF8C9    8B45 F8         mov   eax, dword ptr
004CF8CC    50            push    eax
004CF8CD    8D4D F4         lea   ecx, dword ptr
004CF8D0|.BA D0FA4C00   mov   edx, 004CFAD0                  ;systoolschina
004CF8D5|.A1 AC914D00   mov   eax, dword ptr
004CF8DA|.E8 09E4FFFF   call    004CDCE8
004CF8DF|.8B55 F4       mov   edx, dword ptr
004CF8E2|.58            pop   eax
004CF8E3|.E8 684EF3FF   call    00404750                   <-----------------比较
004CF8E8|.75 07         jnz   short 004CF8F1
004CF8EA|.C605 A8914D00>mov   byte ptr , 1
004CF8F1|>8BC6          mov   eax, esi
004CF8F3|.E8 D03CF3FF   call    004035C8
004CF8F8|.803D A8914D00>cmp   byte ptr , 0
004CF8FF|.75 27         jnz   short 004CF928                      <-----------------成功就跳
004CF901|.8D55 F0       lea   edx, dword ptr
004CF904|.8BB3 08040000 mov   esi, dword ptr
004CF90A|.8BC6          mov   eax, esi
004CF90C|.E8 E7A3FDFF   call    004A9CF8
004CF911|.8D45 F0       lea   eax, dword ptr
004CF914|.BA E8FA4C00   mov   edx, 004CFAE8                  ;   - 未购买用户
004CF919|.E8 F64CF3FF   call    00404614
004CF91E|.8B55 F0       mov   edx, dword ptr
004CF921|.8BC6          mov   eax, esi
004CF923|.E8 64B0FDFF   call    004AA98C
004CF928|>8D45 EC       lea   eax, dword ptr
004CF92B|.E8 FCF8FFFF   call    004CF22C
004CF930|.8B55 EC       mov   edx, dword ptr
004CF933|.B8 B0914D00   mov   eax, 004D91B0
004CF938|.E8 6B4AF3FF   call    004043A8
004CF93D|.8D45 E8       lea   eax, dword ptr
004CF940|.E8 9BF9FFFF   call    004CF2E0
004CF945|.8B55 E8       mov   edx, dword ptr
004CF948|.B8 B4914D00   mov   eax, 004D91B4
004CF94D|.E8 564AF3FF   call    004043A8
004CF952|.A1 B0914D00   mov   eax, dword ptr
004CF957|.BA 00FB4C00   mov   edx, 004CFB00                  ;220.220.220.1
004CF95C|.E8 EF4DF3FF   call    00404750
004CF961|.75 2F         jnz   short 004CF992
004CF963|.8D45 E4       lea   eax, dword ptr
004CF966|.E8 49F5FFFF   call    004CEEB4
004CF96B|.8B45 E4       mov   eax, dword ptr
004CF96E|.BA 18FB4C00   mov   edx, 004CFB18                  ;www.baidu.com
004CF973|.E8 F0A8F6FF   call    0043A268
004CF978|.84C0          test    al, al
004CF97A|.74 0C         je      short 004CF988
004CF97C|.E8 B7F6FFFF   call    004CF038
004CF981|.E8 4AF4FFFF   call    004CEDD0
004CF986|.EB 0A         jmp   short 004CF992
004CF988|>E8 FBF5FFFF   call    004CEF88
004CF98D|.E8 3EF4FFFF   call    004CEDD0
004CF992|>803D A8914D00>cmp   byte ptr , 1
004CF999|.75 2E         jnz   short 004CF9C9
004CF99B|.8D45 E0       lea   eax, dword ptr
004CF99E|.8B0D AC914D00 mov   ecx, dword ptr
004CF9A4|.BA 30FB4C00   mov   edx, 004CFB30                  ;本软件已注册给:
004CF9A9|.E8 AA4CF3FF   call    00404658
004CF9AE|.8B55 E0       mov   edx, dword ptr
004CF9B1|.8B83 78040000 mov   eax, dword ptr
004CF9B7|.E8 F00EF7FF   call    004408AC
004CF9BC|.B2 01         mov   dl, 1
004CF9BE|.8B83 78040000 mov   eax, dword ptr



在004CF892下断,ctrl+F2,F9运行,断下F8单步走到004CF8E2这里,
edx就是真正的注册码。
下面来做注册机:
中断地址:004CF8E2
中断次数:1
第一字节:58
指令长度:1

内存方式
       寄存器:EDX
另给出我的注册码
**** Hidden Message *****
------------------------------------------------------------------------
【破解总结】此文为我第一次做注册机,如有不对,还请指出。
------------------------------------------------------------------------
【版权声明】版权归原作者,此作品献给那些还没入门的人们。

[ 本帖最后由 cao2109 于 2008-9-27 09:13 编辑 ]

magic659117852 发表于 2008-9-25 21:20:50

呵呵 继续努力~~~/:014

给偶的感觉中断地址不是很合适~~~ 一般非VB且有明码的都会在一个比较CALL上出现上真假码比较...在这个地址上做内存注册机比较规范(当然不一定要在那个地址...理论上凡是出现注册码的地方就是可以截取到注册码的)

cjh9996 发表于 2008-9-26 00:16:18

这是第一次做出来的?厉害了,恭喜下~

cao2109 发表于 2008-9-26 14:21:08

原帖由 magic659117852 于 2008-9-25 21:20 发表 https://www.chinapyg.com/images/common/back.gif
呵呵 继续努力~~~/:014

给偶的感觉中断地址不是很合适~~~ 一般非VB且有明码的都会在一个比较CALL上出现上真假码比较...在这个地址上做内存注册机比较规范(当然不一定要在那个地址...理论上凡是出现注册码的地方 ...

谢谢!我会注意的。

yys5161 发表于 2008-9-26 14:33:06

楼主终天入门了,我们还是门外徘徊呀 。

cao2109 发表于 2008-9-26 14:48:22

原帖由 yys5161 于 2008-9-26 14:33 发表 https://www.chinapyg.com/images/common/back.gif
楼主终天入门了,我们还是门外徘徊呀 。
我只是比你们多实践了一些,只要自己动手做了,就一定会有收获。

傻人有傻福 发表于 2008-9-26 15:35:11

楼主很厉害啊就是头像有点吓人 希望楼主能换一个/:001 /:001

laihuike 发表于 2008-9-27 21:15:13

确实踏出了第一步不错呢!

catalist 发表于 2008-9-27 21:59:49

楼主不错啊,感觉很适合初学者啊

worldmh 发表于 2008-9-28 14:55:03

初学者正好学习了
页: [1] 2 3 4 5
查看完整版本: 新手的第一次重启验证