首页
社区
课程
招聘
[原创]性感的CrackMe,破解了开放美女性感私房照哦(更新了附件)
发表于: 2009-12-6 20:55 39485

[原创]性感的CrackMe,破解了开放美女性感私房照哦(更新了附件)

2009-12-6 20:55
39485
如题,这个是我的第一个CrackMe,汇编写的,大家有兴趣的来玩下。
破解了主界面的黑白美女图会变成性感美女的彩图,究竟有多性感,就看大家破解咯。

不多说了,上图和软件
-------------------------------------------------------
补充:不好意思,第一个CrackMe因为代码中有一处没有清空缓冲区,造成删除注册表值后一打开软件就直接显示注册了,大家也没得玩了。
      现在我修改了CrackMe重新上传了附近,更正了上面的bug,同时更正了在某些电脑上不能打开软件的错误。
      有兴趣的再下载来玩玩吧。
      爆破的请上传附件,因为爆破后还有检验的,截图并不能表示成功。追码的可以贴上注册码。

CrackMe 2.3.rar


[招生]科锐逆向工程师培训(2025年3月11日实地,远程教学同时开班, 第52期)!

上传的附件:
收藏
免费
支持
分享
最新回复 (76)
雪    币: 695
活跃值: (25)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
2
lz你的cm在我的xp和2k虚拟机上跑都出错了。。。在xp上居然直接显示已注册。。。
2009-12-6 21:34
0
雪    币: 253
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
图片不错的 还得删注册表键啊
上传的附件:
2009-12-6 21:50
0
雪    币: 71
活跃值: (10)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
4
没的说,这女的真俊~~~~哈哈
2009-12-6 22:30
0
雪    币: 224
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
将两个lstrcmpA 的源和目的地址改为一样后爆破了  美女真养眼
2009-12-6 23:03
0
雪    币: 145
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
更新了一下附件,已修正这两个bug
2009-12-7 12:10
0
雪    币: 145
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
[QUOTE=sndosej;723051]图片不错的 还得删注册表键啊
[/QUOTE]

爆破的请上传附件,因为爆破后还会有检验的,截图还不能证明破解了哦。
2009-12-7 12:12
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
没能力破解,直接取资源看美女不知道算不算?


上传的附件:
2009-12-7 12:29
0
雪    币: 145
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
[QUOTE=Nochoice;723282]没能力破解,直接取资源看美女不知道算不算?


[/QUOTE]

..........
2009-12-7 14:26
0
雪    币: 1262
活跃值: (970)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
10
运行就崩溃。怎么回事?
2009-12-7 16:04
0
雪    币: 517
活跃值: (64)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
11
运行就崩溃......
2009-12-7 16:56
0
雪    币: 145
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
新更新了附件
2009-12-7 18:33
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
13
有没有酒井法子?
2009-12-7 19:25
0
雪    币: 2362
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
御女控
2009-12-7 20:05
0
雪    币: 773
活跃值: (315)
能力值: ( LV9,RANK:150 )
在线值:
发帖
回帖
粉丝
15
1SLA18717
NRuXTANu
2009-12-7 20:43
0
雪    币: 56
活跃值: (25)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
16
怎么才算彻底注册?
有3楼的效果就可以了?
2009-12-7 21:25
0
雪    币: 224
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
没找到安装seh的地方,怎么定位seh呢
2009-12-7 21:53
0
雪    币: 500
活跃值: (205)
能力值: ( LV13,RANK:270 )
在线值:
发帖
回帖
粉丝
18
不需要定位seh啊.
它的验证原理是通过
settimer()发送wm_timer命令来验证的,
搞清楚这个就OK了.
来验证的.
一共有两个settimer(),搞清楚这个就OK了.
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
//settimer() timerid 为n1时
 
004017AA  /$  6A 20         PUSH 20                                  ; /Length = 20 (32.)
004017AC  |.  68 E0664000   PUSH CrackMe.004066E0                    ; |Destination = CrackMe.004066E0
004017B1  |.  E8 D4040000   CALL <JMP.&kernel32.RtlZeroMemory>       ; \RtlZeroMemory
//将004066E0处清零.
 
