首页
社区
课程
招聘
[分享]一个CCG的crackme给大家玩
发表于: 2009-4-13 21:00 7568

[分享]一个CCG的crackme给大家玩

2009-4-13 21:00
7568
一个CCG的crackme给大家玩
我脱了壳了已经.
我破出来了 但是流程没搞明白  大家玩玩把  最好谁把流程给说说.

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 0
支持
分享
最新回复 (17)
雪    币: 452
活跃值: (10)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
2
又是一个hook的东东
2009-4-13 22:03
0
雪    币: 244
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
HOOK??我看看
2009-4-14 09:34
0
雪    币: 1074
活跃值: (160)
能力值: ( LV13,RANK:760 )
在线值:
发帖
回帖
粉丝
4

   暴破是比较容易,软件流程也没搞明白
    还得努力啊,太菜了!
上传的附件:
2009-4-14 16:40
0
雪    币: 295
活跃值: (11)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
5
findlakes
OKNHIOUKaa
2009-4-14 19:50
0
雪    币: 1074
活跃值: (160)
能力值: ( LV13,RANK:760 )
在线值:
发帖
回帖
粉丝
6
总是那么直接地把注册码一甩,然后就走了,晕
2009-4-15 09:51
0
雪    币: 319
活跃值: (49)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
哈哈。。。。。。。。。。楼上的你不也经常这样。所以搞的我们这些小菜晕乎乎的。。。。。。。。。
2009-4-15 11:29
0
雪    币: 423
活跃值: (11)
能力值: ( LV9,RANK:230 )
在线值:
发帖
回帖
粉丝
8
工具查找消息函数入口:00401AD1
经一个JMP到00401380

004018DB

带壳的话,API函数入手。动态调试中静态分析,同样的效果。
2009-4-15 14:04
0
雪    币: 1074
活跃值: (160)
能力值: ( LV13,RANK:760 )
在线值:
发帖
回帖
粉丝
9
  又被定式思维给害了,我靠! 仔细分析后原来是这么简单:
  在按下按钮后的计算可以看作是1个虚假的计算,如果按照其思路走,只会弹出“加油吧”的对话框,而真正的计算是在其后的OnTimer事件中!
  软件在EDIT的OnChange事件和Command的OnOk事件中分别获取了用户名与注册码,并且分别对应了两个计算过程,这是最令我没想到的。
  软件设计的十分精彩,我不得不佩服作者的思路,这几天遇到的CM都很厉害啊!
  软件要求注册码长度至少为10位,实际上只校验前8位,至于后面字符,随便是啥也不影响结果!看来定式思维是很害人的!!!:eek我是深有体会啊!
  
  下面给出我算出的用户名与注册码:
  用户名: bwns
  注册码: UQDEAPWDXX
      XX代表1位或两位的任意字符,反正凑足十位以上就行!。
2009-4-15 21:28
0
雪    币: 358
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
你如何定位OnTimer 的消息处理过程的啊?  因为他lpTimerFunc为空
不知道该如何查找了
2009-4-16 13:21
0
雪    币: 1074
活跃值: (160)
能力值: ( LV13,RANK:760 )
在线值:
发帖
回帖
粉丝
11
呵呵,我已经很明白地告诉你了呀!
  “OnChange事件和Command的OnOk事件中分别获取了用户名与注册码,并且分别对应了两个计算过程”
   对于OnChange事件保存的注册码下内存访问断点,F9就直接到了关键算法二处。
2009-4-16 16:35
0
雪    币: 216
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
jinrs
SIHXYZLBCC
2009-4-16 18:26
0
雪    币: 423
活跃值: (11)
能力值: ( LV9,RANK:230 )
在线值:
发帖
回帖
粉丝
13
楼主的自找麻烦式练习法令人印象深刻。楼主的手动脱壳文章,与我现在的练习方向相同,望共同
提高。

感谢海风月影的强大。

