您的位置:首页 > 其它

从杀毒软件的机制展望未来免杀技术

2009-06-21 16:56 225 查看

现在主流的免杀技术基本上都是基于花指令、保护壳、修改特征码来实现木马免杀的。首先有必要简单回顾一下免杀技术的发展史。

关于现今主流的免杀技术(国内),大概可以追溯到2004年,这时候免杀技术只掌握在少数人手中,并没有公开化,记得没错的话,他应该是和灰鸽子配套使用的。当时国内的主流杀软主要有 瑞星,金山,江民,诺顿。(呵呵,到了05年卡巴才慢慢登场),当时的杀软远没有现在强大,基本连实时监控都不具备,基本查杀病毒全靠特征码来定位,甚至连符合特征码都没有。当然,那时候木马基本少的可怜,说的上名的 也就是 广外女生 冰河之类,呵呵 这时候有灰鸽子的人还是非常少的,这时候灰鸽子基本中了就得重做系统,因为这时候的杀软还解决不了进程注入,HOOL API这样的木马,要不怎么说鸽子是远控的里程碑呢。
到了04年底 05年初 随着杀软的进步,鸽子已经可以被杀软KILL了,修改特征码和加花指令 保护壳的技术开始逐渐在一些大牛中流传,这时候一些辅助工具也出现了 比较有代表的是 BoLer 以及 CCL,这2款软件基本只能定位单一特征码,即使这样,加了花指令和修改了特征码的鸽子也所向无敌了。随后修改特征码的技术也开始以收费的形式开始在次一级的黑客圈内传播。这时候 比较有名的是 黑客动画吧的浩天出的 免杀教程系列,现在基本所有的教程都是以他的教程为蓝本。传播范围最广,也是最经典的。 同年 卡巴开始逐渐进入到中国的时常,当时是KAV5 不知道还有人有印象没,在05年底的时候 KAV6开始比较普及了,于其他杀毒软件相比,KAV6多了实时监控,以及通过复合特征玛来查杀木马。然后,我们现在经常使用到的如MYCCL,MULTI_CCL,TK.LOADER开始在黑客群中流行,可以说 通过这几款软件以及花指令 加壳技术,杀软几乎是束手无策的。同时,鸽子也逐渐由少数人拥有,扩散到绝大多数人拥有,比较经典的版本就是 “黑防鸽子”,基本现在所有的鸽子都是从“黑防鸽子”转换而来。
从某种意义上来说 06-07年,是鸽子最辉煌的2年,但是随着杀软的进步,实时监控技术的不断进步,鸽子的发展空间越来越小,从05年使用鸽子可以轻易感染上万台机器,同时很难被清除。到07年 感染机器很难过千,同时存活时间短也成了最大的问题,当时主要还是流行用各自进行流氓软件的安装,游戏盗号,以及DDOS之类。呵呵,那时候下载者才刚刚出来,也只在少数人中流动。这时候,鸽子的缺点也越发明显 第一 体积过大(不加壳的400多K),第二 插入进程的方式已经成为杀软的头号拦截对象 第三 特征码太多。在很短的时间里,鸽子迅速被PCSHARE淘汰掉,PCSHARE的驱动隐藏,端口复用,体积小,一下子成为07-08的主流远控。
从07年开始出现主动防御,到现在,随着主动防御技术以及病毒库的快速更新(从05年的7天一更新到现在的2小时一更新)市面上主流远控的活动空间也在急剧收缩。第一 传统的免杀方式很难过主动防御了,随着主动防御技术的不断完善 第二 免杀的木马存活周期过短。
拿现在主流使用的鸽子和PC来说,基本上流传的就是固定的几个版本,也就是说,大家手中远控的蓝本基本都差不多。这就存在这样一个问题:对于同一个木马A来说,其原始特征玛假设只有2处,虽然10个人,每个人的修改方式不尽相同,但是 对于一款木马来说 这点修改可能只占到总代码的%0.01,换句话说,其余的%99.99都是相同的,当其中一个人的木马被杀软中心截获到并重新定位特征码后,很有可能这个重定位的特征码这10个人免杀过的小马都有,这样只要病毒库一升级,基本会导致大部分被KILL,对于家鸡来说,掉了无所谓,但是对于一些重要的服务器来说,这足以致命。
现在再来谈一下主动防御,主动防御如果笼统的来理解的话,可以简单定义为 通过程序的行为来判定是否为病毒,从而进行拦截。比如说 木马常常会用到 HOOK SSDT,线程注入,替换服务,模块注入。一般的软件很难用到以上的这些技术,如果使用以上技术,那么势必会调用相应的API函数,这样杀软只需要对调用的API和执行过程进行匹配,很容易发现木马。尤其是对一些已知的木马,比如灰鸽子,PCSHARE,由于大面积的使用和发布,其释放文件的步骤,调用的API太容易被监控到了。无论怎么改特征码,这些行为特征想要改变基本不太可能。
所以说,现在的免杀技术被杀软淘汰掉只是时间问题,尤其是在一些常用的,很容易下载到的马身上更能体现出来。当然,这世界没有无敌的技术,主动防御也并非牢不可破。从现在木马的发展来看,以后免杀大概会围绕以下4个方向展开。
第一 使用为公布的RING0级的API编写木马,由于IDA逐渐开始普及,越来越多RING0级的API被公布出来,比如ZW系列的,同时这条路会走的更远,毫无疑问 使用未公布的API编写木马的核心代码,是绝对过主动防御的。
第二 基于原码的免杀,随着木马的发展,木马功能的模块化也是发展趋势之一,基与同一功能有不同的实现方式,比如文件传输可以通过 SOCKET 或者 FTP 或者HTTP来实现,对于原码的功能模块替换也会成为未来主流免杀的方式之一。
第三 破坏杀软的监控 对于一个过表面的流行马想过杀软的主动防御来说,破坏杀软的监控是个不错的选择,WINDOWS本身就是个很不安全的操作系统,在获取杀软的有效句柄后,最少有几十种方式使的杀软非正常退出,从而达到强穿主动防御的目的。
第四 X-CODE的寄生技术 这项技术在国内应用的最少,这里还是提一下,X-CODE主要是指将代码插入到PE文件中的技术,这里我要说的是,这于传统的感染PE文件的方式不同,一般来说,国内都喜欢给PE文件增加一个区段,把代码插入到区段中去,现在这样很难避开杀毒软件的查杀。举例来说明一下
拿一个典型的PE文件头来说 一般他会占用300h字节的空间,其最小对齐段是200h字节,这样就会留下一个很小的空闲空间,这段空间就可以用来插入我们的代码,对于一个PE文件来说,其空白空间是很多的,多但是不连续,一般还比较小。这里有2个问题要解决,第一 首先要代码根据需要分割成一段一段的 第二 要保证分割开来的代码能在PE文件中加载并执行。当满足这2个条件,你会发现,X-CODE是多么强悍的技术。
就写到这里吧,希望大家都能看懂。没涉及什么代码,呵呵。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: