首页
社区
课程
招聘
[下载]CrackMe
发表于: 2011-2-15 19:42 8207

[下载]CrackMe

2011-2-15 19:42
8207
收藏
免费
支持
分享
最新回复 (11)
雪    币: 578
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
果然能增加不少信心呐
暴破的是楼主手工在OD里写的吧
那个用户名第一位ASC码+1的,如果用户名是中文,那就
2011-2-15 21:46
0
雪    币: 6
活跃值: (30)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
3
第一个CrackMe..
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
00401000  /$  55            push    ebp
00401001  |.  8BEC          mov     ebp, esp
00401003  |.  83C4 D8       add     esp, -28
00401006  |.  57            push    edi
00401007  |.  837D 0C 01    cmp     dword ptr [ebp+C], 1             ;  用户名位数与1比较
0040100B  |.  73 18         jnb     short 00401025                   ;  大于则跳
0040100D  |.  6A 00         push    0                                ; /Style = MB_OK|MB_APPLMODAL
0040100F  |.  68 30304000   push    00403030                         ; |提示
00401014  |.  68 35304000   push    00403035                         ; |用户名不能为空!
00401019  |.  6A 00         push    0                                ; |hOwner = NULL
0040101B  |.  E8 36030000   call    <jmp.&user32.MessageBoxA>        ; \MessageBoxA
00401020  |.  5F            pop     edi
00401021  |.  C9            leave
00401022  |.  C2 1400       retn    14
00401025  |>  8B75 08       mov     esi, dword ptr [ebp+8]
00401028  |.  8D7D D8       lea     edi, dword ptr [ebp-28]
0040102B  |.  33C9          xor     ecx, ecx
0040102D  |.  8B45 0C       mov     eax, dword ptr [ebp+C]
00401030  |.  C60438 00     mov     byte ptr [eax+edi], 0
00401034  |.  EB 0A         jmp     short 00401040
00401036  |>  0FB60431      /movzx   eax, byte ptr [ecx+esi]         ;  逐位读取用户名,将每位用户名向后一位作为注册码
0040103A  |.  04 01         |add     al, 1
0040103C  |.  880439        |mov     byte ptr [ecx+edi], al
0040103F  |.  41            |inc     ecx
00401040  |>  3B4D 0C        cmp     ecx, dword ptr [ebp+C]
00401043  |.^ 72 F1         \jb      short 00401036
00401045  |.  FF75 10       push    dword ptr [ebp+10]               ; /String2
00401048  |.  8D45 D8       lea     eax, dword ptr [ebp-28]          ; |
0040104B  |.  50            push    eax                              ; |String1
0040104C  |.  E8 47030000   call    <jmp.&kernel32.lstrcmpA>         ; \假码与真码比较
00401051  |.  0BC0          or      eax, eax
00401053  |.  75 15         jnz     short 0040106A                   ;  爆破点,nop!!
00401055  |.  6A 00         push    0                                ; /Style = MB_OK|MB_APPLMODAL
00401057  |.  68 30304000   push    00403030                         ; |提示
0040105C  |.  68 46304000   push    00403046                         ; |恭喜你,注册成功!
00401061  |.  6A 00         push    0                                ; |hOwner = NULL
00401063  |.  E8 EE020000   call    <jmp.&user32.MessageBoxA>        ; \MessageBoxA
00401068  |.  EB 13         jmp     short 0040107D
0040106A  |>  6A 00         push    0                                ; /Style = MB_OK|MB_APPLMODAL
0040106C  |.  68 30304000   push    00403030                         ; |提示
00401071  |.  68 59304000   push    00403059                         ; |注册失败,请继续努力!
00401076  |.  6A 00         push    0                                ; |hOwner = NULL
00401078  |.  E8 D9020000   call    <jmp.&user32.MessageBoxA>        ; \MessageBoxA
0040107D  |>  33C0          xor     eax, eax
0040107F  |.  5F            pop     edi
00401080  |.  C9            leave
00401081  \.  C2 1400       retn    14

第二个  试着爆破我..
00401004     /74 15         je      short 0040101B     //nop

很简单。。真是给我这样的新手信心了。
2011-2-19 20:21
0
雪    币: 182
活跃值: (81)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
00401000  /$  55            push ebp
00401001  |.  8BEC          mov ebp,esp
00401003  |.  83C4 D8       add esp,-28
00401006  |.  57            push edi
00401007  |.  837D 0C 01    cmp [arg.2],1
0040100B  |.  73 18         jnb short CrackMe.00401025
0040100D  |.  6A 00         push 0                                   ; /Style = MB_OK|MB_APPLMODAL
0040100F  |.  68 30304000   push CrackMe.00403030                    ; |Title = "提示"
00401014  |.  68 35304000   push CrackMe.00403035                    ; |Text = "用户名不能为空!"
00401019  |.  6A 00         push 0                                   ; |hOwner = NULL
0040101B  |.  E8 36030000   call <jmp.&user32.MessageBoxA>           ; \MessageBoxA
00401020  |.  5F            pop edi
00401021  |.  C9            leave
00401022  |.  C2 1400       retn 14
00401025  |>  8B75 08       mov esi,[arg.1]
00401028  |.  8D7D D8       lea edi,[local.10]
0040102B  |.  33C9          xor ecx,ecx
0040102D  |.  8B45 0C       mov eax,[arg.2]
00401030  |.  C60438 00     mov byte ptr ds:[eax+edi],0
00401034  |.  EB 0A         jmp short CrackMe.00401040
00401036  |>  0FB60431      /movzx eax,byte ptr ds:[ecx+esi]
0040103A  |.  04 01         |add al,1
0040103C  |.  880439        |mov byte ptr ds:[ecx+edi],al
0040103F  |.  41            |inc ecx
00401040  |>  3B4D 0C        cmp ecx,[arg.2]
00401043  |.^ 72 F1         \jb short CrackMe.00401036
00401045  |.  FF75 10       push [arg.3]                             ; /String2
00401048  |.  8D45 D8       lea eax,[local.10]                       ; |
0040104B  |.  50            push eax                                 ; |String1
0040104C  |.  E8 47030000   call <jmp.&kernel32.lstrcmpA>            ; \lstrcmpA
00401051  |.  0BC0          or eax,eax
00401053  |.  75 15         jnz short CrackMe.0040106A
00401055  |.  6A 00         push 0                                   ; /Style = MB_OK|MB_APPLMODAL
00401057  |.  68 30304000   push CrackMe.00403030                    ; |Title = "提示"
0040105C  |.  68 46304000   push CrackMe.00403046                    ; |Text = "恭喜你,注册成功!"
00401061  |.  6A 00         push 0                                   ; |hOwner = NULL
00401063  |.  E8 EE020000   call <jmp.&user32.MessageBoxA>           ; \MessageBoxA
00401068  |.  EB 13         jmp short CrackMe.0040107D
0040106A  |>  6A 00         push 0                                   ; /Style = MB_OK|MB_APPLMODAL
0040106C  |.  68 30304000   push CrackMe.00403030                    ; |Title = "提示"
00401071  |.  68 59304000   push CrackMe.00403059                    ; |Text = "注册失败,请继续努力!"
00401076  |.  6A 00         push 0                                   ; |hOwner = NULL
00401078  |.  E8 D9020000   call <jmp.&user32.MessageBoxA>           ; \MessageBoxA
0040107D  |>  33C0          xor eax,eax
0040107F  |.  5F            pop edi
00401080  |.  C9            leave
00401081  \.  C2 1400       retn 14

这是第一个得下bp MessageBoxA断点,然后执行到用户代码,上翻
00401000 >  33C0            xor eax,eax
00401002    0BC0            or eax,eax
00401004    74 15           je short 试着爆破.0040101B
00401006    6A 40           push 40
00401008    68 00304000     push 试着爆破.00403000
0040100D    68 2E304000     push 试着爆破.0040302E
00401012    6A 00           push 0

第二个在程序入口处有个je改成Jne就OK乐
2011-2-19 20:58
0
雪    币: 485
活跃值: (12)
能力值: ( LV9,RANK:490 )
在线值:
发帖
回帖
粉丝
5
有时候我也打酱油。。。
2011-2-20 20:11
0
雪    币: 2368
活跃值: (3015)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
用户名:zhongtiany
序列号:{ipohujboz
2011-2-20 22:08
0
雪    币: 967
活跃值: (1138)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
7
void check(char *user,char *out)
{
int i=0;
for(i=0;i<strlen(user);i++)
{
out[i]=user[i]+1;
}

}
2011-2-21 11:55
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
今天刚转正。。早就想下了。。
2011-2-23 09:12
0
雪    币: 291
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9


上传的附件:
2011-2-23 11:59
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
请问 这个怎么破??有好心人解释不~~  菜鸟一个
2017-2-17 16:26
0
雪    币: 1299
活跃值: (17)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11

感觉都挺简单的,适合新手学习

第一个

搜索字符串能找到注册成功的字符串

可以判断出关键跳和关键call

接下来就可以爆破和追码

爆破的话,直接把jnz short 0040106A修改为nop

运行

追码的话直接在关键call下断点,输入用户名和序列号

点击注册

运行到断点处

就可以看到注册码了

第二个也很简单,直接把je修改为jnz或者nop掉就行了

本人也是萌新,有错误的地方还请各位大佬指正

2017-5-11 15:26
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
默小白 感觉都挺简单的,适合新手学习第一个搜索字符串能找到注册成功的字符串可以判断出关键跳和关键call接下来就可以爆破和追码爆破的话,直接把jnz short 0040106A修改为nop运行追码的话直接在 ...
代码旁边的中文提示是怎么弄的?插件吗
2017-5-15 15:08
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册