首页
社区
课程
招聘
[原创]DiLA 0.5的破解
发表于: 2006-8-6 21:21 5271

[原创]DiLA 0.5的破解

jdxyw 活跃值
19
2006-8-6 21:21
5271

【文章标题】: DiLA 0.5的破解
【文章作者】: jdxyw
【软件名称】: DiLA 0.5
【下载地址】: http://bbs.pediy.com/showthread.php?s=&threadid=29055

【加壳方式】: 无
【编写语言】: MASM
【使用工具】: OD peid
【操作平台】: WIN XP
【作者声明】: 只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!
--------------------------------------------------------------------------------
【详细过程】
  首先是查壳,这个crack无壳
  
  点击运行,出现一个对话框,由此,我们可以从对话框,或者是字符串下手都可以
  
  运行OD,将DiLA 0.5载入,运行,随便输入一个序列号
  
  下断点到此处
  00401046  |.  E8 8D000000     CALL JMP.&user32.GetDlgItemInt              ; 这个是获取序列号,由函数名可知,序列号应该为数字
  0040104B  |.  50              PUSH EAX                                    ;  
  0040104C  |.  68 BF104000     PUSH v5.004010BF
  00401051  |.  E8 48000000     CALL v5.0040109E                            ;  这个是个关键处,要跟入
  00401056  |.  83F8 01         CMP EAX,1                                   ;  
  00401059  |.  74 16           JE SHORT v5.00401071
  0040105B  |.  6A 10           PUSH 10                                     ; /Style = MB_OK|MB_ICONHAND|MB_APPLMODAL
  0040105D  |.  68 00304000     PUSH v5.00403000                            ; |Title = "Fishing with DiLA v0.5"
  00401062  |.  68 17304000     PUSH v5.00403017                            ; |Text = "Sorry, wrong code!"
  00401067  |.  FF75 08         PUSH [ARG.1]                                ; |hOwner = 00401000
  0040106A  |.  E8 6F000000     CALL JMP.&user32.MessageBoxA                ; \MessageBoxA
  0040106F  |.  EB 14           JMP SHORT v5.00401085
  00401071  |>  6A 40           PUSH 40                                     ; /Style = MB_OK|MB_ICONASTERISK|MB_APPLMODAL
  00401073  |.  68 00304000     PUSH v5.00403000                            ; |Title = "Fishing with DiLA v0.5"
  00401078  |.  68 2A304000     PUSH v5.0040302A                            ; |Text = "Success! Thank you for playing ;)"
  0040107D  |.  FF75 08         PUSH [ARG.1]                                ; |hOwner = 00401000
  00401080  |.  E8 59000000     CALL JMP.&user32.MessageBoxA                ; \MessageBoxA
  
  
  按F7进入下列代码
  0040109E  /$  83C4 10         ADD ESP,10
  004010A1  |.  83EC 0C         SUB ESP,0C
  004010A4  |.  66:35 AFDE      XOR AX,0DEAF
  004010A8  |.  C1C0 10         ROL EAX,10
  004010AB  |.  BB CFFFDA3A     MOV EBX,3ADAFFCF
  004010B0  |.  3BC3            CMP EAX,EBX
  004010B2  |.  75 08           JNZ SHORT v5.004010BC
  004010B4  |.  B8 01000000     MOV EAX,1                              在上面代码的选择,是以EAX是否为一来判断序列号的正确
                                                                       因此,可以得出,EBX=3ADAFFCF就是序列号经过一番运算之后
                                                                       用来验证的。而EAX就是要经过一系列的运算来等于EBX。从而实现
                                                                       序列号的验证
  004010B9  |.  33DB            XOR EBX,EBX
  004010BB  |.  C3              RETN
  004010BC  |>  33DB            XOR EBX,EBX
  004010BE  \.  C3              RETN
  004010BF   .  58              POP EAX                                     ;  v5.00401056
  004010C0   .  80C4 20         ADD AH,20
  004010C3   .  F7D8            NEG EAX
  004010C5   .  68 A1104000     PUSH v5.004010A1
  004010CA   .  C3              RETN
  
  
  根据EAX的运算顺序,我们可以从已知的EBX的值,逆向推出EAX的原始值
  MOV EBX,3ADAFFCF
  ROR EBX,10
  XOR BX,0DEAF
  NEG EBX
  SUB BH,20
  经过以上的运算,EBX=0030FB8BH=3210123d 所以序列号为321012
  
--------------------------------------------------------------------------------
【版权声明】: 本文原创于看雪技术论坛, 转载请注明作者并保持文章的完整, 谢谢!

                                                       2006年08月06日 21:17:24


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 7
支持
分享
最新回复 (4)
雪    币: 338
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
支持!!
2006-8-6 22:27
0
雪    币: 200
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
沙发的沙发
2006-8-6 22:51
0
雪    币: 433
活跃值: (176)
能力值: ( LV13,RANK:1250 )
在线值:
发帖
回帖
粉丝
4
这个CrackMe我上传过了,下面是我的破文地址:

http://bbs.pediy.com/showthread.php?s=&threadid=29055

如果可以的话把下载地址改成上面这个,并且编辑掉本帖上传,节省点论坛空间。

另外,貌似你们都没有找到另外一个隐蔽密码似的
2006-8-11 19:39
0
雪    币: 333
活跃值: (11)
能力值: ( LV12,RANK:770 )
在线值:
发帖
回帖
粉丝
5
最初由 冲天剑 发布
这个CrackMe我上传过了,下面是我的破文地址:

http://bbs.pediy.com/showthread.php?s=&threadid=29055

如果可以的话把下载地址改成上面这个,并且编辑掉本帖上传,节省点论坛空间。
........

不好意思,我没有注意到,我就去把附件给去了
2006-8-11 21:12
0
游客
登录 | 注册 方可回帖
返回
//