ClamAV

Clam AntiVirus（常簡稱為ClamAV）是一款自由且開放原始碼的殺毒軟體，其軟體程式與病毒碼的更新皆由開源社群共同維護發佈。目前 ClamAV 主要被應用於由 Linux、FreeBSD 等類Unix系統架設的郵件伺服器上，以提供電子郵件的病毒掃描服務。

ClamAV 本身在命令行界面下運作，但社群也開發了許多提供圖形使用者界面的前端工具（GUI front-end）。此外，得益於其開放原始碼的特性，ClamAV 在 Windows 與 macOS 等作業系統平台上都有相應的移植版本。

## 功能

ClamAV 的工具集包含命令列掃描器、資料庫自動更新器，以及基於共享函式庫、可擴展並支援多執行緒的防毒引擎守護進程。

該應用程式亦內建支援了針對郵件過濾的 Milter 介面以及手動執行掃描的功能。

它支援解析的檔案格式包括：

- ZIP、RAR、tar、gzip、bzip2、OLE2、CAB、CHM、BinHex、SIS 格式
- 大部分的電子郵件格式
- 經 UPX、FSG、Petite、NsPack、WWpack32、MEW、Upack 進行數據壓縮，或經 SUE、Y0da Cryptor 進行代碼混淆的可執行與可鏈接（ELF）和可移植可執行（PE）格式
- Office Open XML、HTML、RTF 和 PDF 文檔格式

ClamAV 的病毒資料庫更新十分頻繁（至少每4小時更新一次）。截至2014年12月25日，其每日更新資料庫（daily update Virus DB）版本號為19837，已包含至少370萬個病毒特徵碼；隨著惡意軟體的增長，近年來其特徵庫規模仍在持續大幅擴充。

## 效果

在早期的防毒軟體評測中，ClamAV 曾與其他商業殺毒軟體進行過對比測試。Shadowserver基金會曾持續針對各大防毒軟體進行每日測試。2011年，Shadowserver 基金會使用了約兩千五百萬個惡意軟體樣本進行測試，結果顯示 ClamAV 的偵測率達到了 78.27％，在19項產品中排名第9，其表現優於部分知名的商業防毒產品。

在 AV-Test 於 2008 年進行的評測中，ClamAV 正確識別了約一百萬個樣本中的 77.3%，其各項指標評級為：

- 手動掃描：很差（very poor）
- 偽陽誤判：差（poor）
- 即時掃描：差（poor）
- 反應時間：很好（very good）
- rootkits：很差（very poor）

在 2011 年 6 月至 12 月間 Shadowserver 基金會的進一步評測中，ClamAV 的 Windows 版本偵測率超過 75.45％，在 40 項產品中排名第六，僅次於AhnLab（Windows）、Avira（Linux）、Eset（Windows）、Avast（Windows）和 Bitdefender（Linux），而 ClamAV 的 Linux 版則排名第十。

## 非官方資料庫

ClamAV 的防毒引擎可用來偵測多種不同的檔案類型，尤其對於某些網路釣魚郵件具有較好的防護效果。然而，相較於傳統的病毒特徵碼檢測，其預設啟發式掃描的誤判率可能會稍高一些。

Sanesecurity 是提供 ClamAV 非官方病毒資料庫的知名組織之一。他們從 CRDF 威脅中心、Porcupine、Julian Field、MalwarePatrol 等其他資安機構取得資料，進行分類並建立成自訂的特徵資料庫。此外，SecuriteInfo.com 也為 ClamAV 提供額外的病毒特徵碼補充。

這些非官方資料庫主要被系統管理員用於加強郵件過濾。為了降低誤擋正常郵件的風險，建議在使用這些資料庫時配合「垃圾郵件評分機制」來綜合判斷，而非直接封鎖被標記為「受感染」的郵件。

## 各平台版本

### Linux

- ClamTk - 使用 gtk2-Perl 開發的 ClamAV 圖形化前端。
- KlamAV - 早期為 KDE 桌面環境開發的 ClamAV 前端（已停止維護）。
- Copfilter - 內建 ClamAV 防護功能的 IPCop 擴充套件。

### macOS

- Mac OS X Server 10.4 - 蘋果早期伺服器系統曾內建 ClamAV。
- ClamXAV - 採用 ClamAV 作為掃描引擎的 macOS 防毒軟體（早期為免費軟體，自 2015 年起已轉為商業付費軟體）。
- Tiger Cache Cleaner - 內附 ClamAV 功能的系統維護工具。

### Windows

- ClamAV for Windows - 官方現已直接提供適用於 Windows 平台的二進位執行檔。
- ClamWin - ClamAV 的 Windows 開源移植版，支援掃描 Microsoft Outlook、Internet Explorer 與 Mozilla Firefox 下載的檔案，但其原生不具備即時掃描能力。
- Spyware Terminator - 一款免費的電腦安全軟體，內部整合了 ClamAV 引擎。
- Moon Secure Antivirus - 早期的一款開源防毒軟體，曾基於 ClamAV 提供即時防護功能（realtime protection，已停止維護）。
- Immunet - 曾是一套基於雲端的免費防毒軟體，結合了 ClamAV 引擎，後被思科收購，已於 2024 年 1 月 1 日正式停止營運。
- CS Antivirus
- Clam Sentinel - 一款免費軟體，常駐在系統匣（通知區域）中，透過監控檔案系統的變化並呼叫 ClamWin 進行掃描，從而為 ClamWin 提供即時防護能力。它同時支援主動啟發式防護功能，適用於 Windows 98 至 Windows 8 等多種舊版作業系統。

## 即時檔案掃描

在早期版本中，ClamAV 核心程式原生並不包含即時掃描功能（即在檔案被讀取或寫入時自動觸發掃描），依賴第三方應用程式（如支援 FUSE 的 ClamFS、Linux 下的 DazukoFS、Windows 下的 Clam Sentinel 和 Winpooch 等）來實現即時檢查。

不過，自 0.102.0 版本起，ClamAV 官方為 Linux 系統引入了名為 `clamonacc` 的常駐程式，取代了舊有的 `clamdscan` 即時監控方案，使得 ClamAV 得以在 Linux 平台上原生支援即時掃描（On-Access Scanning）防護。

## 專利訴訟

2008年，安全廠商 Barracuda Networks 因將 ClamAV 作為其安全套裝的一部分進行散佈，遭到了趨勢科技的起訴。趨勢科技宣稱 Barracuda Networks 使用 ClamAV 作為網關病毒過濾的行為侵犯了他們的第 5,623,600 號軟體專利，此舉引發了自由軟體社群的強烈抗議，並呼籲大眾抵制趨勢科技。

2008年7月，Barracuda Networks 利用從 IBM 獲得的專利授權提起反訴。最終於2011年5月19日，美國專利及商標局（USPTO）在針對第 5,623,600 號專利的再審查中，做出了終審駁回趨勢科技專利聲明的決定。

## 延伸閱讀

- 訪談ClamAV的創始者 - Tomasz Kojm 封存版本

## 基本資料

- 日語原文：Clam AntiVirus
- 作者：Tomasz Kojm
- 開發者：思科系統Cisco Talos
- 發行日期：2002年5月8日
- 程式語言：C，C++
- 作業系統：類Unix系統、Microsoft Windows
- 類型：殺毒軟體
- 許可協議：GPLv2