004017B6  |.  68 13514000   PUSH CrackMe.00405113                    ; /c:\windows\system32\option.ini
004017BB  |.  6A 20         PUSH 20                                  ; |BufSize = 20 (32.)
004017BD  |.  68 E0664000   PUSH CrackMe.004066E0                    ; |ReturnBuffer = CrackMe.004066E0
004017C2  |.  6A 00         PUSH 0                                   ; |Default = NULL
004017C4  |.  68 39514000   PUSH CrackMe.00405139                    ; |key
004017C9  |.  68 32514000   PUSH CrackMe.00405132                    ; |serial
004017CE  |.  E8 8D040000   CALL <JMP.&kernel32.GetPrivateProfileStr>; \GetPrivateProfileStringA
//把option.ini中的内容读到004066E0处
 
004017D3  |.  6A 40         PUSH 40                                  ; /Length = 40 (64.)
004017D5  |.  68 C0674000   PUSH CrackMe.004067C0                    ; |111111111111111
004017DA  |.  E8 AB040000   CALL <JMP.&kernel32.RtlZeroMemory>       ; \RtlZeroMemory
//把004067C0处清零.
 
004017DF  |.  6A 40         PUSH 40                                  ; /Length = 40 (64.)
004017E1  |.  68 00684000   PUSH CrackMe.00406800                    ; |330103301111111
004017E6  |.  E8 9F040000   CALL <JMP.&kernel32.RtlZeroMemory>       ; \RtlZeroMemory
//把00406800处清零.
 
004017EB  |.  68 C0674000   PUSH CrackMe.004067C0                    ;  111111111111111
004017F0  |.  68 E0664000   PUSH CrackMe.004066E0                    ;  ASCII "gggggggg"
004017F5  |.  E8 2BFFFFFF   CALL CrackMe.00401725
?
//
004017FA  |.  6A 20         PUSH 20                                  ; /Length = 20 (32.)
004017FC  |.  57            PUSH EDI                                 ; |Destination
004017FD  |.  E8 88040000   CALL <JMP.&kernel32.RtlZeroMemory>       ; \RtlZeroMemory
 
 
00401802  |.  68 00684000   PUSH CrackMe.00406800                    ;  330103301111111
00401807  |.  68 20674000   PUSH CrackMe.00406720                    ;  dnagfadu
0040180C  |.  E8 14FFFFFF   CALL CrackMe.00401725
 
00401811      68 00684000   PUSH CrackMe.00406800                    ;  330103301111111
00401816  |.  68 C0674000   PUSH CrackMe.004067C0                    ; |111111111111111
0040181B  |.  E8 82040000   CALL <JMP.&kernel32.lstrcmpA>            ; \lstrcmpA
//从上分析关键是调用00401725处的函数
 
//写入option.ini并读出来,
00401725  /$  55            PUSH EBP
00401726  |.  8BEC          MOV EBP,ESP
 
00401728  |.  6A 40         PUSH 40                                  ; /Length = 40 (64.)
0040172A  |.  68 80684000   PUSH CrackMe.00406880                    ; |dnaguadu
0040172F  |.  E8 56050000   CALL <JMP.&kernel32.RtlZeroMemory>       ; \RtlZeroMemory
 
00401734  |.  FF75 08       PUSH DWORD PTR SS:[EBP+8]                ; /String2
00401737  |.  68 80684000   PUSH CrackMe.00406880                    ; |dnaguadu
0040173C  |.  E8 67050000   CALL <JMP.&kernel32.lstrcpyA>            ; \lstrcpyA
//上面是把第一个参数的值放入00406880处
//
00401741  |.  8D15 80684000 LEA EDX,DWORD PTR DS:[406880]  
00401747  |.  8BF2          MOV ESI,EDX
00401749  |.  8A5A 06       MOV BL,BYTE PTR DS:[EDX+6]
 
