PAGES
← all tools
◆ Endpoint Security (EDR/XDR)

ClamAV

clamav-1.5.0 open-source

ClamAV is an open source antivirus engine for detecting trojans, viruses, malware, and other malicious threats.

Summary

ClamAV is an open-source antivirus engine, free to use, that scans files for trojans, viruses, and other malware using signature-based detection. It runs as a command-line tool (clamscan) and as a background daemon (clamd) that can be queried over a socket, with packages, Docker images, and installers available for Linux, macOS, and Windows. It's aimed at system administrators and developers who need to build malware scanning into servers, mail gateways, or file-upload pipelines rather than protect a single desktop interactively. It sits in the same endpoint-security space as commercial antivirus engines but distinguishes itself by being open source and embeddable, with a signature-writing format anyone can learn and libclamav APIs for integrating scanning into other software. First committed in 2003, it remains active with 195 contributors, 162 commits in the past year, and a release 51 days ago.

ClamAV is an open source antivirus engine for detecting trojans, viruses, malware, and other malicious threats.

How ClamAV helps

Which files in this directory or upload contain known malware?

scans every file against its signature database and reports the infected ones by name and the exact signature that matched, walking into supported archive formats to check what's inside them

Can a file be trusted before it moves further into a pipeline?

clamd scans it over a socket and returns a clean or infected verdict quickly enough to gate an upload or mail-transfer step without the caller having to shell out to a new process each time

Which specific threat did this file trip, and can I reproduce that later?

reports the matched signature name and, when configured to log it, the file's hash and detected type — enough to hand to a SIEM or build an allowlist of files already known to be clean

Is a document hiding something a plain file listing wouldn't show?

parses inside container formats like Office documents, archives, PDFs, and images, flagging things such as encrypted OLE2 documents that scanners relying on file extensions alone would pass through

Did the file actually get read all the way through, or did something stop the scan short?

the scan summary reports bytes-scanned versus bytes-read, so a mismatch shows a file was truncated, skipped, or only partially inspected

Does this scanning setup meet a FIPS-restricted environment's crypto rules?

running with FIPS-limits mode disables MD5/SHA1 for signature and trust verification and switches the clean-file cache to SHA2-256, so a scan run under that mode is answering whether the deployment itself is FIPS-compliant, not just the files

all 28 features, with the evidence for each →

Languages

Not documented

Features

28 capabilities across 3 capability groups · 3 backed by code, an API document or a real run

Built from ClamAV's releases, docs, README and our own runs. “Seen” marks the month we first spotted a release the vendor didn't date. Group names and tags are our labels.

Compare with peers →

  • ClamAV covers 1 of the 11 endpoint investigation and controls capabilities we track.
  • ClamAV covers 2 of the 8 investigation and response capabilities we track.

What ClamAV offers you

  • Command-line interface6
  • Scheduled jobs1
Security baseline enforcement 2 features Endpoint investigation and controls since 2023
FIPS-compliant operation mode shipped Enables FIPS-compliant modes by disabling MD5/SHA1 for signature verification, restricting specific administrative commands, and using SHA2-256 for internal caches. 1 release · 1 other source · first seen Oct 2025

Shared capability: Security baseline enforcement

Also counts toward: Command-line interface

release

  • Adds FIPS-like crypto hash limits (--fips-limits / FIPSCryptoHashLimits yes / CL_ENGINE_FIPS_LIMITS) to disable MD5 and SHA1 for signature verification and false-positive trust checks. clamav-1.5.0 · Oct 2025 · source · release history

example

  • Enable FIPS-compliant operation in clamd, disabling MD5/SHA1 for signature verification and restricting the SHUTDOWN and RELOAD administrative commands. FIPSCryptoHashLimits yes EnableShutdownCommand no EnableReloadCommand no clamav-1.5.0 · Oct 2025 · source
Database age enforcement shipped Prevents the tool from starting if the virus database is older than a specified threshold. 1 release · 1 other source · first seen May 2023

Shared capability: Security baseline enforcement

release

  • Adds the new ClamD option --fail-if-cvd-older-than and its config key FailIfCvdOlderThan to exit startup if the virus database is too old clamav-1.1.0 · May 2023 · source · release history

