首页
社区
课程
招聘
第 2 个 CrackMe
发表于: 2005-12-24 10:52 6634

第 2 个 CrackMe

dummy 活跃值
23
2005-12-24 10:52
6634
收藏
免费 7
支持
分享
最新回复 (13)
雪    币: 272
活跃值: (143)
能力值: ( LV15,RANK:930 )
在线值:
发帖
回帖
粉丝
2
怎么没有人来玩呢
2005-12-25 12:54
0
雪    币: 243
活跃值: (190)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
3
最初由 dummy 发布
附件:crackme2.rar



这个 crackme 发了整整一天的时间,没有使用什么算法。主要使用了很多“技巧”(对于我这个菜鸟来说)


是不是修改了SECTION,我这边MCAFEE显示是病毒,晕
2005-12-25 13:45
0
雪    币: 272
活跃值: (143)
能力值: ( LV15,RANK:930 )
在线值:
发帖
回帖
粉丝
4
我修改了其中一个节的属性,就报告是病毒,晕:
2005-12-25 14:11
0
雪    币: 243
活跃值: (190)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
5
最初由 dummy 发布
我修改了其中一个节的属性,就报告是病毒,晕:


我猜也是,因为我曾经也修改过一些EXE的SECTION,被MCAFEE报告说是病毒
2005-12-25 16:49
0
雪    币: 206
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
那到底有没有毒呀?
2005-12-25 17:16
0
雪    币: 272
活跃值: (143)
能力值: ( LV15,RANK:930 )
在线值:
发帖
回帖
粉丝
7
2005-12-25 17:23
0
雪    币: 203
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
楼主,发现个问题,在发送自定义消息的时候wParam的值一直为0,不知对不对? 我猜你的自定义消息是这么判断的
{
    int a = wParam,b = lParam;
    a += b;
    b -= wParam;
    a ^= b;
    if(a <= b)
        注册失败;
    else
        注册成功;
}
但是如果wParam的值一直为0的话程序本身好象是没法注册成功的,请指教
2005-12-25 19:13
0
雪    币: 205
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wsj
9
好像使用了线程注入??

哪位大G给点揭示吧,这样的东西怎么跟踪啊?正好要到关键的地方了,就进行不下去了……都3天了…… 水平太菜了……
2005-12-27 16:10
0
雪    币: 272
活跃值: (143)
能力值: ( LV15,RANK:930 )
在线值:
发帖
回帖
粉丝
10
最初由 wsj 发布
好像使用了线程注入??

哪位大G给点揭示吧,这样的东西怎么跟踪啊?正好要到关键的地方了,就进行不下去了……都3天了…… 水平太菜了……

是的。
只要找到验证处,就 ok 了.
2005-12-27 16:42
0
雪    币: 203
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
楼主的验证代码是在EXPLORER进程中的,
想要跟踪验证方法就把EXPLORER进程附加。
先用OD加载程序,然后下断bp WriteProcessMemory,F9运行,
程序被断下来以后注意堆栈里的内容
0012FFB0   00000030  |hProcess = 00000030
0012FFB4   02C20000  |Address = 2C20000             <======注意这里是要在EXPLORER进程中附加代码的开始地址
0012FFB8   00401000  |Buffer = crackme2.00401000    <======这里是被附加代码的起始地址
0012FFBC   00000085  |BytesToWrite = 85 (133.)      <======这里是被附加代码的大小
0012FFC0   00000000  \pBytesWritten = NULL
好了,现在知道EXPLORER进程中代码的位置了是Address = 2C20000 ,接下来不要关掉OD,另外打开新的OD。用新打开的OD加载EXPLORER进程,然后CTRL+G添入我们刚才找到的地址2C20000点确定。现在便转到了EXPLORER进程中程序验证的部分了,至于程序在运行时是怎么判断的就要自己去试了。注意Address = 2C20000  这里的2C20000 在每次运行时都不一样的,所以不要直接填写2C20000 ,要在WriteProcessMemory被断时观察堆栈里的内容,找到验证处是比较简单的,只要将JBE SHORT 00401048改为JA SHORT 00401048就可以注册成功了。
想问下楼主我上面问到的是不是程序本身就没办法正常注册成功?
2005-12-27 19:23
0
雪    币: 205
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wsj
12
最初由 dummy 发布

是的。
只要找到验证处,就 ok 了.


这两天没有什么时间,等元旦了再好好研究一下。。。
2005-12-27 22:51
0
雪    币: 272
活跃值: (143)
能力值: ( LV15,RANK:930 )
在线值:
发帖
回帖
粉丝
13
最初由 forover 发布
楼主的验证代码是在EXPLORER进程中的,
想要跟踪验证方法就把EXPLORER进程附加。
先用OD加载程序,然后下断bp WriteProcessMemory,F9运行,
程序被断下来以后注意堆栈里的内容
0012FFB0 00000030 |hProcess = 00000030
........


我也不知道是否可以正常注册
这个程序只是想实现我的一个想法,已经失败了附件:crackme2_src.rar
2005-12-28 10:26
0
雪    币: 205
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wsj
14
好像是没有办法注册成功……只能爆……
2006-1-2 09:15
0
游客
登录 | 注册 方可回帖
返回
//