首页
社区
课程
招聘
[原创]我的第一个注册机,超级菜鸟,高手飘过!
发表于: 2010-1-10 21:40 21766

[原创]我的第一个注册机,超级菜鸟,高手飘过!

2010-1-10 21:40
21766

【文章标题】: 我的第一个注册机,超级菜鸟,高手飘过!
【文章作者】: 耳聋
【作者邮箱】: mugua_1215@163.com
【软件名称】: petnt大的crackme
【下载地址】: 附件
【编写语言】: MASM32 / TASM32
【使用工具】: peid,OD
【操作平台】: XP SP3
【作者声明】: 超级菜鸟的第一个注册机,欢迎高手拍砖!
--------------------------------------------------------------------------------
【详细过程】
  首先感谢看雪学院给咱们crack爱好者提供了这么好的交流平台,感谢kanxue老大、各版主的辛勤劳动,嘿嘿,有点拍马屁的嫌疑……
  本篇超级菜鸟文拿petnt大的文章闲聊新兵入门Crack中的crackme练手,也是第一个写出注册机的crackme,注册机源码参考大菜一号的破文
  偶的第一个注册机```。在此感谢!
  不多废话了,看分析……
  标准流程,运行crackme,随便输入用户名、序列号(erlong,1234567),注册,提示“注册失败,请继续努力!”。
  PEID查壳,MASM32 / TASM32。
  OD载入。
  用OD自带的功能查找参考字符啥都没找到,估计是做了处理。那就用插件,OK,搞定。follow。

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>         ; \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

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

上传的附件:
收藏
免费 7
支持
分享
最新回复 (28)
雪    币: 130
活跃值: (71)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
楼主,加油
2010-1-15 19:50
0
雪    币: 89
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
"用OD自带的功能查找参考字符啥都没找到,估计是做了处理。那就用插件,OK,搞定。follow。"
不是可以查到么?
2010-1-15 21:54
0
雪    币: 66
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
我咋就没找到咧?难道是OD版本的问题?
上传的附件:
2010-1-16 00:00
0
雪    币: 66
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
谢谢鼓励,一起加油!
2010-1-16 00:02
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
自己写出的一定很有成就感吧,呵呵
2010-1-22 16:00
0
雪    币: 101
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
写的不错,我们一起努力吧
2010-1-23 12:17
0
雪    币: 172
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
请问楼主用什么插件查找字符的,我用OD自带的也没找到,我试过破解了几个软件,都是没找到字符的,楼主用的什么插件,把名字发下,或者传上来也行
2010-1-30 16:37
0
雪    币: 66
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
论坛推荐的那个OD里自带了。
插件截图:
上传的附件:
2010-1-31 13:16
0
雪    币: 196
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
我也想问一个问题,被别人问了 呵呵
就是插件是啥 呵呵

另:crackme 是啥东西? 是论坛提供的一个软件么,让大家实践用的?
2010-2-9 11:18
0
雪    币: 66
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
11
9楼是插件的截图。
至于crackme是什么楼主去看看这个术语表:http://bbs.pediy.com/showthread.php?t=61546
建议agyness先看看各版块的置顶帖,有什么问题先用论坛的搜索功能搜索一下,也许很快就能找到答案哦!
2010-2-9 19:36
0
雪    币: 485
活跃值: (12)
能力值: ( LV9,RANK:490 )
在线值:
发帖
回帖
粉丝
12
特来和你一起高兴一下!
2010-2-10 16:34
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
恭喜楼主,呵呵
2010-2-10 16:38
0
雪    币: 65
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
额,你那代码似乎可以在精简一点
2010-3-6 21:04
0
雪    币: 31
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
问楼主注册机是用c语言写的吗?
2010-3-8 21:12
0
雪    币: 58
活跃值: (23)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
支持一下楼主,继续努力!
2010-3-8 22:11
0
雪    币: 1074
活跃值: (160)
能力值: ( LV13,RANK:760 )
在线值:
发帖
回帖
粉丝
17
void main()
{
    char name[100];
    printf("name:\r\n");
    gets(name);
    printf("code:\r\n");
    int k = strlen(name);
    for(int i=0;i<k;i++)
    {
        printf("%c",name[i]+1);
    }
    getch();
}

精简一下……
2010-3-9 08:30
0
雪    币: 66
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
18
[QUOTE=不问年少;772594]void main()
{
    char name[100];
    printf("name:\r\n");
    gets(name);
    printf("code:\r\n");
    int k = strlen(name);
    for(int i=0;i...[/QUOTE]
多谢大哥的精简,受教了!
2010-3-10 10:49
0
雪    币: 205
活跃值: (21)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
学习一下,恭喜楼主。
2010-3-10 10:54
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
学习了,谢谢楼主!
2010-3-10 17:23
0
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
个人觉得很不错  大家一起努力
2010-3-18 23:43
0
雪    币: 5
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
请问下 那个注册数值在哪看啊 额  新手 可以理解下嘛  呵呵
2010-3-21 12:24
0
雪    币: 66
活跃值: (26)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
23
这个是明码比较的,很容易就可以找到,你可以先试着自己调试一下,自己多动手,应该可以找到的。
2010-3-26 09:51
0
雪    币: 7330
活跃值: (202)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
写的不错,我们一起努力吧
2010-3-26 14:33
0
雪    币: 423
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
很想学习,没有老师,有点看不懂
2010-3-28 13:30
0
游客
登录 | 注册 方可回帖
返回
//