example

  • Force ClamD to refuse startup if the virus database is older than 7 days, preventing stale signatures from running. clamd --fail-if-cvd-older-than=7 clamav-1.1.0 · May 2023 · source
Disk and filesystem forensics 1 feature Investigation and response since 2023
UDF partition extraction shipped Adds support for extracting UDF partitions, specifically the Beginning Extended Area Descriptor (BEA01) type. 1 release · first seen Aug 2023

Shared capability: Disk and filesystem forensics

release

  • Adds support for extracting UDF partitions, specifically the Beginning Extended Area Descriptor (BEA01) type. clamav-1.2.0 · Aug 2023 · source · release history
Static malware analysis 1 feature Investigation and response since 2023
VBA extraction callback shipped Allows users to define custom callbacks for handling normalized VBA content extracted from Office documents. 1 release · first seen May 2023

Shared capability: Static malware analysis

release

  • Adds the function cl_engine_set_clcb_vba() to libclamav API to set a callback for normalized VBA extraction from Office documents clamav-1.1.0 · May 2023 · source · release history
Other / not yet classified 24 features Features we have not matched to a capability yet. A suggested match is marked.
Image scanning and fuzzy hash control shipped suggested Provides CLI flags, config options, and library constants to independently control image scanning and fuzzy-hash-based image detection in the scanner and daemon. 4 releases · 3 other sources · first seen Aug 2024

Suggested capability: Threat indicator matching. This is our guess, not confirmed.

release

  • Adds ClamScan options --hash-hint, --log-hash, --hash-alg, --file-type-hint, and --log-file-type for per-file hash pre-supply and post-scan hash/type reporting. clamav-1.5.0 · Oct 2025 · source · release history
  • Adds --scan-image and --scan-image-fuzzy-hash ClamScan flags to independently control image scanning and fuzzy-hash-based image detection. clamav-1.4.0 · Aug 2024 · source · release history
  • Exposes CL_SCAN_PARSE_IMAGE and CL_SCAN_PARSE_IMAGE_FUZZY_HASH libclamav scan option flags for programmatic control. clamav-1.4.0 · Aug 2024 · source · release history
  • Adds ScanImage and ScanImageFuzzyHash ClamD config options for daemon-level control over image fuzzy hashing. clamav-1.4.0 · Aug 2024 · source · release history

example

  • Log the SHA2-256 hash and detected file type for every scanned file — useful for building an allowlist or feeding a SIEM. clamscan --log-hash --log-file-type --hash-alg=sha2-256 -r /path/to/samples/ clamav-1.5.0 · Oct 2025 · source
  • Scan a directory while disabling fuzzy-hash image matching to reduce false positives or improve throughput in environments where image-based phishing detection is handled elsewhere. clamscan --scan-image=yes --scan-image-fuzzy-hash=no -r /path/to/scan clamav-1.4.0 · Aug 2024 · source
  • Enable image scanning but disable fuzzy hashing in ClamD for a server deployment. ScanImage yes ScanImageFuzzyHash no clamav-1.4.0 · Aug 2024 · source
Build and output controls verified Provides options to skip stripping, signing, and post-processing cleanup steps during output generation. 3 releases · 4 other sources · first seen Nov 2022

release

  • Adds the function cl_cvdgetage() to libclamav API to retrieve the age in seconds of a database directory or CVD/CLD file clamav-1.1.0 · May 2023 · source · release history
  • The SONAME major version for libclamav has increased due to ABI changes between the 0.103 LTS release and the 1.0 LTS release, requiring re-linking. clamav-1.0.0 · Nov 2022 · source · release history
  • The ENABLE_EXTERNAL_TOMSFASTMATH build option is removed and ignored; ClamAV no longer supports building with an external TomsFastMath library. clamav-1.0.0 · Nov 2022 · source · release history

command line

example

  • Retrieve the age of the youngest file in a database directory using the new libclamav API function in C code. time_t age = cl_cvdgetage("/var/lib/clamav"); clamav-1.1.0 · May 2023 · source
Target OS selection verified Allows the user to specify the target operating system for processing. 3 releases · 1 other source · first seen Aug 2023

Also counts toward: Command-line interface

