首页
社区
课程
招聘
[原创]用IDA分析一个超简单CM并写出keygen
发表于: 2009-7-20 10:51 5811

[原创]用IDA分析一个超简单CM并写出keygen

2009-7-20 10:51
5811

这个CM十分的简单,适合我这样的菜鸟,希望能得到一个邀请码,正式加入看雪学院,在这里学习。
     运行CM,是console的,需要username和password。
     用IDA载入,智能的IDA已经帮我们定位到main函数了。
     下面是关键部分代码:

mov     [esp+58h+var_58], offset aEnterYourLogin ; "Enter your login:"
.text:004012C1                 call    printf
.text:004012C6                 lea     eax, [ebp+var_28]
.text:004012C9                 mov     [esp+58h+var_58], eax
.text:004012CC                 call    gets
.text:004012D1                 mov     [esp+58h+var_58], offset aEnterPassword ; "Enter password:"
.text:004012D8                 call    printf
.text:004012DD                 lea     eax, [ebp+var_2C]
.text:004012E0                 mov     [esp+58h+var_54], eax
.text:004012E4                 mov     [esp+58h+var_58], offset aLd ; "%ld"
.text:004012EB                 call    scanf
.text:004012F0                 mov     [ebp+var_30], 0
.text:004012F7                 lea     eax, [ebp+var_28]
.text:004012FA                 mov     [esp+58h+var_58], eax
.text:004012FD                 call    strlen
.text:00401302                 mov     [ebp+var_30], eax
.text:00401305                 mov     eax, [ebp+var_30]
.text:00401308                 shl     eax, 5
.text:0040130B                 add     eax, 21F911h
.text:00401310                 mov     [ebp+var_30], eax
.text:00401313                 mov     eax, [ebp+var_2C]
.text:00401316                 cmp     eax, [ebp+var_30]
.text:00401319                 jnz     short loc_401329
.text:0040131B                 mov     [esp+58h+var_58], offset aGoodJobNowMake ; "Good job!, now make a keygen\n"
.text:00401322                 call    printf
.text:00401327                 jmp     short loc_401335
.text:00401329 ; ---------------------------------------------------------------------------
.text:00401329
.text:00401329 loc_401329:                             ; CODE XREF: _main+89 j
.text:00401329                 mov     [esp+58h+var_58], offset aKeepTryingYouL ; "Keep trying you'l get it"
.text:00401330                 call    printf
.text:00401335
.text:00401335 loc_401335:                             ; CODE XREF: _main+97 j

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 7
支持
分享
最新回复 (21)
雪    币: 2362
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
虽然简单 但是应该够发个邀请码
支持一下
2009-7-20 10:56
0
雪    币: 68
活跃值: (47)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
附件发的是什么?这个软件是做什么用的?
2009-7-20 11:03
0
雪    币: 153
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
观望
希望楼主可以得到邀请码
2009-7-20 11:04
0
雪    币: 61
活跃值: (10)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
是crackme,用来练习逆向的!
2009-7-20 11:06
0
雪    币: 370
活跃值: (52)
能力值: ( LV13,RANK:350 )
在线值:
发帖
回帖
粉丝
6
很不错,谢谢分享 优秀鼓励
2009-7-20 11:15
0
雪    币: 215
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
谢谢分享。IDa很强大。
2009-7-20 11:30
0
雪    币: 61
活跃值: (10)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
8
多谢版主!我会努力的!
2009-7-20 11:43
0
雪    币: 108
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
这个应该行。。。
看近期的优秀帖子数量啦。
2009-7-20 11:47
0
雪    币: 61
活跃值: (10)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
10
呵呵,借您吉言!
2009-7-20 12:28
0
雪    币: 234
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
不错,是该鼓励一下,邀请码当然得发
2009-7-20 13:50
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
不错,谢谢分享。
2009-7-20 18:05
0
雪    币: 155
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
int __cdecl main(int argc, const char **argv, const char *envp)
{
  signed int v4; // [sp+1Ch] [bp-3Ch]@1
  char v5; // [sp+30h] [bp-28h]@1
  unsigned int v6; // [sp+2Ch] [bp-2Ch]@1
  unsigned int v7; // [sp+28h] [bp-30h]@1

  v4 = 16;
  __main();
  printf("Enter your login:");
  gets(&v5);
  printf("Enter password:");
  scanf("%ld", &v6);
  v7 = 32 * strlen(&v5) + 2226449;
  if ( v6 == v7 )
    printf("Good job!, now make a keygen\n");
  else
    printf("Keep trying you'l get it");
  sub_401980(10);
  return 0;
}

IDA中F5了一下, 啥都没改.....
2009-7-20 18:33
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
汇编没看懂,C倒是看懂了,路过下。
2009-7-20 18:57
0
雪    币: 54
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
这F5怎么这么强大!!
2009-7-20 19:03
0
雪    币: 80
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
不错!顶!
2009-7-20 22:05
0
雪    币: 61
活跃值: (10)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
17
多谢大家支持!
2009-7-21 09:27
0
雪    币: 51
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
ywy
18
真是太好了
又是一個學習的好東西
謝謝了
2009-7-21 09:45
0
雪    币: 1024
活跃值: (240)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
19
这个应该给邀请码了吧
2009-7-21 12:25
0
雪    币: 100
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
20
恭喜  楼主拿到邀请码!
2009-7-21 14:38
0
雪    币: 66
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
cm是什么意思啊?
2009-7-21 21:18
0
雪    币: 61
活跃值: (10)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
22
CrackMe !不懂得看大版!
2009-7-21 21:20
0
游客
登录 | 注册 方可回帖
返回
//