病毒的侵入必將對系統資源構成威脅,即使是良性病毒,至少也要占用少量的系統空間,影響系統的正常運行。特別是通過網絡傳播的計算機病毒,能在很短的時間內使整個計算機網絡處於癱瘓狀態,從而造成巨大的損失。因此,防止病毒的侵入要比病毒入侵後再去發現和消除它更重要。因為沒有病毒的入侵,也就沒有病毒的傳播,更不能需要消除病毒。另一方面,現有病毒已有萬種,並且還在不斷增多。而消毒是被動的,只有在發現病毒後,對其剖析、選取特征串,才能設計出該“已知病毒的殺毒軟件。它不能檢測和消除研制者未曾見過的“未知病毒,甚至對已知病毒的特征串稍作改動,就可能無法檢測出這種變種病毒或者在殺毒時出錯。這樣,發現病毒時,可能該病毒已經流行起來或者已經造成破壞。
防毒是主動的,主要表現在監測行為的動態性和防范方法的廣譜性。防毒是從病毒的寄生對象、內存駐留方式、傳染途徑等病毒行為入手進行動態監測和防范。一方面防止外界病毒向機內傳染,另一方面抑制現有病毒向外傳染。防毒是以病毒的機理為基礎,防范的目標不僅是已知的病毒,而是以現有的病毒機理設計的一類病毒,包括按現有機理設計的未來新病毒或變種病毒。
防毒的重點是控制病毒的傳染。防毒的關鍵是對病毒行為的判斷,如何有效辨別病毒行為與正常程序行為是防毒成功與否的重要因素。防毒的難點就在於如何快速、准確、有效地識別病毒行為,處理不當會帶來“假報警,就像“狼來的的寓言一樣,頻頻虛假報警的後果是報警不再引起用戶的警惕。另外,防毒對於不按現有病毒機理設計的新病毒也可能無能為力,如在DIR2病毒出現之前推出的防病毒軟件或防病毒卡,幾乎沒有一個能控制該病毒的,原因就在於該病毒的機理已經超出當時的防病毒軟件和防病毒卡所考慮的范圍。如今,該病毒的機理已被人們所認識,所以新推出的防病毒軟件和防病毒卡,幾乎沒有一個不能控制該病毒及其變種病毒的。
消毒是被動的,只有發現病毒後,對其剖析、選取特征串,才能設計出該“已知病毒的消毒軟件,但發現新病毒或變種病毒時,又要對其剖析、選取特征串,才能設計出新的消毒軟件,它不能檢測和消除研制者未曾見過的“未知病毒,甚至對已知病毒的特征串稍作改動,就可能無法檢測了這種變種病毒或者在殺毒時會出錯。一方面,發現病毒時,可能該病毒已經流行起來或者已經造成破壞。另一方面,就是管理上的問題,許多人並不是警鐘長鳴,也不可能隨時隨地去執行殺毒軟件,只有發現病毒問題時,才用工具檢查,這就難免一時疏忽而帶來災難。如幾乎沒有一個消毒軟件不能消除“黑色星期五,但該病毒卻仍在流行、發作。
被動消除病毒只能治標,只有主動預防病毒才是防治病毒的根本。因此,“預防勝於治療。原則上說,計算機病毒防治應采取“主動預防為主,被動處理結合的策略,偏廢那一方面都是不應該的。