release

  • Adds new libclamav scan functions cl_scanfile_ex, cl_scandesc_ex, and cl_scanmap_ex supporting hash hints, hash output, hash algorithm selection, file-type hints, and file-type output. clamav-1.5.0 · Oct 2025 · source · release history
  • Adds URI extraction from PDF documents into JSON metadata, with --json-store-pdf-uris=no / JsonStorePDFURIs no to opt out. clamav-1.5.0 · Oct 2025 · source · release history
  • Adds support for extracting and scanning attachments in Microsoft OneNote section files via --scan-onenote=no flag, ScanOneNote no config option, or CL_SCAN_PARSE_ONENOTE libclamav constant clamav-1.3.0 · Feb 2024 · source · release history

command line

Valhalla database support shipped Adds the new 'valhalla' database name to the list of optional databases for use with Freshclam and scanning. 3 releases · first seen Apr 2024

release

  • Adds the new valhalla database name to the list of optional databases in preparation for future work clamav-1.0.6 · Apr 2024 · source · release history
  • Adds valhalla to the list of optional database names for use with Freshclam. clamav-1.2.3 · Apr 2024 · source · release history
  • Adds the new valhalla database name to the list of optional databases in preparation for future work clamav-1.3.1 · Apr 2024 · source · release history
File processing verified Accepts an input file and writes results to a specified output file. 1 release · 2 other sources · first seen Nov 2022

release

  • New clcb_file_inspection callback type defined in clamav.h, enabled via cl_engine_set_clcb_file_inspection(), allows inspecting file content during archive extraction at each layer. clamav-1.0.0 · Nov 2022 · source · release history

command line

Enhanced cryptography API shipped Offers extended APIs for cryptographic hashing operations with flags to control algorithm limits. 1 release · 1 other source · first seen Oct 2025

release

  • Adds extended libclamav hashing APIs (cl_hash_data_ex, cl_hash_init_ex, cl_finish_hash_ex, cl_hash_file_fd_ex, etc.) with a flags parameter to control FIPS hash algorithm limits. clamav-1.5.0 · Oct 2025 · source · release history

docs

  • Open source antivirus engine for detecting trojans, viruses, malware, and other malicious threats.
Clean file cache configuration shipped Allows customization of the clean file cache size via CLI flags and configuration keys. 2 releases · first seen Aug 2023

release

  • Adds optimization that skips file hash calculation when the clean file cache is disabled and no matching hash-based signatures exist, reducing unnecessary CPU work. clamav-1.4.0 · Aug 2024 · source · release history
  • Adds --cache-size CLI flag to clamd and clamscan, plus CacheSize config key in clamd.conf to customize the clean file cache size. clamav-1.2.0 · Aug 2023 · source · release history
Freshclam authentication shipped Enables authenticated updates to private mirrors using client certificates via environment variables. 1 release · 1 other source · first seen Aug 2023

release

  • Adds ability to authenticate Freshclam to private mirrors using client certificates via the FRESHCLAM_CLIENT_CERT, FRESHCLAM_CLIENT_KEY, and FRESHCLAM_CLIENT_KEY_PASSWD environment variables. clamav-1.2.0 · Aug 2023 · source · release history

example

  • Authenticate Freshclam to a private mirror using client certificates and environment variables. export FRESHCLAM_CLIENT_CERT=/path/to/cert.pem export FRESHCLAM_CLIENT_KEY=/path/to/key.pem sudo systemctl start clamav-freshclam-once.service clamav-1.2.0 · Aug 2023 · source
Freshclam scheduled updates shipped Supports automated scheduling of Freshclam updates using SystemD timers. 1 release · 1 other source · first seen Aug 2023

Also counts toward: Scheduled jobs

release

  • Introduces clamav-freshclam-once.timer SystemD unit for running Freshclam updates on a schedule without backgrounding the daemon. clamav-1.2.0 · Aug 2023 · source · release history

example

  • Enable the new SystemD timer to schedule Freshclam updates automatically. sudo systemctl enable --now clamav-freshclam-once.timer clamav-1.2.0 · Aug 2023 · source
Admin socket command control shipped Allows users to selectively enable or disable administrative commands (e.g., shutdown, reload) via configuration options for ClamD. 1 release · first seen Oct 2025

release

  • Adds clamd.conf options (EnableShutdownCommand, EnableReloadCommand, EnableStatsCommand, EnableVersionCommand) to selectively disable ClamD administrative socket commands. clamav-1.5.0 · Oct 2025 · source · release history
