首页
社区
课程
招聘
[原创]发一个CrackMe
发表于: 2011-12-4 15:44 11507

[原创]发一个CrackMe

2011-12-4 15:44
11507
新出CrackMe一枚
给出一组注册号
用户名 HuyeXJH
注册码 32C5218108728DE0D29D1262A50AAAB981ACFA80BF820B752DC4F4CF719C89FE7D80DCDFDC72F5ECFBA48AE04768FD795855E44385DDAD355A9A852566F5BD9C0396000622BBD3070A5337848415C8EACEAD3C8C3D371CDB0FB41C26342D85097D19A29F153389941030DF55E0C0BF5B2E6836E0D0A15B9CB5AE840DC3ABCCD0

要求给出1组其它的用户名+注册码, 或者写出注册机来, 来破我吧

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

上传的附件:
收藏
免费 0
支持
分享
最新回复 (30)
雪    币: 270
活跃值: (97)
能力值: ( LV8,RANK:140 )
在线值:
发帖
回帖
粉丝
2
不会只知道是根据注册码算出用户名再比较
2011-12-4 19:50
0
雪    币: 2105
活跃值: (424)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
keygen you, keygen me
2011-12-4 19:56
0
雪    币: 435
活跃值: (1282)
能力值: ( LV13,RANK:388 )
在线值:
发帖
回帖
粉丝
4
这smc略显复杂了,代码,数据,甚至用户名都是解出来的,要反算实在太难,mmx指令连od都不认识,何况我了
如果这算法能反算,我估计能执行任意代码
2011-12-4 20:04
0
雪    币: 435
活跃值: (1282)
能力值: ( LV13,RANK:388 )
在线值:
发帖
回帖
粉丝
5
其实用户名都是没用的,就是注册码,算出一个0x80大的buffer,+0和+4两个dword和为零(溢出)+8是用户名 还有库名和函数名,后面是bytecode
lz,你有注册机么,能不能多贴几组
2011-12-4 20:28
0
雪    币: 84
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
用户名
小猫小狗
注册码
AF7E8A7083D42BEC57C84FDBB624B31FD4D7D8E26C209CF4C0E66EE636E9FADEAE5881E34CDC69657E72D5D15479BA95737F97F9799BA909D4C0EC45AF476E9C39F0758F4FA8FF900F0B793022B1FB221BB9E38C755C8BE8268FA7B683BEABD5AC7DF1EDA1524BBFFFAB9AAB17D288F5DFE71FDBBAD9BBC16B8ADB63687277B4

