杀毒软件的工作原理烟台大学网络中心万红波1.杀毒软件的基本原理杀毒软件就是一个信息分析的系统,它监控所有的数据流动,当它发现某些信息被感染后,就会清除其中的病毒。内存-硬盘网络-内存网络-硬盘信息的分析(或扫描)方式取决于其来源,杀毒软件在监控光驱、电子邮件或局域网间数据移动时工作方式是不同的。2.杀毒软件的监控位置内存监控:当发现内存中存在病毒的时候,就会主动报警;监控所有进程;监控读取到内存中的文件;监控读取到内存的网络数据;文件监控:当发现写到磁盘上的文件中存在病毒,或者是被病毒感染,就会主动报警;X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*3.杀毒软件的基本功能防范病毒:指根据系统特性,采取相应的系统安全措施预防病毒侵入计算机。查找病毒-指对于确定的环境,能够准确地报出病毒名称,该环境包括,内存、文件、引导区(含主导区)、网络等。清除病毒-指根据不同类型病毒对感染对象的修改,并按照病毒的感染特性所进行的恢复。该恢复过程不能破坏未被病毒修改的内容。感染对象包括:内存、引导区(含主引导区)、可执行文件、文档文件、网络等。4.核心模块-病毒扫描引擎特征码扫描:将扫描信息与病毒数据库(即所谓的“病毒特征库”)进行对照,如果信息与其中的任何一个病毒特征符合,杀毒软件就会判断此文件被病毒感染。启发式扫描:通过分析信息的行为并将其与一个危险行为样式库进行对照以判别信息的危险性。4.1特征码识别法-机制杀毒软件在进行查杀的时候,会挑选文件内部的一段或者几段代码来作为他识别病毒的方式,这种代码就叫做病毒的特征码;在病毒样本中,抽取特征代码;抽取的代码比较特殊,不大可能与普通正常程序代码吻合;抽取的代码要有适当长度,一方面维持特征代码的唯一性,另一方面保证病毒扫描时候不要有太大的空间与时间的开销。4.1特征码识别法-特征码文件特征码:对付病毒在文件中的存在方式;单一文件特征码复合文件特征码:通过多处特征进行判断;内存特征码:对付病毒在内存中的存在方式;单一内存特征码复合内存特征码4.1特征码识别法-缺点采用病毒特征代码法的检测工具,面对不断出现的新病毒,必须不断更新病毒库的版本,否则检测工具便会老化,逐渐失去实用价值;病毒特征代码法对从未见过的新病毒,无法知道其特征代码,因而无法去检测新病毒;病毒特征码如果没有经过充分的检验,可能会出现误报,数据误删,系统破坏,给用户带来麻烦;4.1特征码识别法-优点速度快,配备高性能的扫描引擎;准确率相对比较高,误杀操作相对较少;很少需要用户参与;4.2全盘扫描-文件校验和法对文件进行扫描后,可以将正常文件的内容,计算其校验和,将该校验和写入文件中或写入别的文件中保存。在文件使用过程中,定期地或每次使用文件前,检查文件现在内容算出的校验和与原来保存的校验和是否一致,因而可以发现文件是否感染病毒。4.2全盘扫描-文件校验和法对于不常修改的文件(如可执行程序,系统DLL等),可以加快病毒的扫描速度;既可发现已知病毒又可发现未知病毒;系统文件扫描sfc/scannow4.3进程行为监测法-机制通过对病毒多年的观察、研究,有一些行为是病毒的共同行为,而且比较特殊,在正常程序中,这些行为比较罕见。当程序运行时,监视其进程的各种行为,如果发现了病毒行为,立即报警。4.3进程行为监测法1.占有INT13H引导型病毒占据INT13H功能,在其中放置病毒所需的代码。2.改DOS系统为数据区的内存总量病毒常驻内存后,为了防止DOS系统将其覆盖,必须修改系统内存总量。3.对COM、EXE等可执行程序文件做写入动作病毒要感染,必须写COM、EXE文件。4.病毒程序与宿主程序的切换染毒程序运行中,先运行病毒,而后执行宿主程序;在两者切换时,有许多特征行为。5.加载驱动,截获系统函数调用(HOOK程序)4.3进程行为监测法-优缺点行为监测法的长处:可发现未知病毒、可相当准确地预报未知的多数病毒;行为监测法的短处:可能误报警、不能识别病毒名称、有一定实现难度、需要更多的用户参与判断;5.主动防御技术主动防御并不需要病毒特征码支持,只要杀毒软件能分析并扫描到目标程序的行为,并根据预先设定的规则,判定是否应该进行清除操作。5.主动防御技术5.主动防御技术主动防御本来想领先于病毒,让杀毒软件自己变成安全工程师来分析病毒,从而达到以不变应万变的境界。但是,计算机的智能总是在一系列的规则下诞生,而普通用户的技术水平达不到专业分析病毒的水平,两者之间的博弈将主动防御推上了一个尴尬境地。6.杀毒软件的内幕“马后炮”与“发病毒财”病毒数量越来越多,杀毒软件效率变得很低.更因为病毒呈现趋利性、定制化窃取财产,很多病毒在“作案”后都未被发现。杀毒软件年销量却高达千万套,用户付钱买正版杀毒软件,却不能受保护。6.杀毒软件的内幕“杀毒软件末路”与“升级热潮”随着未来病毒数量呈直线增长的趋势越来越明显,有一种很有可能出现的情况是,在杀毒软件尚未制服病毒之前,计算机内存已经宣布告罄.只是把最近三年新出现的病毒数量相加,杀毒软件病毒库内的病毒种类就将超过3500万种.保守计算,它所需要的计算机硬盘空间约为1.75G.在目前PC的32位寻址限制下,内存最大只能有4G,一般而言其中2G还得分配给系统内核使用,应用程序只能占用另外2G.因此,如果杀毒软件一开机即占用1.75G内存,只能剩下250M内存6.杀毒软件的内幕从计算机科学的角度出发,现有的杀毒软件技术已经走到尽头,这就像当年处理器频率的路线走到尽头用户只看到杀毒厂商不断换包装和升级以及频频抛出新的概念,但是所有的杀毒软件,哪怕打着“智能主动防御”的软件,依然主要依靠传统杀毒技术,而并非真正的主动防御(默认设置为关闭).7.杀毒软件的未来厂商们在评选2007年十大病毒的同时,几乎无一例外地自曝,传统杀毒软件技术难以防范新病毒,尤其是具有多变种的病毒。采用特征来辨识病毒的杀毒软件,已无法有效率地处理每天成百上千的新增恶意程序。在不久的将来,杀毒软件可能会变得无用。针对威胁的解决方法和传统观念必须设法改变,才有可能获得新的生存空间。