从sessiongdiy身上我偷学了许多的实用技巧。但我不满意他去年中旬的一句简单的“凭经验”,开始了自己的独立摸索之旅。终于将所谓的经验完全文字化,同时我自信有能力将自己的体会完全平民化。下面的内容可说是他的强项。

1.迅速了解程序注册流程的能力。
2.对程序漏洞的敏感嗅觉能力。
3.强大而全面的理论知识和不断钻研、总结积累的丰富经验。

这题我第一遍跟时,在00401380处停下,大致浏览了一下代码,发现最后的CALL很扎眼,同时
获得了重要的信息:
004013EA . 83F9 0A cmp ecx, 0A
004013ED . 73 11 jnb short 00401400

004013F1 . 68 B8A04>push 0041A0B8

0041A098 39 62 40 00 00 00 00 00 B0 C9 21 00 D3 CD 00 00 9b@.....吧!.油..
0041A0A8 BC D3 00 00 36 44 2A 68 21 64 4E 5E 21 67 00 00 加..6D*h!dN^!g..
0041A0B8 D7 A2 B2 E1 C2 EB B3 A4 B6 C8 D0 E8 31 30 CE BB 注册码长度需10位
0041A0C8 00 00 00 00 D0 F8 00 00 BC CC 00 00 C1 CB 21 00 ....续..继..了!.
0041A0D8 B9 A6 00 00 B3 C9 00 00 C4 E3 00 00 B4 ED 2C 00 功..成..你..错,.
0041A0E8 B2 BB 00 00 00 00 00 00 10 67 41 00 00 00 00 00 不......gA.....

利用海风月影的强大,我迅速来到:
00401640
004016e0

逆向追踪发现如同爬高楼,效率太低。

上兵伐谋,最后的难点却是作者弄巧成拙、聪明反被聪明误的漏洞,反而是解题的关键。
搜索最后的CALL,发现总共只有两个,分别在关键算法段尾。作者的用意是防止两处被持续跟踪,呵呵。。。

那么,第一种方法是否可行呢?我昨晚酒醉,难以入睡。大致复习了《MFC消息逆向》
《MFC深入浅出》,《消息回调函数》,结合动态调试发现确实可行。以后遇到"蜀道难"的
加密高手时,可以学学邓艾,笑取成都。

加上不问年少的方法,此题共有三种思路,与君把文共交流。

感谢sessiondiy的强大。

另:
楼主能否提供加壳的原件供我学习、研究?
恕我直言,好像壳没脱完整,这只是一种本能的直觉。
同时,我想体会下带壳调试的感觉。对比印证下我发现的一些细节问题。
2009-4-18 12:47
0
雪    币: 423
活跃值: (11)
能力值: ( LV9,RANK:230 )
在线值:
发帖
回帖
粉丝
14
第一种方法用工具配合更容易。但这是练习而已,我和楼主一样,喜欢自己找麻烦。
2009-4-18 12:54
0
雪    币: 1074
活跃值: (160)
能力值: ( LV13,RANK:760 )
在线值:
发帖
回帖
粉丝
15
嗯,不断地反思,不断地总结,并不是自找麻烦,而是积累和迅速提高的过程。学习!
2009-4-18 13:08
0
雪    币: 358
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
我觉得 nba2005 挺适合写小说的
2009-4-18 16:51
0
雪    币: 420
活跃值: (47)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
不错 下来学习一下 多谢提供
2009-6-4 11:33
0
雪    币: 474
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
那么,第一种方法是否可行呢?我昨晚酒醉,难以入睡。大致复习了《MFC消息逆向》
《MFC深入浅出》,《消息回调函数》,结合动态调试发现确实可行。以后遇到"蜀道难"的
加密高手时,可以学学邓艾,笑取成都。

加上不问年少的方法,此题共有三种思路,与君把文共交流。

nba200功夫厉害,文采也不错啊
2009-6-4 13:59
0
游客
登录 | 注册 方可回帖
返回
//