杀毒软件是怎么辨别病毒的

2024-12-29 22:30:44
推荐回答(5个)
回答1:

杀毒软件是怎么辨别病毒的,杀毒软件原理如下:
反病毒软件的任务是实时监控和扫描磁盘。部分反病毒软件通过在系统添加驱动程序的方式,进驻系统,并且随操作系统启动。大部分的杀毒软件还具有防火墙功能。反病毒软件的实时监控方式因软件而异。有的反病毒软件,是通过在内存里划分一部分空间,将电脑里流过内存的数据与反病毒软件自身所带的病毒库(包含病毒定义)的特征码相比较,以判断是否为病毒。另一些反病毒软件则在所划分到的内存空间里面,虚拟执行系统或用户提交的程序,根据其行为或结果作出判断。
而扫描磁盘的方式,则和上面提到的实时监控的第一种工作方式一样,只是在这里,反病毒软件将会将磁盘上所有的文件(或者用户自定义的扫描范围内的文件)做一次检查。

对于杀毒软件的实时监控,其工作方式因软件而异:
1、有的杀毒软件在内存里划分一部分空间,将计算机中流过内存的数据与杀毒软件自身所带的病毒库(包含病毒定义)的特征码相比较,以判断是否为病毒。
2、有的杀毒软件在所划分到的内存空间里,虚拟执行系统或用户提交的程序,根据其行为或结果作出判断。
3、而扫描磁盘的方式,则和上面提到的实时监控的第一种工作方式一样,只是扫描磁盘时,杀毒软件将会将磁盘上所有的文件(或者用户自定义的扫描范围内的文件)做一次检查。

回答2:

杀毒软件查杀病毒是通过对比病毒特征码方试来辨别病毒的、并不是根据文件名辨别哪个是病毒、

一下是杀毒软件查杀病毒的一些方法:

(1)文件查杀

是把病毒特征码与杀毒软件中的病毒库中的代码来进行比较,如果病毒库中有相同的特征码,就会认为这个是病毒、特征码--通俗一点讲,比如你身上一个特征 它就会认识到这个特征就是你了 。所以,对于这样的查杀模式。只要改变特征码杀毒软件就会不认识了。

(2)内存查杀

其实内存查杀也是通过特征码的,和文件查杀基本上一样,一个区别就是它是通过内存特征码来查杀的。

(3)行为查杀

是通过判断程序的动作来进行定义,如果程序对某个地方进行动作就会被认为是病毒了,

现在许多病毒都通过“加壳”、“加花指令”....等方式来躲避杀毒软件的查杀、

回答3:

       1、计算校验和

       这种方法的特点是简单快速,也是360的杀毒引擎引擎采用的方式。但是采用这种方法,一种特征码只能匹配一个病毒的一个版本,即便病毒的变动很小,也需要重新提取特征码,这造成的后果是会使得特征码库过于庞大,一般用于临时提取特征码(这也是360庞大而缓慢的原因)。所以这种计算校验和的方式不值得一论)

       2、提取特征字符串

       采用这种方式能识别某一类病毒,sbj引擎便是以这种技术为基础的(所以sws安全中心体积比较小)。以目前很流行的filekiler病毒为例,经过我们之前的逆向分析可以知道,病毒最开始会使用"viax"这个字符串来进行解密的操作。因此需要在病毒程序的二进制代码中搜索"viax",相信一般的程序中不会出现"viax"这段字符,因此就可以考虑将这两个字符串或者其中的一个字符串作为filekiller病毒的特征码。
3、提取程序产生的系统调用
这是一种非常新的病毒库引擎杀毒方案,目前只有sbj引擎用于辅助杀毒,sws安全中心在开发sbj引擎时发明了这种方案。这种办法类似于第二种,尽管速度,杀毒准确性在录入合理的情况下轻松碾压其它方式,但是如果不在提取识别码的时候人工审核的话误报率会很高(原因是程序如果进行了非常基本的系统调用那么所有进行这类调用的程序都将成为"病毒"),因此成本高昂,再加上sws安全中心本来就是开源软件,挣不到钱,还不接受捐赠(原来做了个企业版卖钱现在也开了),所以无法维护,还是只能作为辅助使用。
本文参考了 麻省理工学院毕业论文以及博客园上的文章,在此表示感谢。

回答4:

是根据病毒的特征码来识别,如果是根据文件名那玩笑就开大了,所以病毒为了避免被杀毒软件的扫描到就加壳、加花指令来绕过杀毒软件的查杀。

回答5:

病毒会自己改名的
看名字是不可能的
但每款病毒都有他自己的特性
找出病毒的特征代码就能知道病毒
因此有时候杀毒软件会把正常程序当成病毒处理
杀毒软件的好坏也在于他的病毒库是否完整和适合