杀毒软件

杀毒软件(英語:antivirus software)使用於偵測、移除電腦病毒電腦蠕蟲、和特洛伊木馬程式[1]。防毒軟體通常含有即時程序監控识别、惡意程式掃描和清除和自動更新病毒資料庫等功能,有的防毒軟體附加損害恢復等功能,是電腦防禦系統(包含防毒軟體,防火牆特洛伊木馬程式和其他惡意軟體的防護及刪除程序,入侵检测系统等)的重要組成。[2]

「杀毒软件」的各地常用名稱
中国大陸杀毒软件
臺灣防毒軟體
港澳防毒軟件

原理

防毒軟體所賦予的任務是隨時監控電腦程式的舉動、及掃瞄系統是否含有病毒等惡意程式。部分防毒軟體可經由作業系統開機後隨常駐程式啟動。防毒軟體對於即時監控的技術不盡相同。有的防毒軟體,會利用部分空間,使正在進行的程序特徵與病毒資料庫比較,以判斷是否為惡意程式。另一些防毒軟體會利用一些空間,模擬系統或使用者所允許動作,使受測程序執行內部程式碼的要求,根據程序的動作即可判斷是否為病毒。

而掃描硬碟的方式,則和上面提到的即時監控的第一種執行程序一樣,只是在這裡,防毒軟體會根據使用者的需求(掃描的定義範圍)做一次檢查。

另外,防毒軟體更涉及更多掃描技術:

  • 掃描壓縮檔技術:即是對壓縮檔案和封裝文件作分析檢查的技術。
  • 程序竄改防護:即是避免惡意程式藉由刪除防毒偵測程序而大肆破壞電腦。
  • 修復技術:即是對惡意程式所損壞的檔案進行還原
  • 急救盘杀毒:利用空白U盘制作急救启动盘,来检测电脑病毒。
  • 智能扫描:扫描最常用的磁盘,系统关键位置,耗时较短。
  • 全盘扫描:扫描电脑全部磁盘,耗时较长。
  • 勒索软件防护:保护电脑中的文件不被黑客恶意加密。
  • 开机扫描:当电脑开机时自动进行扫描,可以扫描压缩文档和可能不需要的程序。

杀毒软件就是一个信息分析的系统,它监控所有的数据流动(包括:内存-硬盘网络-内存网络-硬盘),当它发现某些信息被感染后,就会清除其中的病毒。信息的分析(或扫描)方式取决于其来源,杀毒软件在监控光驱、电子邮件或局域网间数据移动时工作方式是不同的。

杀毒软件的监控位置:

  • 内存监控:当发现内存中存在病毒的时候,就会主动报警;监控所有进程;监控读取到内存中的文件;监控读取到内存的网络数据。
  • 檔案监控:当发现写到磁盘上的文件中存在病毒,或者是被病毒感染,就会主动报警。
  • 邮件监控:当发现电子邮件的附件存在病毒时进行拦截。
  • 网页防护:阻止网络攻击和不安全下载。
  • 行为防护:提醒用户可疑的应用程序行为。

基本功能

  • 防范病毒:指根据系统特性,采取相应的系统安全措施预防病毒侵入计算机。
  • 查找病毒:指对于确定的环境,能够准确地报出病毒名称,该环境包括,内存、文件、引导区(含主导区)、网络等。
  • 清除病毒:指根据不同类型病毒对感染对象的修改,并按照病毒的感染特性所进行的恢复。该恢复过程不能破坏未被病毒修改的内容。感染对象包括:内存、引导区(含主引导区)、可执行文件、文档文件、网络等。

核心模块:病毒扫描引擎

