首页
社区
课程
招聘
[原创]My First KeyGenme0.1
发表于: 2006-12-4 08:58 7564

[原创]My First KeyGenme0.1

2006-12-4 08:58
7564

我的第一个KeyGenme,希望大家多多支持。
成功:做KeyGen出来,描述一下它的算法.
0。2版正在蕴量当中,一旦0。1被解。
0。2版马上发布。:)


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

上传的附件:
收藏
免费 7
支持
分享
最新回复 (15)
雪    币: 100
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
呵呵,搞定了,马上写出来……

先整理一下,明天才能发主题贴!#¥%

1、用peid检测为UPX壳,工具脱之……(UPX ShellEx v1.10 );
2、检测为Delphi程序,自然想到DeDe,载入分析,其中的“btn1click”应该是程序里的“Check”按钮,记下地址为“0048D754”。
2、OD载入,在反汇编窗口右键――“转到”――“表达式”输入0048D754,马上到了 地址“0048D750”,OK,断点下在这里:

0048D757    B9 1E000000     mov     ecx, 1E   →断点下这里,下面也行
0048D75C    6A 00           push    0
0048D75E    6A 00           push    0
0048D760    49              dec     ecx

3、回到程序窗口,输入注册信息:
name: ddstudio
serial:78787878
点Check按钮,现在被OD拦在了0048D757这个位置

4、F8运行,观察寄存器窗口,这里应该是比较用户名:

0048D86F    83BD 6CFFFFFF 0>cmp     dword ptr [ebp-94], 0
0048D876    75 10           jnz     short 0048D888  →比较用户名是否为空,不为空则跳
0048D878    BA 78DE4800     mov     edx, 0048DE78                    ; ASCII "Please Input You Name!"
0048D87D    8B83 08030000   mov     eax, dword ptr [ebx+308]

5、继续F8,现在程序代码应该在根据name计算注册码,估计写注册机应该分析这段代码……

6、继续F8来到这里:
0048DC9E    E8 F19AFBFF     call    00447794
0048DCA3    8B85 0CFFFFFF   mov     eax, dword ptr [ebp-F4]          ; 取得假码“78787878”放入eax
0048DCA9    8B95 74FFFFFF   mov     edx, dword ptr [ebp-8C]          ; 这里把真正的注册码放入edx
0048DCAF    E8 E46CF7FF     call    00404998                         ; 关键call
0048DCB4    75 12           jnz     short 0048DCC8                   ; 跳走则成功,负责完蛋
0048DCB6    BA 10DF4800     mov     edx, 0048DF10                    ; ASCII "Success,Well Done,Guy!"
0048DCBB    8B83 14030000   mov     eax, dword ptr [ebx+314]
0048DCC1    E8 FE9AFBFF     call    004477C4
0048DCC6    EB 10           jmp     short 0048DCD8
0048DCC8    BA 30DF4800     mov     edx, 0048DF30                    ; ASCII "Try again!"
0048DCCD    8B83 14030000   mov     eax, dword ptr [ebx+314]
0048DCD3    E8 EC9AFBFF     call    004477C4

8、记下edx的值,我这里是“8fBTU4f17vYc1asJXDB+Y+TU4f17vYc1k5ZIQLPacYd-dfc77558868f0dd3110dea343e1046d0-4331f7ffe305de224a714d359cabe426-v2FCCHwxXhb4TlShLaGJqJCs9LhrUS-DB+Y+TU4Y+TU46d0-4331f7”,这就是注册码了。

7、显然,暴破点在0048DCB4   /75 12           jnz     short 0048DCC8
将jnz改为je,然后右键――“复制到可执行文件”完成暴破

整理:
1、暴破点:0048DCB4……同上;
2、0048DCA9代码处是明码,这个call我没有跟进具体分析,但找真注册码就在这里了。
name:ddstudio
serial:8fBTU4f17vYc1asJXDB+Y+TU4f17vYc1k5ZIQLPacYd-dfc77558868f0dd3110dea343e1046d0-4331f7ffe305de224a714d359cabe426-v2FCCHwxXhb4TlShLaGJqJCs9LhrUS-DB+Y+TU4Y+TU46d0-4331f7

2006-12-4 09:58
0
雪    币: 123
活跃值: (101)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
靠!这么快?看来下次得来个变态点得才行啊!
2006-12-4 10:06
0
雪    币: 100
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
最初由 juexing 发布
靠!这么快?看来下次得来个变态点得才行啊!


老大指点则个~~
2006-12-4 10:30
0
雪    币: 123
活跃值: (101)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
什么嘛?
搞半天你是在玩爆破,靠!
2006-12-4 11:16
0
雪    币: 263
活跃值: (10)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
6
兄弟,明码比较的,你再变态的算法都没用了,不过你的算法还真的够变态了,好长好长,可惜。。。。。。。。。。。。
上传的附件:
  • 1.jpg (28.11kb,16次下载)
2006-12-4 14:54
0
雪    币: 123
活跃值: (101)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
最初由 KAN 发布
兄弟,明码比较的,你再变态的算法都没用了,不过你的算法还真的够变态了,好长好长,可惜。。。。。。。。。。。。

:)
那你来个算法分析呀!
我的KeyGenme,你放个KeyGen出来解决就对了!
2006-12-4 15:24
0
雪    币: 263
活跃值: (10)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
8
那我今天的空余时间就全完了,我还是举手算了
2006-12-4 15:48
0
雪    币: 123
活跃值: (101)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
最初由 KAN 发布
那我今天的空余时间就全完了,我还是举手算了

老兄别举手,我以后弄个防破的Crackme给你玩呀!
2006-12-4 15:50
0
雪    币: 235
活跃值: (12)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
10
8、记下edx的值,我这里是“8fBTU4f17vYc1asJXDB+Y+TU4f17vYc1k5ZIQLPacYd-dfc77558868f0dd3110dea343e1046d0-4331f7ffe305de224a714d359cabe426-v2FCCHwxXhb4TlShLaGJqJCs9LhrUS-DB+Y+TU4Y+TU46d0-4331f7”,这就是注册码了。

这么长的注册码???
2006-12-4 15:51
0
雪    币: 123
活跃值: (101)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
最初由 iamcrackin 发布
这么长的注册码???

这位老兄,我想到了一个改进的方法.
下次码长度一定少.:)
2006-12-4 15:55
0
雪    币: 263
活跃值: (10)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
12
是够变态
2006-12-4 15:57
0
雪    币: 721
活跃值: (350)
能力值: ( LV9,RANK:1250 )
在线值:
发帖
回帖
粉丝
13
最初由 ddstudio 发布
...1、用peid检测为UPX壳,工具脱之……(UPX ShellEx v1.10 );
2、检测为Delphi程序,自然想到DeDe,载入分析,其中的“btn1click”应该是程序里的“Check”按钮,记下地址为“0048D754”。
2、OD载入,在反汇编窗口右键――“转到”――“表达式”输入0048D754,马上到了 地址“0048D750”,OK,断点下在这里:
........

思路不错。
2006-12-4 19:27
0
雪    币: 697
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
这个可以吗?
2006-12-4 19:54
0
雪    币: 123
活跃值: (101)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
倒了,都变成Crackme了,那我还写算法干什么?我哭啊!
2006-12-5 08:27
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
谢谢你提供给我一个学习的东西
2006-12-25 15:38
0
游客
登录 | 注册 方可回帖
返回
//