免杀学习

来源:互联网 发布:淘宝网妈妈装特价 编辑:程序博客网 时间:2024/04/30 09:20

杀毒软件查杀原理

要进行免杀,首先要知道杀毒软件是怎样把你的程序鉴定为病毒,才能够找到正确的方法进行免杀工作。杀毒软件一般根据下面几种方法进行查杀:

1.      特征码:

杀毒软件通过提取已有病毒中的一些特征二进制码,并将该特征码保存在病毒库中,查杀时再将其与被查杀程序一一比较,如果找到这些特征码,被查杀程序将被鉴定为病毒。杀软保存的特征码一般包括两部分:一段二进制码和这段特征码所在偏移地址。

根据这种查杀原理,我们的免杀工作就很清晰了,只要将我们程序中被鉴定为病毒的特征码部分找出来,修改其二进制码或转移位置就行了(前提是修改后的程序依然可运行且逻辑正确)。

2.      行为监测:

杀毒软件通过监控程序的API调用来解读程序的行为,并进行加权处理,当加权值达到一定数值后,被监测程序将被报为病毒。比如一个下载程序,是不会被报为病毒的,但是如果这个程序的行为是下载另外一个程序并运行该程序,类似这样的行为组合,杀毒软件就很有可能将其鉴定为病毒了。加权值是指行为及行为组合的可疑指数。

根据这种查杀原理,我们的免杀工作就是如何去隐藏我们的行为了。

3.      软件模拟:

这种方法主要是利用虚拟技术,在虚拟机中模拟程序的运行并监控程序行为,一旦发现可疑行为,就将其报为病毒。这种方法主要弥补行为监控中对付隐蔽行为的不足。(这种方法不是特别了解,不做过多论述)

免杀方法

1.      免杀分类:

1)  内部免杀和外部免杀。

内部免杀指,通过特征码定位后返回到原代码上进行修改

外部免杀指,通过特征码对PE文件进行修改

2)文件免杀和内存免杀

   文件免杀指,文件未被加载入内存运行的免杀

内存免杀指,文件被载入内存运行的免杀

    文件免杀和内存免杀都是基于对PE文件的修改

 

2.      免杀方法

1)  添加数字签名,发现这种方法的文件免杀对金山杀毒软件特别有效

2)  添加壳,一般添加偏僻壳,因为杀软要知道所加是什么壳才能够解析压缩过的代码。而一般对壳的识别都是根据EP即入口处的一段特征码来辨别所加的壳类型,所以我们可以修改这段特征码,来让杀软不知道我们所加是什么壳,也就无法解析我们的代码来。通常采用加花或者是以后等简单修改就行。

3)  等价替换

4)  颠倒代码顺序

5)  通用跳转

6)  加空格免杀输入表文件名

7)  移动ASCLL特征码,或修改其大小写

8)  移动输出表函数特征码

9)  利用异或加密或者重写入

10)  移动PE文件头

附加信息

1.      什么是启发式扫描:就是给各种威胁计算机安全的代码进行加权,当杀毒软件对某个文件的加权值达到60分后,就将该文件判定为病毒文件。

2.      什么是隐藏特征码(干扰码):一般分成两部分:一个是隐蔽的特征码,另外一个是显式(普通)特征码。当杀软检测到有隐式特征码时,就会启动对显式特征码的扫面,如果还发现显式特征码就报为病毒。隐式特征码一般都是比较容易修改的地方,而显式特征码一般都在难被修改或是不能被修改的地方,所以如果定位到难以修改的特征码,可以先保留该处特征码试试能否定位出隐式特征码。

原创粉丝点击