0040174C  |.  881E          MOV BYTE PTR DS:[ESI],BL
0040174E  |.  8A5A 07       MOV BL,BYTE PTR DS:[EDX+7]
00401751  |.  885E 04       MOV BYTE PTR DS:[ESI+4],BL //
 
00401754  |.  33DB          XOR EBX,EBX
00401756  |>  0FB60433      /MOVZX EAX,BYTE PTR DS:[EBX+ESI]
 
0040175A  |.  3C 39         |CMP AL,39
0040175C  |.  7F 0A         |JG SHORT CrackMe.00401768 //如果AL中为字母的话,跳到401768去执行.
0040175E  |.  83C0 05       |ADD EAX,5
00401761  |.  25 03000080   |AND EAX,80000003
00401766  |.  EB 0D         |JMP SHORT CrackMe.00401775
 
00401768  |>  83C0 03       |ADD EAX,3     //eax = eax +3;
0040176B  |.  B9 05000000   |MOV ECX,5     //ecx = 5
00401770  |.  99            |CDQ
00401771  |.  F7F9          |IDIV ECX      //edx = eax % ecx
00401773  |.  8BC2          |MOV EAX,EDX   //eax = edx
 
00401775  |>  50            |PUSH EAX                                ; /<%d>
00401776  |.  68 00604000   |PUSH CrackMe.00406000                   ; |%d
0040177B  |.  68 C0684000   |PUSH CrackMe.004068C0                   ; |1
00401780  |.  E8 63040000   |CALL <JMP.&user32.wsprintfA>            ; \wsprintfA
00401785  |.  83C4 0C       |ADD ESP,0C
//调用wsprintf对其格式化处理
 
00401788  |.  68 C0684000   |PUSH CrackMe.004068C0                   ; /1
0040178D  |.  57            |PUSH EDI                                ; |ConcatString
0040178E  |.  E8 09050000   |CALL <JMP.&kernel32.lstrcatA>           ; \lstrcatA
//最后的与EDI cat.
 
00401793  |.  47            |INC EDI
00401794  |.  43            |INC EBX
00401795  |.  83FB 0F       |CMP EBX,0F
00401798  |.^ 75 BC         \JNZ SHORT CrackMe.00401756
0040179A  |.  83EF 0F       SUB EDI,0F
 
 
//我们的重点是求的EDI的值.
0040179D  |.  57            PUSH EDI                                 ; /String2
0040179E  |.  FF75 0C       PUSH DWORD PTR SS:[EBP+C]                ; |String1
004017A1  |.  E8 02050000   CALL <JMP.&kernel32.lstrcpyA>            ; \lstrcpyA
//注意这里把EDI拷贝到[EBP+C]中去
004017A6  |.  C9            LEAVE
004017A7  \.  C2 0800       RETN 8
///////////////////////////////////////////////
//set timer timerid 为n2时.
//
004018A3  /$  E8 AC030000   CALL <JMP.&kernel32.GetCurrentProcess>   ; [GetCurrentProcess
 
004018A8  |.  6A 00         PUSH 0                                   ; /pBytesRead = NULL
004018AA  |.  6A 02         PUSH 2                                   ; |BytesToRead = 2
004018AC  |.  68 00694000   PUSH CrackMe.00406900                    ; |t/
004018B1  |.  68 20184000   PUSH CrackMe.00401820                    ; |pBaseAddress = 401820
004018B6  |.  50            PUSH EAX                                 ; |hProcess
004018B7  |.  E8 C2030000   CALL <JMP.&kernel32.ReadProcessMemory>   ; \ReadProcessMemory
 
004018BC  |.  66:A1 0069400>MOV AX,WORD PTR DS:[406900]
004018C2  |.  66:3B05 FF514>CMP AX,WORD PTR DS:[4051FF]
004018C9  |.  74 12         JE SHORT CrackMe.004018DD
 
004018CB  |.  6A 00         PUSH 0
004018CD  |.  A0 40674000   MOV AL,BYTE PTR DS:[406740]
004018D2  |.  66:0FB6C0     MOVZX AX,AL
004018D6  |.  66:50         PUSH AX                                  ; /String
004018D8  |.  E8 D7030000   CALL <JMP.&kernel32.lstrlenA>            ; \lstrlenA
 
004018DD  |>  E8 72030000   CALL <JMP.&kernel32.GetCurrentProcess>   ; [GetCurrentProcess
 
004018E2  |.  6A 00         PUSH 0                                   ; /pBytesRead = NULL
004018E4  |.  6A 02         PUSH 2                                   ; |BytesToRead = 2
004018E6  |.  68 00694000   PUSH CrackMe.00406900                    ; |t/
004018EB  |.  68 22184000   PUSH CrackMe.00401822                    ; |t/j@h@g@
004018F0  |.  50            PUSH EAX                                 ; |hProcess
004018F1  |.  E8 88030000   CALL <JMP.&kernel32.ReadProcessMemory>   ; \ReadProcessMemory
 
004018F6  |.  66:A1 0069400>MOV AX,WORD PTR DS:[406900]
004018FC  |.  66:3B05 01524>CMP AX,WORD PTR DS:[405201]
00401903  |.  74 12         JE SHORT CrackMe.00401917
 
00401905  |.  6A 00         PUSH 0
00401907  |.  A0 40674000   MOV AL,BYTE PTR DS:[406740]
0040190C  |.  66:0FB6C0     MOVZX AX,AL
00401910  |.  66:50         PUSH AX                                  ; /String
00401912  |.  E8 9D030000   CALL <JMP.&kernel32.lstrlenA>            ; \lstrlenA
 
00401917  \>  C3            RETN
//
2009-12-7 22:49
0
雪    币: 226
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
爆破。。。。


CrackMe_cr.rar
上传的附件:
2009-12-8 12:22
0
雪    币: 12
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
机器码: 4MT2XGYV
注册码: SAHoBFacXSuA
上传的附件:
  • 1.JPG (26.82kb,698次下载)
2009-12-8 12:41
0
雪    币: 695
活跃值: (25)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
21
机器码:807415814
注册码:PumcMRafPOGx
2009-12-8 20:27
0
雪    币: 145
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
大致如此,呵呵



Good!!
2009-12-9 12:05
0
雪    币: 0
活跃值: (964)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
23
前后 10分钟 破解

6RA3735V
00406708  53 4F 75 52 45 62 75 41 42 75 4D 41              SOuREbuABuMA

提示:
00401594  |.  50            push    eax                              ; /String2
00401595  |.  FF75 0C       push    dword ptr [ebp+C]                ; |String1
00401598  |.  E8 4B070000   call    <jmp.&kernel32.lstrcpyA>         ; \lstrcpyA
0040159D  |.  C9            leave
0040159E  \.  C2 0800       retn    8
2009-12-9 13:55
0
雪    币: 0
活跃值: (964)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
24
楼主欺骗我的感情,就一张。我想看美女。。。
2009-12-9 13:56
0
雪    币: 92
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
00401A33  |.  E8 DA010000   call    <jmp.&user32.EndDialog>          ; \EndDialog
00401A38  |.  EB 0C         jmp     short 00401A46
00401A3A  |>  B8 00000000   mov     eax, 0                           ;  Default case of switch 00401932
00401A3F  |.  5E            pop     esi
00401A40  |.  5F            pop     edi
00401A41  |.  5B            pop     ebx
00401A42  |.  C9            leave
00401A43  |.  C2 1000       retn    10
00401A46  |>  B8 01000000   mov     eax, 1
00401A4B  |.  5E            pop     esi
00401A4C  |.  5F            pop     edi
00401A4D  |.  5B            pop     ebx
00401A4E  |.  C9            leave
00401A4F  \.  C2 1000       retn    10

……一返回  我就出不来了
2009-12-9 20:11
0
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

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