您现在的位置是:首页 > IT基础架构 > 网络与安全 >
木马病毒隐身穿墙术解密
摘要现在,木马病毒在各种安全防范措施的拦截之下,依然没有任何减少的迹象,甚至还在向更多的方向发展。在防范木马程序这个问题上,造成当前这种局面的主要因素之一,就是木马病毒的开发者和使用者,总是在不断地开发各种帮助木马病毒在杀毒软件面前完全“隐身”,以及可以自由...
现在,木马病毒在各种安全防范措施的拦截之下,依然没有任何减少的迹象,甚至还在向更多的方向发展。在防范木马程序这个问题上,造成当前这种局面的主要因素之一,就是木马病毒的开发者和使用者,总是在不断地开发各种帮助木马病毒在杀毒软件面前完全“隐身”,以及可以自由穿透各种防火墙的技术。
在这种情势下,将所有的希望寄托于杀毒软件和防火墙,肯定是不太现实的,至少当前如此。但是,如果用户对木马病毒当前使用的隐身穿墙术有一定的了解,就可以知道该从哪些方面去防范,以及出现问题时该从何处着手处理。这样,再与各类安全工具相结合,就有可能将木马病毒带来的安全威胁降至我们能够接受的水平以内。
接下来,雪源梅香将以Windows XP系统为平台,分别对现阶段木马病毒常用的隐身术和穿透防火墙方法进行简单的描述,并给出相应的处理方法,以帮助需要的读者提高对木马病毒的防范能力。
一、修改木马程序特征码
通过程序特征码查杀木马的杀毒软件在获得一个木马样本时,就会抽取木马程序当中的某一段或几段来作为查杀它的特征码,然后放入到病毒库中。这样,当用户使用杀毒软件查杀木马时,杀毒软件就是通过分析用户系统中的各种文件的特征码来与病毒库中的各种特征码进行比对,当发现了相似的就认为是某种木马并查杀。现在特征码查杀技术有文件特征码和内存特征码查杀这两种方式。修改木马程序的特征码,就是为了躲避通过特征码查杀的杀毒软件的检测,这样就等同于在杀毒软件面前隐身了。
现在,互联网上已经存在有许多可以用来提取程序特征码的软件,例如MYCCL。要修改某个木马的特征码,可以通过MYCCL不断地提取它的特征码,然后用要躲过的杀毒软件来查杀,直到这些杀毒软件不能检测到它就是一个某个木马为止。然后,再通过一些二进制提取和编辑工具(例如Uedit32),对这个木马中发现了的特征码段进行修改,就可以在这些杀毒软件面前隐身了。有的时候,对于某些杀毒软件,例如诺顿杀毒软件,甚至只要修改了木马的PE头就可以不会被检测到。而修改程序的PE头,可以通过Peditor或YC保护专家就可以做到。因此,特征码修改是现在木马用来躲避检测的常用方法之一。但是,要成功修改木马的特征码而不损坏它的功能,也是需要一定的汇编技术的,并不是一般的攻击者就可以完成的任务。
由于修改特征码需要一定的汇编技术,因此,对于哪些已经修改过过后再放到互联网上给其它攻击都利用的木马,杀毒软件一般也会对过同样的方法重新得到它的特征码。但是对于攻击者自己修改了特征码的木马,要查杀它还是有一定的难度的。不过也不要太担心,因为现在一些已经使用启发式杀毒的杀毒软件和使用主动防御方法的安全软件,还是可以检测到这种方式的木马攻击的。其中比较好的就是Mcafee Internet Security Suite v2008。只是,其前提条件是这些安全软件在木马运行后仍然能够正常运行。
二、木马加壳
给程序加壳,包括加密壳和压缩壳两种。程序一旦被加壳保护后,如果不使用与此相应的脱壳软件进行脱壳处理,一些反汇编程序是不能正确读取到其真正的代码的。这样,就能保护程序不会被破解。同样,木马程序一旦也经过了加壳保护,杀毒软件如果不具有给程序脱壳功能,那么也就不可能识别出它就是木马的,也就是说达到了木马隐身的目的。
如今,通过Aspack或UPX给木马加上壳是非常容易的,例如灰鸽子远程控制软件本身就具有UPX加壳功能。但是,这些常见的加壳软件的加壳方式已经被杀毒软件研究透了,加上一些杀毒软件(例如卡巴斯基)已经具有脱常见壳的功能。因此,一此攻击者是会通过使用一些不常用的加壳软件来对木马加壳处理的。这些不常见的加壳软件,一般都是出现在一些国外的安全类网站当中,其中比较常用的有Private exe Protector软件,它原本是一个非常好用的程序保护软件,但同样也可以用来保护木马。而且,对木马进行加壳,往往还会加多重壳,以进一步增加被识别出来的难度,但加多重壳要比加单一的壳要复杂得多。只是,程序加壳只是对木马的程序文件进行了保护而已,且有时加壳会损坏木马的一些功能,而且,单独使用加壳保护木马是达不到理想的保护效果的。因此,攻击者往往在对木马加壳保护之前,还会对它使用如程序加密之类的处理工作的。
正如上面所说一样,对木马进行加壳保护,只对木马文件有效,对于已经加载到内存中的木马程序段,由于木马在运行时已经自行脱壳处理了,也就失去了保护作用,此时就可以通过对内存检测的方式来查杀。现在已经有许多杀毒软件已经具有了内存查杀的功能,例如瑞星和EWIDO等。但是,一些木马的程序在加载到内存之前,会先被它的壳所控制,而这些壳会通过一些手段来终止用户系统中所运行的安全软件的进程,然后再完全将木马程序加载到内存中运行,这样就能躲避被内存查杀的危险。此时,就只能靠用户自己使用一些脱壳软件来对系统中可疑的文件进行查壳和脱壳处理后再查杀了。PEID和PESCAN是两个常用的用来查看程序加壳情况的软件,对于普通的用户,使用超级巡警虚拟自动脱壳机就能够很好地解决这些问题。同样,使用主动防御功能的安全软件也可以检测到这种类型的木马。
(本文不涉密)
责任编辑:
上一篇:触目惊心的事实 网上银行犯罪现状