免杀

王朝百科·作者佚名  2010-01-19
窄屏简体版  字體: |||超大  

一、什么是免杀免杀,也就是反病毒(AntiVirus)与反间谍(AntiSpyware)的对立面,英文为Anti-AntiVirus(简写Virus AV),逐字翻译为“反-反病毒”,我们可以翻译为“反杀毒技术”。单从汉语“免杀”的字面意思来理解,可以将其看为一种能使病毒木马避免被杀毒软件查杀的技术。但是不得不客观地说,免杀技术的涉猎面非常广,您可以由此轻松转型为反汇编、逆向工程甚至系统漏洞的发掘等其他顶级黑客技术,由此可见免杀并不简单。

二、免杀的发展史理论上讲,免杀一定是出现在杀毒软件之后的。而通过杀毒软件的发展史不难知道,第一款杀毒软件Mcafee是于1989年诞生的,也就是说免杀技术至少是在1989年以后才发展起来的。关于世界免杀技术的历史信息现在以无从考证,但从国内来讲,免杀技术的起步可以说是非常晚了。

1989年:第一款杀毒软件Mcafee诞生,标志着反病毒与反查杀时代的到来。

1997年:国内出现了第一个可以自动变异的千面人病毒(Polymorphic/Mutation Virus)。自动变异就是病毒针对杀毒软件的免杀方法之一,但是与现在免杀手法的定义有出入。

2002年7月31日:国内第一个真正意义上的变种病毒“中国黑客II”出现,它除了具有新的特征之外,还实现了“中国黑客”第一代所未实现的功能,可见这个变种也是病毒编写者自己制造的。

2004年:在黑客圈子内部,免杀技术是由IT工程师之家团队在这一年首先公开提出,由于当时还没有CLL等专用免杀工具,所以一般都使用WinHEX逐字节更改。

2005年1月:大名鼎鼎的免杀工具CCL的软件作者tankaiha在杂志上发表了一篇文章,藉此推广了CCL,从此国内黑客界才有了自己第一个专门用于免杀的工具。

2005年2月-7月:通过各方面有意或无意的宣传,黑客爱好者们开始逐渐重视免杀,在类似于华夏论坛等黑客站点的木马专栏下,开始有越来越多的人讨论免杀技术,这为以后木马免杀的火爆埋下根基。

2005年08月:第一个可查的关于免杀的动画由IT工程师之家团队完成,为大量黑客爱好者提供了一个有效的参考,成功地对免杀技术进行了第一次科普。

2005年09月:免杀技术开始真正的火起来。

由上面的信息可见,国内在1997年出现了第一个可以自动变异的千面人病毒,虽然自动变异也可以看为是针对杀毒软件的一种免杀方法,但是由于与现在免杀手法的定义有出入,所以如果将国内免杀技术起源定位1997年会显得比较牵强。

一直等到2002年7月31日,国内第一个真正意义上的变种病毒“中国黑客II”才迟迟出现,因此我们暂且可以将国内免杀技术的起源定位在2002年7月。[1]

三、免杀能做什么您有没有过心爱的工具被杀毒软件KILL的经历;您有没有过辛辛苦苦整理出来的工具集被杀毒软件搞成面目全非而“义愤填膺”的时候;您有没有过好不容易拿到权限,上传的木马却被杀的痛心时刻?免杀,它能做的就是避免这些事情的发生!使杀毒软件成为摆设!当然,除此之外免杀技术带给我们更多的,将是思想的飞跃与技术的成长。

但是要想真正明白免杀能做什么,就要先明白免杀会涉及到什么。对于初学者来说,免杀只会涉及到一点基本的PE文件知识与一些免杀工具的使用,而对于高手来说,免杀甚至会涉及到Ring0(内核层)的程序编译技巧。所以免杀这门课程涵盖面还是相当宽泛的。

四、免杀技术的分类1、开源免杀:指在有病毒、木马源代码的前提下,通过修改源代码进行免杀。

2、手工免杀:指在仅有病毒、木马的可执行文件(.exe)(PE文件)的情况下进行免杀。

五、怎样了解、学习免杀目前国内有关于介绍黑客免杀技术的书籍共有两本《黑客免杀入门》与《精通黑客免杀》。

《黑客免杀入门》为近期出版,但其介绍的内容更加详细,内容讲解更为透彻,更有深度。

《精通黑客免杀》较早出版,因而有关于免杀技术的介绍不是很详细,但其附带的光盘中附带了几百兆的操作录像,是不可多得的宝贵资源。

也可以通过一些专业网站来进行学习,不过要付一些高额学费。 推荐自己进行学习,毕竟有了王朝和Google查什么东西都会变得很方便的。

六、免杀技术概览手工免杀分类:

1.文件免杀和查杀:在不运行程序的前提下使用用杀毒软件进行对该程序的扫描,所得结果。

2.内存的免杀和查杀:判断的方法1>运行后,用杀毒软件的内存查杀功能.

2>用OD载入,用杀毒软件的内存查杀功能.

什么叫特征码:

1.含意:能识别一个程序是一个病毒的一段不大于64字节的特征串.

2.为了减少误报率,一般杀毒软件会提取多段特征串,这时,我们往往改一处就可达到

免杀效果,当然有些杀毒软件要同时改几处才能免杀.(这些方法以后详细介绍)

3.下面用一个示意图来具体来了解一下特征码的具体概念

特征码的定位与原理:

1.特征码的查找方法:文件中的特征码被我们填入的数据(比如0)替换了,那杀毒软

件就不会报警,以此确定特征码的位置

2.特征码定位器的工作原理:原文件中部分字节替换为0,然后生成新文件,再根据杀

毒软件来检测这些文件的结果判断特征码的位置

认识特征码定位与修改的工具:

1.CCL(特征码定位器,由于杀软的升级,现已过时)

2.MYCCL(特征码定位器,由程序员Tanknight在CCL的基础上改进)

3.OllyDbg (特征码的修改,可用于反汇编)

4.C32ASM(特征码的修改,也可用于反汇编)

5.OC(用于计算从文件偏移地址到内存地址的小工具)

6.UltaEdit-32(十六进制编辑器,用于特征码的手工准确定位或修改)

特征码修改方法:

特征码修改包括文件特征码修改和内存特征码修改,因为这二种特征码的修改方法

是通用的。所以就对目前流行的特征码修改方法作个总节。

方法一:直接修改特征码的十六进制法

1.修改方法:把特征码所对应的十六进制改成数字差1或差不多的十六进制.

2.适用范围:一定要精确定位特征码所对应的十六进制,修改后一定要测试一下文件能

否正常使用.

方法二:修改字符串大小写法

1.修改方法:把特征码所对应的内容是字符串的,只要把大小字互换一下就可以了.

2.适用范围:特征码所对应的内容必需是字符串,否则不能成功.

方法三:等价替换法

1.修改方法:把特征码所对应的汇编指令命令中替换成功能类拟的指令.

2.适用范围:特征码中必需有可以替换的汇编指令.比如JE,JNE 换成JMP等.

如果对汇编不懂的偏移可以去查看8080汇编手册.

方法四:指令顺序调换法

1.修改方法:把具有特征码的代码顺序互换一下.

2.适用范围:具有一定的局限性,代码互换后必须不能影响程序的正常执行

方法五:通用跳转法

1.修改方法:把特征码移到零区域(指代码的空隙处)执行后,使用jmp指令无条件调回原代码处继续执行下一条指令

2.适用范围:通用的改法,建议大家要掌握这种改法.

木马免杀的综合修改方法:

文件免杀方法:

1.加冷门壳

举例来说,如果说程序是一张烙饼,那壳就是包装袋,可以让你发现不了包装袋里的东西是什么。比较常见的壳一般容易被杀毒软件识别,所以加壳有时候会使用到生僻壳,就是不常用的壳。现在去买口香糖你会发现至少有两层包装,所以壳也可以加多重壳,让杀毒软件看不懂。如果你看到一个袋子上面写着干燥剂、有毒之类的字你也许就不会对他感兴趣了吧,这就是伪装壳,把一种壳伪装成其他壳,干扰杀毒软件正常的检测。

2.加花指令

加花是病毒免杀常用的手段,加花的原理就是通过添加加花指令(一些垃圾指令,类型加1减1之类的无用语句)让杀毒软件检测不到特征码,干扰杀毒软件正常的检测。加花以后,一些杀毒软件就检测不出来了,但是有些比较强的杀毒软件,像江民杀毒软件,病毒还是会被杀的。这可以算是“免杀”技术中最初级的阶段。

3.改程序入口点

4.改木马文件特征码的5种常用方法(参见“修改内存特征码”)

5.还有其它的几种免杀修改技巧

修改内存特征码:

1.直接修改特征码的十六进制法

2.修改字符串大小写法

3.等价替换法

4.指令顺序调换法

5.通用跳转法

小结:免杀在某种程度上可以说是杀毒软件的对立面,这种技术随着杀毒软件的升级而升级,

从最初的表面查杀到现在的木马行为防御(瑞星),文件实时防毒(金山)等等,

免杀技术都将这些绕过,我们可以看到,杀软每增加一个新功能,免杀新技术就应运而生

用一句古语说,免杀技术是与杀毒软件相生相克的。

学习免杀,你将领略到汇编与反汇编的快乐天堂!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航