CVD certificate management shipped Supports specifying a custom directory for CVD certificates to verify signature files, with automatic downloading by Freshclam. 1 release · first seen Oct 2025

Also counts toward: Command-line interface

release

  • Adds --cvdcertsdir CLI option and CVDCertsDirectory config option (plus CVD_CERTS_DIR env var) across Freshclam, ClamD, ClamScan, and Sigtool to specify a custom CVD certificates directory. clamav-1.5.0 · Oct 2025 · source · release history
CVD verification and unpacking enhancements shipped Provides updated libraries for verifying and unpacking CVDs with explicit certificate directory support. 1 release · first seen Oct 2025

release

  • Adds new libclamav APIs cl_cvdverify_ex and cl_cvdunpack_ex for verifying and unpacking CVDs with an explicit certs directory. clamav-1.5.0 · Oct 2025 · source · release history
Document encryption detection shipped suggested Adds the capability to detect whether OLE2-based Microsoft Office documents are encrypted. 1 release · first seen Oct 2025

Suggested capability: Static malware analysis. This is our guess, not confirmed.

release

  • Detects whether OLE2-based Microsoft Office documents are encrypted. clamav-1.5.0 · Oct 2025 · source · release history
Enhanced scan functions shipped Adds extended scan functions supporting hash hints, output, algorithm selection, and file-type reporting. 1 release · first seen Oct 2025

release

  • Adds new libclamav scan functions cl_scanfile_ex, cl_scandesc_ex, and cl_scanmap_ex supporting hash hints, hash output, hash algorithm selection, file-type hints, and file-type output. clamav-1.5.0 · Oct 2025 · source · release history
Freshclam signature file support shipped Adds support for CVD signing/verification via external .sign files, with automatic downloading and Sigtool commands. 1 release · first seen Oct 2025

Also counts toward: Command-line interface

release

  • Adds CVD signing/verification via external .sign files; Freshclam downloads matching signature files automatically, and Sigtool gains sign/verify commands for them. clamav-1.5.0 · Oct 2025 · source · release history
On-access scan exclusion patterns shipped Enables the use of regular expression patterns in configuration options for fine-grained control over on-access scan exclusions. 1 release · first seen Oct 2025

release

  • Supports regex patterns in the clamd.conf OnAccessExcludePath option for fine-grained on-access scan exclusions. clamav-1.5.0 · Oct 2025 · source · release history
Scan callback hooks shipped Provides application programming interfaces to insert custom logic at specific stages of the scanning lifecycle, such as pre-hash or post-scan. 1 release · first seen Oct 2025

release

  • Adds cl_engine_set_scan_callback API with five callback insertion points (CL_SCAN_CALLBACK_PRE_HASH, CL_SCAN_CALLBACK_PRE_SCAN, CL_SCAN_CALLBACK_POST_SCAN, CL_SCAN_CALLBACK_ALERT, CL_SCAN_CALLBACK_FILE_TYPE) allowing callers to inspect or alter scan behavior at each stage. clamav-1.5.0 · Oct 2025 · source · release history
Scan summary unit precision shipped Updates scan summary reporting to use exact GiB/MiB/KiB/B units for bytes-scanned and bytes-read metrics. 1 release · first seen Oct 2025

release

  • ClamScan scan summary now reports bytes-scanned and bytes-read in exact GiB/MiB/KiB/B units instead of always using MB. clamav-1.5.0 · Oct 2025 · source · release history
Temporary directory recursion toggle shipped Allows independent control of temporary directory recursion via engine options without requiring global leave-temps settings. 1 release · first seen Oct 2025

release

  • Adds CL_ENGINE_TMPDIR_RECURSION engine option to libclamav for independently toggling temp directory recursion without requiring --leave-temps. clamav-1.5.0 · Oct 2025 · source · release history
ALZ archive support shipped suggested Supports extraction and scanning of ALZ archives with a toggle to enable or disable the feature. 1 release · first seen Aug 2024

Suggested capability: Disk and filesystem forensics. This is our guess, not confirmed.

release

  • Supports extraction and scanning of ALZ archives (new file type CL_TYPE_ALZ), with a DCONF toggle to enable/disable. clamav-1.4.0 · Aug 2024 · source · release history
LHA/LZH archive support shipped Supports extraction and scanning of LHA/LZH archives with a toggle to enable or disable the feature. 1 release · first seen Aug 2024