特征码扫描

  • 机制:将扫描信息与病毒数据库(即所谓的“病毒特征库”)进行对照,如果信息与其中的任何一个病毒特征符合,杀毒软件就会判断此文件被病毒感染。杀毒软件在进行查杀的时候,会挑选文件内部的一段或者几段代码来作为他识别病毒的方式,这种代码就叫做病毒的特征码;在病毒样本中,抽取特征代码;抽取的代码比较特殊,不大可能与普通正常程序代码吻合;抽取的代码要有适当长度,一方面维持特征代码的唯一性,另一方面保证病毒扫描时候不要有太大的空间与时间的开销。
  • 特征码类别:1.文件特征码:对付病毒在文件中的存在方式:单一文件特征码、复合文件特征码(通过多处特征进行判断);2.内存特征码:对付病毒在内存中的存在方式:单一内存特征码、复合内存特征码
  • 优点:速度快,配备高性能的扫描引擎;准确率相对比较高,误杀操作相对较少;很少需要用户参与。
  • 缺点:采用病毒特征代码法的检测工具,面对不断出现的新病毒,必须不断更新病毒库的版本,否则检测工具便会老化,逐渐失去实用价值;病毒特征代码法对从未见过的新病毒,无法知道其特征代码,因而无法去检测新病毒;病毒特征码如果没有经过充分的检验,可能会出现误报,数据误删,系统破坏,给用户带来麻烦。

文件校验和法

对文件进行扫描后,可以将正常文件的内容,计算其校验和,将该校验和写入文件中或写入别的文件中保存;在文件使用过程中,定期地或每次使用文件前,检查文件现在内容算出的校验和与原来保存的校验和是否一致,因而可以发现文件是否感染病毒。

进程行为监测法(沙盒模式)

  • 机制:通过对病毒多年的观察、研究,有一些行为是病毒的共同行为,而且比较特殊,在正常程序中,这些行为比较罕见。当程序运行时,监视其进程的各种行为,如果发现了病毒行为,立即报警。
  • 优缺点:1.优点:可发现未知病毒、可相当准确地预报未知的多数病毒; 2.缺点:可能误报警、不能识别病毒名称、有一定实现难度、需要更多的用户参与判断;

主动防御技术

主动防御并不需要病毒特征码支持,只要杀毒软件能分析并扫描到目标程序的行为,并根据预先设定的规则,判定是否应该进行清除操作 主动防御本来想领先于病毒,让杀毒软件自己变成安全工程师来分析病毒,从而达到以不变应万变的境界。但是,计算机的智能总是在一系列的规则下诞生,而普通用户的技术水平达不到专业分析病毒的水平,两者之间的博弈将主动防御推上一个尴尬境地。

机器学习识别技术

机器学习识别技术既可以做静态样本的二进制分析,又可以运用在沙箱动态行为分析当中,是为内容/行为+算法模式。伴随着深度学习的急速发展,各家厂商也开始尝试运用深度学习技术来识别病毒特征,如瀚思科技的基于深度学习的二进制恶意样本检测页面存档备份,存于互联网档案馆

EICAR防毒測試檔案

EICAR防毒測試檔案是歐洲反電腦病毒協會EICAR)和電腦安全公司共同推出的用於測試病毒掃描引擎的測試檔案。它不會危害電腦的程序,而其特徵碼已被各家電腦安全公司所收錄。

防毒軟體評比

參見

参考文献

  1. ^ Microsoft. 更新防毒軟體降低中毒風險. Microsoft. 2004-07-30 [2010-12-22]. (原始内容存档于2019-08-12) (中文(香港)). 
  2. ^ Henry, Alan. The Difference Between Antivirus and Anti-Malware (and Which to Use). August 21, 2013. (原始内容存档于November 22, 2013). 
  3. ^ 3.0 3.1 諸葛PP. 防毒軟體年終大考,看VB100、AV Comparative怎麼判. T客邦. 2010-12-18 [2010-12-22]. (原始内容存档于2011-08-10) (中文(香港)). 歲末年終之際,二家知名的專業防毒評測機構VB100與AV Comparative終於公佈最新的評測名單,為大大小小超過20家的免費與付費防毒軟體做一次總體檢。 

外部連結

線上掃描分析