首页
社区
课程
招聘
[分享]各类应用密码学CrackMe,慢慢的会补全破文。
发表于: 2007-7-4 11:56 137804

[分享]各类应用密码学CrackMe,慢慢的会补全破文。

2007-7-4 11:56
137804
收藏
免费 8
支持
分享
最新回复 (153)
雪    币: 230
活跃值: (28)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
26
抱歉,这几天事情比较多,都没有上论坛来。
这个RSA1024的CrackMe没有问题,为了测试,我放一组注册码。
用户名:WindRand
注册码:A6E4B0B1BE8EEB1A6F05E4F59112342B8DA26E0447FD4B81672BE8B74BD2FE82E033974A4F1C1594B1FEE11CDB7EB0579BF3C3ADCD5AA85FFD649232F702F84C3C6675C8D00195555AB69F2B9E3558E23C39775C41FFF38FA091D568B4F392C528F2AD5B9266F0C6FE66BCA632C229DA9CDFB6E4DE1D42A9111E0CF48693DF7D
2007-7-15 22:47
0
雪    币: 347
活跃值: (30)
能力值: ( LV9,RANK:420 )
在线值:
发帖
回帖
粉丝
27
刚上看到你回贴了,我以为你发上来各类密码学的源码了(问句,是不是delphi的?),结果一看不是,强烈建议你把那些密码学的Crack Me的源码发上来
2007-7-15 23:46
0
雪    币: 230
活跃值: (28)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
28
有两种界面的CrackMe,界面比较朴实的是VC的,另外的一种是Delphi的。
2007-7-16 11:07
0
雪    币: 1919
活跃值: (901)
能力值: ( LV9,RANK:490 )
在线值:
发帖
回帖
粉丝
29
等待破文~~~
2007-7-16 11:54
0
雪    币: 3688
活跃值: (4242)
能力值: (RANK:215 )
在线值:
发帖
回帖
粉丝
30
等待源代码+破文。

收藏,订阅。
2007-7-16 11:56
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
31
快出破文啊。..改机器码..破就可以...不过要算出密码..就不在我的水平了~~~
2007-7-16 16:12
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
32
先收了慢慢学习
2007-7-16 22:38
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
33
认真学习中。。。。。
2007-7-18 17:07
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
34
 就等破文!!!!!!!
2007-7-18 21:52
0
雪    币: 926
活跃值: (387)
能力值: (RANK:500 )
在线值:
发帖
回帖
粉丝
35
简单分析下第一个crc32那个

程序很明了
关键CALL  00401319   .  E8 F2FDFFFF   CALL CRC32Cra.00401110
入栈参数是用户名
跟进去是这样
00401110  /$  83EC 0C       SUB ESP,0C
00401113  |.  56            PUSH ESI
00401114  |.  57            PUSH EDI
00401115  |.  E8 B6FFFFFF   CALL CRC32Cra.004010D0                   ;  数据表的生成
0040111A  |.  8B7424 18     MOV ESI,DWORD PTR SS:[ESP+18]
0040111E  |.  83C9 FF       OR ECX,FFFFFFFF
00401121  |.  8BFE          MOV EDI,ESI
00401123  |.  33C0          XOR EAX,EAX
00401125  |.  83CA FF       OR EDX,FFFFFFFF
00401128  |.  F2:AE         REPNE SCAS BYTE PTR ES:[EDI]
0040112A  |.  F7D1          NOT ECX
0040112C  |.  49            DEC ECX                                  ;  得到用户名长度
0040112D  |.  85C9          TEST ECX,ECX
0040112F  |.  7E 1F         JLE SHORT CRC32Cra.00401150
00401131  |.  53            PUSH EBX
00401132  |>  8BC2          /MOV EAX,EDX
00401134  |.  33DB          |XOR EBX,EBX
00401136  |.  8A1E          |MOV BL,BYTE PTR DS:[ESI]              ;循环取用户名的每一位
00401138  |.  25 FF000000   |AND EAX,0FF
0040113D  |.  33C3          |XOR EAX,EBX
0040113F  |.  C1EA 08       |SHR EDX,8
00401142  |.  8B0485 208540>|MOV EAX,DWORD PTR DS:[EAX*4+408520]    ;取数据表里的数据
00401149  |.  33D0          |XOR EDX,EAX
0040114B  |.  46            |INC ESI
0040114C  |.  49            |DEC ECX                                ;以用户名长度为循环做运算,最后值放在EDX里
0040114D  |.^ 75 E3         \JNZ SHORT CRC32Cra.00401132
0040114F  |.  5B            POP EBX
00401150  |>  33C9          XOR ECX,ECX
00401152  |.  8D4424 08     LEA EAX,DWORD PTR SS:[ESP+8]
00401156  |.  894C24 09     MOV DWORD PTR SS:[ESP+9],ECX
0040115A  |.  6A 10         PUSH 10
0040115C  |.  F7D2          NOT EDX                                  ;  取反
0040115E  |.  894C24 11     MOV DWORD PTR SS:[ESP+11],ECX
00401162  |.  50            PUSH EAX
00401163  |.  52            PUSH EDX
00401164  |.  C64424 14 00  MOV BYTE PTR SS:[ESP+14],0
00401169  |.  884C24 1D     MOV BYTE PTR SS:[ESP+1D],CL
0040116D  |.  E8 24380000   CALL CRC32Cra.00404996
00401172  |.  8D7C24 14     LEA EDI,DWORD PTR SS:[ESP+14]            ;  把HEX转换为ascii格式
00401176  |.  83C9 FF       OR ECX,FFFFFFFF
00401179  |.  33C0          XOR EAX,EAX
0040117B  |.  83C4 0C       ADD ESP,0C
0040117E  |.  33F6          XOR ESI,ESI
00401180  |.  F2:AE         REPNE SCAS BYTE PTR ES:[EDI]
00401182  |.  F7D1          NOT ECX
00401184  |.  49            DEC ECX
00401185  |.  74 25         JE SHORT CRC32Cra.004011AC
00401187  |>  0FBE4C34 08   /MOVSX ECX,BYTE PTR SS:[ESP+ESI+8]
0040118C  |.  51            |PUSH ECX
0040118D  |.  E8 4E020000   |CALL CRC32Cra.004013E0
00401192  |.  884434 0C     |MOV BYTE PTR SS:[ESP+ESI+C],AL
00401196  |.  83C4 04       |ADD ESP,4
00401199  |.  8D7C24 08     |LEA EDI,DWORD PTR SS:[ESP+8]
0040119D  |.  83C9 FF       |OR ECX,FFFFFFFF
004011A0  |.  33C0          |XOR EAX,EAX
004011A2  |.  46            |INC ESI
004011A3  |.  F2:AE         |REPNE SCAS BYTE PTR ES:[EDI]
004011A5  |.  F7D1          |NOT ECX
004011A7  |.  49            |DEC ECX
004011A8  |.  3BF1          |CMP ESI,ECX
004011AA  |.^ 72 DB         \JB SHORT CRC32Cra.00401187
004011AC  |>  8B4424 1C     MOV EAX,DWORD PTR SS:[ESP+1C]
004011B0  |.  8D5424 08     LEA EDX,DWORD PTR SS:[ESP+8]
004011B4  |.  52            PUSH EDX                                 ; /String2
004011B5  |.  50            PUSH EAX                                 ; |String1
004011B6  |.  FF15 00504000 CALL DWORD PTR DS:[<&KERNEL32.lstrcpyA>] ; \lstrcpyA   copy字符串,这就是注册码了
004011BC  |.  5F            POP EDI
004011BD  |.  5E            POP ESI
004011BE  |.  83C4 0C       ADD ESP,0C
004011C1  \.  C3            RET