release

  • Supports extraction and scanning of LHA/LZH archives (new file type CL_TYPE_LHA_LZH), with a DCONF toggle to enable/disable. clamav-1.4.0 · Aug 2024 · source · release history
OneNote scanning support shipped Adds support for extracting and scanning attachments in Microsoft OneNote section files via flags, config options, or library constants. 1 release · first seen Feb 2024

Also counts toward: Command-line interface

release

  • Adds support for extracting and scanning attachments in Microsoft OneNote section files via --scan-onenote=no flag, ScanOneNote no config option, or CL_SCAN_PARSE_ONENOTE libclamav constant clamav-1.3.0 · Feb 2024 · source · release history
Temp directory validation shipped Ensures the temporary directory specified in configuration exists before starting, exiting with an error if it does not. 1 release · first seen Feb 2024

release

  • ClamD now exits with code 1 and prints an error if the directory specified by TemporaryDirectory in clamd.conf does not exist clamav-1.3.0 · Feb 2024 · source · release history
Large file scan support shipped Increases the maximum supported scan size beyond 4 GB with gigabyte unit suffix support. 1 release · first seen Aug 2023

Also counts toward: Command-line interface

release

  • Raises MaxScanSize limit beyond 4 GB and adds G/'g' suffix support for gigabytes in both clamd.conf (MaxScanSize) and clamscan (--max-scansize). clamav-1.2.0 · Aug 2023 · source · release history

Lines in monospace are the tool's own words: help text parsed from its source, or an endpoint from its API document. Under release, a line is our summary of a dated release. Under docs, it is quoted from the tool's own documentation or website. Each links back to the source it came from.

Score card

  1. Shipping velocity releases a month, last 12 months
  2. Documentation quality release-notes rubric, 0–100
  3. Breaking-change discipline how rarely a release breaks users, and notice given
  4. Maintenance risk quiet time against its own cadence, maintainers
  5. Innovation & surface new capabilities, API and MCP surface
  6. Community health
  7. Contributor trend distinct committers, this year against last
  8. Maintainer concentration bus factor now against a year ago
  9. Issue backlog trend issues closed per issue opened, 12 months
  10. Responsiveness median time to a maintainer’s first reply

Nine scores for ClamAV, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.

Score cards are part of every paid plan.

See plans →

Each score is 0–100 on a published rubric, derived from data this site already shows. A dimension we cannot measure says so — it is never scored 0 and never enters a rank.

How this is scored
  • Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
  • Documentation quality — the release-notes rubric published on the analytics page, unchanged.
  • Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
  • Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
  • Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
  • Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
  • Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
  • Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.

Release-note detail over time

See how much detail ClamAV puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.

Checking release-note history…

Explore the full chart →

Website history

clamav.net, every change

Cisco Talos's home page and 2 more pages as they looked each month from August 2021 to October 2026: 27 renders, 0 changes of tagline or palette. Step through them, play them, or put any two months side by side.

Website history is included with Researcher and Business.

See plans →

Releases

Show

9 entries

  1. October 20251
  2. August 20241
  3. April 20243
  4. February 20241
  5. August 20231
  6. May 20231
  7. November 20221
    Show

    9 entries

    Project health

    Issue, contributor and maintainer activity in Cisco-Talos/clamav, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.

    1. Contributors 15 ±0 vs prior 12 months
    2. Maintainers 2 +2 joined · −2 left, last 12 months
    3. Bus factor 1 committers behind half the commits
    4. Community-filed 100% of issues opened, last 12 months
    5. Median time to close 4.1 days first maintainer reply 3.2 days
    6. Open backlog 329 of 900 issues ever filed
    1. Issues opened / month 3 · 0 communitymaintainers
    2. Open backlog 329
    3. Contributors / month 0
    4. Commits / month 0
    5. Stars 7,252
    Issue themes, last 12 months
    • bugs 2%
    • features 1%
    • other 97%

    Counts from the project's public repository and git history; no individuals are identified. Maintainers are the committers covering 80% of the last year's commits. how we measure this

    Add the badge to your README

    Maintain this project? The badge links readers straight to this page, so they can follow every release here.

    Tracked by Cyber Toolchain Choose a badge style and copy the code →
    browse all tools → score card for your toolchain →