首页
社区
课程
招聘
[原创]我的ASM CrackMe分析(200帖留念) [分析+源码](详解!)
发表于: 2007-12-7 16:40 12533

[原创]我的ASM CrackMe分析(200帖留念) [分析+源码](详解!)

2007-12-7 16:40
12533
收藏
免费 7
支持
分享
最新回复 (23)
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
这个CM还是不错的,顶一下
2007-12-7 16:45
0
雪    币: 740
活跃值: (952)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
3
hehe谢谢捧场
2007-12-7 17:02
0
雪    币: 29235
活跃值: (7759)
能力值: ( LV15,RANK:3306 )
在线值:
发帖
回帖
粉丝
4
源码收藏了。
2007-12-7 17:09
0
雪    币: 740
活跃值: (952)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
5
风哥的语言总是那么精简,速度总是那么快………………

唉,不顶我顶了。谢谢捧场啊
2007-12-7 19:48
0
雪    币: 207
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
支持源码,感觉汇编编程比较难!
2007-12-7 19:48
0
雪    币: 740
活跃值: (952)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
7
呵呵,汇编玩玩练手
2007-12-7 20:29
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
汇编还不熟悉~~~~~~~~~~
2007-12-8 02:38
0
雪    币: 212
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
谢谢分享!
2007-12-8 12:47
0
雪    币: 1919
活跃值: (901)
能力值: ( LV9,RANK:490 )
在线值:
发帖
回帖
粉丝
10
耐力好,支持~~
2007-12-8 17:00
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
佩服!!!!!!!
2007-12-12 14:09
0
雪    币: 197
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
我才看到三分之一左右就头大了,看来我缺乏毅力哦。
标记下,晚些时候再看。这么好的文章一定要读完。
关于SMC:
所谓SMC(Self Modifying Code)技术,就是一种将可执行文件中的代码或数据进行加密,防止别人使用逆

向工程工具(比如一些常见的反汇编工具)对程序进行静态分析的方法,只有程序运行时才对代码和数据进

行解密,从而正常运行程序和访问数据。计算机病毒通常也会采用SMC技术动态修改内存中的可执行代码来达

到变形或对代码加密的目的,从而躲过杀毒软件的查杀或者迷惑反病毒工作者对代码进行分析。现在,很多

加密软件(或者称为“壳”程序)为了防止Cracker(破解者)跟踪自己的代码,也采用了动态代码修改技术

对自身代码进行保护
2007-12-12 16:36
0
雪    币: 740
活跃值: (952)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
13
呵呵,谢谢斑竹加精,也谢谢楼上几位捧场
2007-12-12 21:37
0
雪    币: 197
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
差不多看完了,算法没仔细读。真够长的,佩服作者的毅力。总结下吧,大体用到以下技术。
A   用花指令反OD跟踪,花指令中的跳转不使用JMP,而使用CALL实现(修改堆栈中的CALL返回地址以实现跳转,更具迷惑性);

B  多层SMC技术,每层SMC的实现方式也不同;(该CrackME多次使用SMC技术,作者很喜欢用这招)还利用SMC来隐藏API的调用,当然仅仅是欺骗下OD。函数调用没使用CALL指令,而是使用双跳转,其中一个跳转(JMP)是使用SMC保护的。

C  利用系统时间ANTI,2次调用GetLocalTime()函数捕获当前时间并进行比较;

D  为防止JMP爆破,对关键跳转点采用多重判断,效果很有限;

E  在代码中加了很多操作堆栈和寄存器的无用代码,以混乱破解者的思维,效果很有限;
如,
  004012A8   > \B8 24104000   MOV EAX,CrackMe1.00401024
  004012AD   .  B9 3D104000   MOV ECX,CrackMe1.0040103D
  004012B2   .  83E9 03       SUB ECX,3            ;ECX= ECX -3
  004012B5   .  2BC8          SUB ECX,EAX          ;ECX内存贮需覆盖的字节数
  004012B7   .  8BD1          MOV EDX,ECX          ;EDX内存贮需覆盖的字节数
  004012B9   .  BB 90909090   MOV EBX,90909090     ;EBX为 90909090
  004012BE   >  8BF0          MOV ESI,EAX          ;ESI为SMC的起始地址
  004012C0   .  03F2          ADD ESI,EDX          ;JUNK CODE
  004012C2   .  2BF1          SUB ESI,ECX          ;JUNK CODE
  004012C4   .  891E          MOV DWORD PTR DS:[ESI],EBX
  004012C6   .^ E2 F6         LOOPD SHORT CrackMe1.004012BE

文章真的很好啊,但语言用词也许可以更好一点。如,
004011CF   .  2BC8          SUB ECX,EAX                     
  这是什么?毫无疑问,应该是40116A-->(4011C4-1)之间的个数   //“个数”改为“字节数目”         
                                                                                                  更易懂

004011D1   .  8BD1          MOV EDX,ECX
  我们暂时不知道EDX以后干什么,目前只知道他是个数-1        //“个数-1”应用括号括起来更清     
                                                                                             晰 (个数-1)

最后期待楼主发布更精彩的文章
2007-12-13 01:21
0
雪    币: 234
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
15
学了不少东西,谢谢分享.
2007-12-18 16:20
0
雪    币: 740
活跃值: (952)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
16
谢谢gdlian的精彩分析
2007-12-28 13:58
0
雪    币: 609
活跃值: (237)
能力值: ( LV12,RANK:441 )
在线值:
发帖
回帖
粉丝
17
厉害……我当时弄下来的时候看见PEid报的ACProtect我就晕了……
2007-12-28 19:38
0
雪    币: 740
活跃值: (952)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
18
呵呵,一个入口的伪装.....

其实一看就知道不是....
2007-12-31 22:01
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
哇  真厉害啊     继续学习
2007-12-31 23:20
0
雪    币: 740
活跃值: (952)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
20
有新内容,D上去
2008-2-1 18:07
0
雪    币: 485
活跃值: (12)
能力值: ( LV9,RANK:490 )
在线值:
发帖
回帖
粉丝
21
很长,很暴力!
2008-2-1 18:58
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
看看    学习中
2008-3-19 00:41
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
看的我是晕头转向一点点都不懂
2008-4-16 07:49
0
雪    币: 244
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
谢谢楼主的分析+源码
2010-1-28 20:54
0
游客
登录 | 注册 方可回帖
返回
//