CALL CRC32Cra.004010D0就是CRC32算法了再跟进看看
004010D0  /$  56            PUSH ESI
004010D1  |.  33D2          XOR EDX,EDX
004010D3  |.  B9 20854000   MOV ECX,CRC32Cra.00408520
004010D8  |>  8BC2          /MOV EAX,EDX
004010DA  |.  BE 08000000   |MOV ESI,8
004010DF  |>  A8 01         |/TEST AL,1
004010E1  |.  74 09         ||JE SHORT CRC32Cra.004010EC
004010E3  |.  D1E8          ||SHR EAX,1
004010E5  |.  35 2083B8ED   ||XOR EAX,EDB88320
004010EA  |.  EB 02         ||JMP SHORT CRC32Cra.004010EE
004010EC  |>  D1E8          ||SHR EAX,1
004010EE  |>  4E            ||DEC ESI
004010EF  |.^ 75 EE         |\JNZ SHORT CRC32Cra.004010DF
004010F1  |.  8901          |MOV DWORD PTR DS:[ECX],EAX
004010F3  |.  83C1 04       |ADD ECX,4
004010F6  |.  42            |INC EDX
004010F7  |.  81F9 20894000 |CMP ECX,CRC32Cra.00408920
004010FD  |.^ 7C D9         \JL SHORT CRC32Cra.004010D8
004010FF  |.  5E            POP ESI
00401100  \.  C3            RET

这段代码EDB88320是个标志性的常数
for(i=0;i<256;i++)
{
  crc=i;
  for(j=0;j<8;j++)
   {
     if(crc&1)
      crc=(crc>>1)^0xEDB88320
     else
      crc>>=1;
   }
  crc32[i]=crc;
}

crc32算法用c可以描述成上面这样。

而用户名经过那个运算后 再取反就是注册码了.
user:kyo327
sn:37969166

原来 整个CALL  00401319就是CRC32算法.我还是以为只有创造数据表那块是的.也好 算是把CRC32捋了一遍吧
2007-7-19 11:33
0
雪    币: 347
活跃值: (30)
能力值: ( LV9,RANK:420 )
在线值:
发帖
回帖
粉丝
36
继续等待LZ的CM源码
2007-7-20 11:56
0
雪    币: 101
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
37
现在基本没有用可逆算法的了
2007-7-20 14:56
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
38
我也传步成附件我在努力
2007-8-20 12:57
0
雪    币: 183
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
39
对于类似我这样的新手,还是强烈肯请楼主把破文发上来。如果能把源码一起发上来就最好了。
2007-8-21 13:13
0
雪    币: 228
活跃值: (75)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
40
如果每個CrackMe都有詳細的算法分析就好了。。嘻嘻。。下載來慢慢研究一下。。
2007-8-22 20:51
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
41
先支持以下啊
2007-8-24 21:42
0
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
42
学习的好帖子
2007-8-25 20:42
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
43
学习一下算法
2007-9-3 00:49
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
44
要顶一下
不知道这个帖子会置顶多久
2007-9-3 23:53
0
雪    币: 148
活跃值: (25)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
45
求RSA215那个的破文.
或者指导一下也可以, 它是用的哪个大数库处理的.
2007-9-10 10:01
0
雪    币: 104
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
46
谢谢楼主,下来学习!
2007-9-12 14:54
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
47
谢谢你的分享 对我等初学者很有用
2007-9-22 23:24
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
48
老大不错哈,继续添加
2007-9-30 12:26
0
雪    币: 230
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
49
很强的说
消化ing
2007-10-1 11:28
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
50
强贴 以后有空再看
2007-10-12 20:19
0
游客
登录 | 注册 方可回帖
返回
//