本篇所提到的防惡意軟體程式大多功能已包含到防毒軟體功能,只要開啟防毒軟體裡的「廣告軟體和其他」選項就可以偵測,請留意開啟後可能會將網管人員使用的工具移除。以下以卡巴斯基端點防護為例

單靠防毒軟體無法提供全面性的保護,也無法在任何時候預防、偵測並移除所有威脅。防毒軟體本質上屬於被動反應型防護,通常是在電腦已遭感染後,才發現惡意軟體。
此外,面對零時差惡意軟體(Zero-day Malware)時,防毒軟體很可能完全偵測不到。就電腦安全與威脅偵測而言,防毒軟體與防惡意軟體程式各自執行不同的任務;簡單來說,兩者所搜尋及移除的惡意威脅類型並不相同。
防毒軟體(Anti-virus Program) 通常使用龐大的特徵資料庫,搭配不同掃描引擎與偵測方法,搜尋具有感染性的惡意程式,包括:
防惡意軟體程式(Anti-malware Program) 通常使用規模較小的資料庫,並著重於下列項目:
這些項目的分類方式不同,通常不屬於傳統病毒、蠕蟲、木馬、Rootkit 或 Bot 等類別。這也是部分防毒軟體不會偵測或移除它們的主要原因。
具備反漏洞利用(Anti-exploit)功能的防毒與防惡意軟體解決方案,可協助防範:
僅使用防毒解決方案並不足以提供適當保護,因為許多惡意軟體與勒索軟體在設計上,就會在加密資料前規避、繞過,甚至停用防毒軟體與其他安全措施,例如The Gentlemen開發出客製化 EDR-Killer 並搭配人工智慧輔助開發,可以停止主流防毒軟體的自我保護,見 ESET 研究:Killing me gently: Inside Gentlemen’s EDR killer framework
惡意軟體開發者的技術持續演進。現代勒索軟體常採用針對性攻擊,並刻意避開一般偵測方法,因此較不容易被防毒或其他資安軟體發現。
勒索軟體開發者可透過下列方式規避防毒軟體:
網路犯罪者也可能使用防毒軟體未必能有效防禦的多種技術,例如:
一旦電腦遭勒索軟體感染,防毒軟體無法替你復原已被加密的檔案,即使那些宣稱擁有可以回溯的廠商,都有可能回溯失敗,或無法偵測加密行為。
部分勒索軟體會對大型檔案採用部分或間歇式加密,但對較小的檔案則執行完整加密流程。
在一般加密模式下,勒索軟體會:
在隱蔽加密模式下,勒索軟體會將「檔案加密」與「檔案重新命名」兩個動作分開執行。由於其檔案輸入/輸出(I/O)行為模式看起來類似正常的系統活動,因此較不容易觸發警報。
即使防毒軟體在第一階段開始時作出反應,到了第二輪處理時,目標資料集可能已經全部遭到加密。
為獲得較完整的保護,應同時使用:
不過,依據程式所使用的掃描引擎、廠商對特定威脅的定義,以及採用的惡意軟體命名標準,兩者在功能與偵測能力上可能有所重疊。
沒有任何單一產品能夠做到 100% 萬無一失。因此,建議搭配其他可信任的安全工具,執行第二意見掃描,以補強原有防毒軟體。通常在企業端可使用如 Emsisoft Emergency Kit 或 Kaspersky Virus Removal Tool 。
防毒與防惡意軟體皆不存在適用於所有人的「一體適用」解決方案,也不存在唯一最好的防惡意軟體。
各資安廠商的實驗室會使用不同的掃描引擎與偵測方法。每套產品都有自己的優點與弱點,並通常混合使用多種技術偵測及移除惡意軟體。使用者可能需要實際測試,才能找出最適合自身需求的產品。
掃描惡意軟體時,應注意不同資安廠商會使用不同的掃描引擎與偵測方法,例如:
因此,不同產品的掃描結果可能不一致。
掃描結果不一致,也可能造成誤判(False Positive)。
多數專家的共識是:若線上檔案分析服務,例如 VirusTotal 或 Hybrid-Analysis,顯示有 90% 以上的掃描結果判定送交的檔案為乾淨檔案,則其餘少數偵測結果可以視為誤判,尤其是在下列情況:
通常是因為安全軟體使用啟發式分析引擎,使其能夠偵測可能存在的新型惡意軟體變種。
此外,各廠商會使用自己的命名慣例來識別不同類型的勒索軟體或惡意軟體。因此,有時很難準確判定實際偵測到的項目,以及威脅或感染的真正性質。
部分廠商也會在名稱後方增加修飾詞或補充資訊,進一步描述惡意軟體類型,而這些名稱可能隨時變更。由於目前沒有統一的命名標準,容易造成一般使用者及協助排除問題的人員混淆。
注意:同時安裝多套防惡意軟體有讓電腦進入藍屏死機(blue screen of death, BSoD)的風險,請自行評估必要性
一般而言,同時安裝多套防惡意軟體,例如 Malwarebytes、SUPERAntiSpyware、Emsisoft Emergency Kit、Zemana AntiMalware 等,通常不會彼此衝突,也不會與防毒軟體發生衝突,但前提是:
- 僅使用其中一套程式提供即時防護。
- 僅作為獨立的隨選掃描工具。
這樣能在不產生多套即時防毒軟體常見衝突,也不影響系統穩定性的情況下,增加整體防護範圍。不同產品採用不同的特徵碼資料庫,也有助於掃描系統時偵測並移除更多威脅。
若同時啟用多套防惡意軟體的即時常駐防護,可能因防護功能重疊而發生衝突。
這類衝突常出現在相似應用程式彼此競爭系統資源,或爭奪某項操作的獨占執行權時。程式也可能將彼此的活動誤判為可疑行為並發出警示,如同防毒軟體那樣。
此外,防惡意軟體程式在掃描或讀取檔案時,防毒軟體也可能偵測到可疑活動。若防毒軟體使用啟發式掃描引擎,不論防惡意軟體正在執行即時掃描或隨選掃描,都可能出現這種情況。
防毒軟體甚至可能將其他程式已移除並放入隔離區的惡意軟體,再次判定為威脅。若在執行下一次安全掃描前未清除隔離資料夾內容,可能造成警示或誤報不斷重複出現,持續顯示已發現威脅。
一般而言,這類衝突多半只是造成使用上的困擾,嚴重程度通常不及同時執行兩套即時防毒軟體所造成的衝突。
重要注意事項
部分資安研究人員建議,不要同時使用多套反漏洞利用應用程式。多套工具同時運作,可能降低返回導向程式設計(Return-oriented Programming,ROP)防護及其他漏洞利用檢查的有效性,反而使系統比只使用一套工具時更容易受到攻擊。
在某些情況下,多套工具可能彼此干擾並造成程式當機。
ROP(Return-oriented Programming,返回導向程式設計) 是一種電腦安全漏洞利用技術,可讓攻擊者在系統已啟用不可執行記憶體與程式碼簽章等安全防護的情況下執行程式碼。參考:[Day8] Stack 攻擊手法 - ROP:靜態連結
ROP 是一種有效的程式碼重複利用攻擊(Code Reuse Attack)。由於它是攻擊者常用的漏洞利用技術之一,而在無法取得原始程式碼的情況下,能夠有效阻止此類攻擊的實務防禦方法相當有限。
ASLR(Address Space Layout Randomization,位址空間配置隨機化) 是一種防範緩衝區溢位攻擊的電腦安全技術。這些安全技術的目的,在於降低漏洞利用攻擊的有效性。
許多進階漏洞利用攻擊會將 ROP 與 ASLR 視為攻擊途徑,用來突破安全防禦並在系統上執行惡意程式碼。例如,攻擊者可能利用這些方法繞過 DEP(Data Execution Prevention,資料執行防止);DEP 原本用於阻止緩衝區溢位及記憶體損毀漏洞利用攻擊。
具備 ROP 與 ASLR 防護能力的工具,例如 Microsoft Enhanced Mitigation Experience Toolkit(EMET),會透過相關技術檢查每次關鍵函式呼叫,以判斷其是否合法,但前提是這些功能已啟用。
因此,使用者在考慮採用任何反漏洞利用或反勒索軟體程式前,都應先了解該產品提供的保護功能。
下列是我唯二推薦的免費掃描及清除工具:
對使用 Microsoft Defender Antivirus 的使用者而言,Microsoft Defender Offline 是另一項可用選擇。
它可在一般作業系統環境之外,也就是 Windows 核心之外執行掃描,因此能針對試圖繞過 Windows Shell 的惡意軟體進行偵測。
Microsoft Defender Offline 可自動執行,也可以直接從 Microsoft Defender Antivirus 中按一下,手動要求執行離線掃描。此功能的運作方式與舊版 Windows Defender Offline 相同,但不需要另外下載獨立版本。
你也可以透過線上病毒掃描,補強原有防毒軟體或取得第二意見,唯一推薦 ESET Online Scanner 病毒掃描工具:
唯一推薦卡巴斯基救援光碟