当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 对Asprotect脱壳的一点总结 作者: (职位空缺)上次忘了留下联系电话,这次补上,欢迎各位垂询,小弟我在此静候佳音。
 

 

 ·telnet中的安全问题    »显示摘要«
    摘要:telnet中的安全问题(李素科 2001年07月30日 10:50) 1、telnet面临的主要安全问题 使用者认证 数据传送保密 防范针对telnet的攻击 telnet本身没有很好的保护机制,所以要借助其他外部的保护。 telnet本身的缺陷是: 没有口令保护,远程用户的登陆传送的帐号和密码都是明文,使用普通的sniffer都可以被截获 没有强力认证过程。只是......
 ·产品激活技术问答    »显示摘要«
    摘要: 产品激活技术问答......


对Asprotect脱壳的一点总结
对asprotect脱壳的一点总结

【程序编程相关:目前的状态(2)

【推荐阅读:职业生涯自我规划五步法

作者:        (职位空缺)上次忘了留下联系电话,这次补上,欢迎各位垂询,小弟我在此静候佳音.热线电话:818-9481818....你知道这是哪儿的电话号码........公厕电话......... @#$@#$ 熏倒 @#$@#$.... 【扩展信息:“盗版”、“知识产权”等易混淆和错用的词

写作日期:    2000-08-11

我写文章以交流为主,希望大家在转载时能保持文章的完整性.

从我知道的情况来看,对asprotect加壳的程序大致可以分为三类:(这种分类方法不具有权威性,只是我自己为了区别而已)

1.这类程序只检测sice,siwvid,siwdebug,内存中可以得到完整的import table.一次跟踪可完成脱壳.

2.这类程序检测sice,siwvid,siwdebug与bchk,内存中也可以得到完整的import table.一次跟踪也可完成脱壳.

3.这类程序同 2 ,只是内存中无法得到完整的import table.因此需要其他手段来辅助得到import table.可能需要几次跟踪完成脱壳.

以上三类程序脱壳方式基本相同.因此我把跟踪过程中几个关键的特征说明一下.

①寻找合适的中断进入加壳程序.(我称为找进入点)

(注:在跟踪之前,最好用icepatch修补你的softice,否则你就要手动跳过防跟踪代码了)

对于 1 类程序,一般可以用以下方式进入:

ctrl-d中断,进入softice.下指令

bpx createfilea do "p ret"

然后按f5返回windows,运行加壳程序,中断在我们所设下的中断处.

以后的跟踪可以直接继续,看见不远处有 ret 语句还可以按 f12 键快速返回到上一层调用中.

对于 2 .3 两类程序,一般可以用以下方式进入(操作方法同上,只是设下的断点不同).这次我们设断点

bpint 3

以后的跟踪与上有些不同,在«找entry point的又一方法 -----针对asprotect v1.0加壳的程序»一文中我已有说明,这里简要说明一下.

中断后一般你可以看到类似如下的屏幕:

015f:004bf23c  cc                  int      3            <--你中断在此

015f:004bf23d  eb02                jmp      004bf241

015f:004bf23f  e9025deb02          jmp      03374f46

015f:004bf244  e9ff33c05a          jmp      5b0c2648

015f:004bf249  59                  pop      ecx

015f:004bf24a  59                  pop      ecx

015f:004bf24b  648910              mov      fs:[eax],edx

015f:004bf24e  eb0a                jmp      004bf25a

015f:004bf250  e91305ffff          jmp      004af768        <--注意这个跳转语句,int 3过后就要到这里继续了.

015f:004bf255  e8aa07ffff          call      004afa04

015f:004bf25a  8a1518514c00        mov      dl,[004c5118]

015f:004bf260  8b45f8              mov      eax,[ebp-08]

把光标移到第五个jmp语句以后,按f7键.好,以后的跟踪与上面的方法相同.

②检测crc的地方

在按了几个 f12后,一般就到了检测crc的代码地方,这里我们不需要做什么,只是让大家明白,如果你改到了程序某处,在这里就要关心一下了.

015f:004c6b74  ebf0                jmp      004c6b66

015f:004c6b76  8b45ec              mov      eax,[ebp-14]    <--注意此处

015f:004c6b79  3b45f0              cmp      eax,[ebp-10]    <--注意此处

015f:004c6b7c  7443                jz        004c6bc1        <--如果比较的结果相同,就跳转了,否则就到下面显示file corrupted! 的框框了

015f:004c6b7e  8a155cc94c00        mov      dl,[004cc95c]

015f:004c6b84  8b45f8              mov      eax,[ebp-08]

015f:004c6b87  e848e4ffff          call      004c4fd4

015f:004c6b8c  8945f4              mov      [ebp-0c],eax

015f:004c6b8f  837df400            cmp      dword ptr [ebp-0c],00

015f:004c6b93  742c                jz        004c6bc1

015f:004c6b95  8d85e4feffff        lea      eax,[ebp-011c]

015f:004c6b9b  8d95e9feffff        lea      edx,[ebp-0117]

大家注意其中三句的特征,以后跟踪时就知道这里是比较crc的地方就行了.对于做inline patch的朋友就要记住了.

③获得 import table 与 entry point


...   下一页
 ·软件保护机制小窥    »显示摘要«
    摘要:保护机制小窥我写文章以交流为主,希望大家在转载时能保持文章的完整性。【前言】这次以介绍保护机制为主,就不写什么脱壳方法了,其实以前我也误导了不少善良的观众。了解一个加壳软件最主要的应该是了解其保护机制,这也是我后来才领悟的一点。以下介绍的一点保护机制的知识。这里只为了让大家和我一起来共同学习和了解保护机制的知识。水货作者: ljttt出厂日期: 2001-01-01 (水货的东东一般都这样写出厂日......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE