檢測硬盤病毒要求內存無毒,因某些病毒在內存中會欺騙檢測者(如 4096 病毒隱藏文件長度變化,DIR2 病毒隱藏代碼,巴基斯坦智囊隱藏引導區)。必須從原始、未感染 DOS 系統軟盤**冷啟動**(上電啟動,非熱啟動),且 DOS 版本號 ≥ 硬盤 DOS 版本。若硬盤用 DM、Stacker 等管理軟件,啟動盤必須包含相應驅動並寫入 config.sys,否則無法訪問全部分區,病毒漏檢。
原理相同,方法有差別,主要四種:
掃描特定特徵字節串,發現即判定病毒。國外稱此類軟件為「Scanner」。由病毒代碼庫(經挑選的特徵串)與掃描程序組成。特徵串選擇關鍵:須具代表性、區分變種、避免誤報。支援可變長串(含模糊字節)提高匹配彈性。
用原始備份與被檢測引導扇區/文件比較(打印代碼清單或用 DISKCOMP/COMP/PCTOOLS)。優點:簡單、無需專用軟件、能發現未知新病毒。缺點:無法確認病毒名稱,差異原因需進一步驗證(病毒? 停電? 程序失控? 惡意程序?)。備份必須在無毒環境制作、妥善保管、寫保護。
從病毒體提取極少關鍵特徵字組成特徵字庫。處理字節少、無需串匹配,速度快、誤報低,適合大文件。更關注「程序活性」減少誤報。使用方式同掃描法,需不斷擴充病毒庫。
確認是否含病毒、辨認類型、判定新病毒、剖析結構、提取特徵串/字入庫、制定反病毒方案。需專業知識、Debug/Proview 等工具、專用實驗機(防分析中病毒傳染破壞數據)。分靜態(反彙編清單分析模塊、系統調用、技巧、感染過程逆轉為清除修復、特徵碼選取、防御方案)與動態(內存帶毒動態跟蹤觀察工作原理)。簡單病毒靜態足夠,複雜病毒需靜態動態結合。
總結:比較法適合無專用軟件發現異常;掃描/識別法適合廣大用戶方便快捷;新病毒需結合分析與比較法。綜合運用,讓病毒現形並殲滅。