用户名
abc123
注册码
DE19FEF666F95269AD247EF5E25318192D507E101B21EAD1C32974C77264130D7686E99F5239C49233A56319CCB68B9A50810E9326646042E8BDF9631D2C19ED7CB24A4A1ADD019A29357C0249AE094295461BF65254A89A7C433866C57703512E918A47974D4A5B0DAD588CEA139370DC2C59484511791F7F9FDAFB0A765304
上传的附件:
2011-12-4 20:41
0
雪    币: 270
活跃值: (97)
能力值: ( LV8,RANK:140 )
在线值:
发帖
回帖
粉丝
7
等大牛公布Keygen
等楼主公布源码
2011-12-5 11:44
0
雪    币: 84
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
平安度过一天,还没人识别出算法
2011-12-5 21:02
0
雪    币: 1353
活跃值: (2336)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
感觉序列号太长了一点,也太长了吧
2011-12-5 21:42
0
雪    币: 81
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
直接JMP算吗???
2011-12-5 21:44
0
雪    币: 84
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
越长的序列号可以放越多的代码
2011-12-5 21:56
0
雪    币: 84
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
算,改动文件不要超过10字节,随你搞
2011-12-5 21:59
0
雪    币: 81
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
还满有难度的嘛。。。
2011-12-5 23:19
0
雪    币: 81
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
三楼高人有办法吗?
2011-12-5 23:24
0
雪    币: 622
活跃值: (294)
能力值: ( LV13,RANK:410 )
在线值:
发帖
回帖
粉丝
15
第一步是把注册码反向转换成Hex。b[n-7]...b[n]......b[0]...b[7]
第二步是DWORD乘法,还没仔细看,11点半了,明天上班要死人了……
第三步就是执行了。
明天有空来继续补完。
2011-12-5 23:39
0
雪    币: 2105
活跃值: (424)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
16
这尼玛 1024 RSA? 不知道怎么分解 想想办法
2011-12-6 10:02
0
雪    币: 1353
活跃值: (2336)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
17
分析了一下,CRACKME并不大啊,只有6.5KB
0040173A >/$  A1 04204000   mov     eax, dword ptr [<&KERNEL32.GetModuleHandl>      
0040173F  |.  A3 40304000   mov     dword ptr [403040], eax
00401744  |.  A1 00204000   mov     eax, dword ptr [<&KERNEL32.GetProcAddress>把GetModuleHandle,GetProcessAddress地址存起来,估计后面要用到
00401749  |.  A3 44304000   mov     dword ptr [403044], eax
0040174E  |.  33C0          xor     eax, eax
00401750  |.  50            push    eax                                       ; /lParam => NULL
00401751  |.  68 F9164000   push    004016F9                                  ; |DlgProc = CrackMe.004016F9
00401756  |.  50            push    eax                                       ; |hOwner => NULL
00401757  |.  6A 65         push    65                                        ; |pTemplate = 65
00401759  |.  50            push    eax                                       ; |hInst => NULL
0040175A  |.  FF15 20204000 call    dword ptr [<&USER32.DialogBoxParamW>]     ; \DialogBoxParamW     建 立界面,
00401760  |.  33C0          xor     eax, eax
00401762  \.  C2 1000       retn    10

004015C9  /$  55            push    ebp
004015CA  |.  8BEC          mov     ebp, esp
004015CC  |.  81EC 4C010000 sub     esp, 14C
004015D2  |.  53            push    ebx
004015D3  |.  56            push    esi
004015D4  |.  8B35 24204000 mov     esi, dword ptr [<&USER32.GetDlgItemTextA>>;  USER32.GetDlgItemTextA
004015DA  |.  57            push    edi
004015DB  |.  6A 20         push    20                                        ; /Count = 20 (32.)
004015DD  |.  8D45 B8       lea     eax, dword ptr [ebp-48]                   ; |
004015E0  |.  50            push    eax                                       ; |Buffer
004015E1  |.  68 E9030000   push    3E9                                       ; |ControlID = 3E9 (1001.)
004015E6  |.  FF75 08       push    dword ptr [ebp+8]                         ; |hWnd
004015E9  |.  FFD6          call    esi                                       ; \GetDlgItemTextA    得到用户名,用户名必须大于五个字符
004015EB  |.  8945 D8       mov     dword ptr [ebp-28], eax
004015EE  |.  83F8 05       cmp     eax, 5
004015F1  |.  0F82 FD000000 jb      004016F4
004015F7  |.  68 01010000   push    101                                       ; /Count = 101 (257.)
004015FC  |.  8D85 B4FEFFFF lea     eax, dword ptr [ebp-14C]                  ; |
00401602  |.  50            push    eax                                       ; |Buffer
00401603  |.  68 EB030000   push    3EB                                       ; |ControlID = 3EB (1003.)
00401608  |.  FF75 08       push    dword ptr [ebp+8]                         ; |hWnd
0040160B  |.  FFD6          call    esi                                       ; \GetDlgItemTextA    得到输入的序列号,必须大于80个字符
0040160D  |.  83F8 50       cmp     eax, 50
00401610  |.  0F82 DE000000 jb      004016F4
2011-12-6 13:30
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
大概过程是用了较强的算法将一段加密的包含用户名和SHELLCODE的注册码还原,然后比较用户名,成功后运行注册成功shellcode。
谁知道是什么加密算法,好像是不可逆的。
2011-12-7 18:21
0
雪    币: 84
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
不可逆我就不会发上来了
sharkxu
85936CC8B40B96A31DA272CC39CCECFDF368BEA761A0297081D42AFF95A5056D3DE1F96D446C6D4A66027BB6FE84E9BF556F69DC064267AB0C879E4205797564140377B27F1C2F72C9FB53FB3A0C95083D5C6F4AB0B321772131141DF9CDCE474862BC65C65C3ACF739290E6DDC0D2D534DDCE2AEA30E7727AE04CF17E4605D4
2011-12-7 19:02
0
雪    币: 2105
活跃值: (424)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
20
你确信在不知道任何参数的情况下,可以算出rsa的私钥?
2011-12-7 20:01
0
雪    币: 416
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
1024的RSA  0.0,印象中現在想分解並不容易。

印象中1000多BIT的質數,在現在的RSA好像是屬於安全的。
2011-12-7 20:05
0
雪    币: 84
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
如果是rsa
那你分析出的加密指数和模是多少
2011-12-7 20:13
0
雪    币: 1353
活跃值: (2336)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
23
楼主太牛了啊,力压群雄,把源码发了吧,说下原理,
2011-12-7 20:17
0
雪    币: 203
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
P是解密的明文
F是sub_401511
A是输入的注册码
C是unk_403000的常数
Q是16^80h

只是原理的分析,请楼主赐教
上传的附件:
2011-12-7 23:53
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
25
明文 = 注册码 ^ 80000001h   mod   (-C)

C 放在403000处
2011-12-8 03:13
0
游客
登录 | 注册 方可回帖
返回
//