ClamAV - Documentation is here: https://docs.clamav.net https://www.clamav.net/
Find a file
ChaoticByte a3be0d2d45
clamd: Add options to toggle SHUTDOWN, RELOAD, STATS and VERSION (#1502)
The `clamd` protocol lacks authentication or authorization controls
needed to limit access to more administrative commands.
Depending on your use case, disabling some commands like `SHUTDOWN`
may improve the security of the scanning daemon.

This commit adds options to enable/disable the `SHUTDOWN`, `RELOAD`,
`STATS` and `VERSION` commands in `clamd.conf`.
When a client sends one of the following commands but it is disabled,
`clamd` will respond with "COMMAND UNAVAILABLE".

The new `clamd.conf` options are:

- `EnableShutdownCommand`: Enable the `SHUTDOWN` command.
  Setting this to no prevents a client to stop `clamd` via the
  protocol.
  Default: yes

- `EnableReloadCommand` Enable the `RELOAD` command.
  Setting this to no prevents a client to reload the database.
  This disables Freshclam's `NotifyClamd` option. 
  `clamd` monitors for database directory changes, so this should 
  Default: yes

- `EnableStatsCommand` Enable the `STATS` command.
  Setting this to no prevents a client from querying statistics.
  This disables the `clamdtop` program.
  Default: yes

- `EnableVersionCommand` Enable the `VERSION` command.
  Setting this to no prevents a client from querying version
  information.
  This disables the `clamdtop` program and will cause `clamdscan` to
  display a warning when using the `--version` option.
  Default: yes

Resolves: https://github.com/Cisco-Talos/clamav/issues/922
Resolves: https://github.com/Cisco-Talos/clamav/issues/1169
Related: https://github.com/Cisco-Talos/clamav/pull/347
2025-06-04 10:47:57 -04:00
.github FIPS-compliant CVD signing and verification 2025-03-26 19:33:25 -04:00
certs Fix several codesign bugs 2025-03-29 20:38:08 -04:00
clamav-milter Bump copyright dates for 2025 2025-02-14 10:24:30 -05:00
clambc Bump copyright dates for 2025 2025-02-14 10:24:30 -05:00
clamconf FIPS-compliant CVD signing and verification 2025-03-26 19:33:25 -04:00
clamd clamd: Add options to toggle SHUTDOWN, RELOAD, STATS and VERSION (#1502) 2025-06-04 10:47:57 -04:00
clamdscan clamd: Add options to toggle SHUTDOWN, RELOAD, STATS and VERSION (#1502) 2025-06-04 10:47:57 -04:00
clamdtop clamd: Add options to toggle SHUTDOWN, RELOAD, STATS and VERSION (#1502) 2025-06-04 10:47:57 -04:00
clamonacc Bump copyright dates for 2025 2025-02-14 10:24:30 -05:00
clamscan Merge pull request #1482 from jhumlick/CLAM-2588-PDF-Urls 2025-05-31 18:57:00 -04:00
clamsubmit Merge pull request #1453 from val-ms/windows-install-openssl-conflict 2025-02-14 12:07:44 -05:00
cmake Codesign: fix test files & upgrade clamav-signature-util for related fix 2025-05-05 16:54:07 -04:00
common clamd: Add options to toggle SHUTDOWN, RELOAD, STATS and VERSION (#1502) 2025-06-04 10:47:57 -04:00
COPYING CMake: CPack generate Windows installer with WIX 2021-02-25 11:41:27 -08:00
docs clamd: Add options to toggle SHUTDOWN, RELOAD, STATS and VERSION (#1502) 2025-06-04 10:47:57 -04:00
etc clamd: Add options to toggle SHUTDOWN, RELOAD, STATS and VERSION (#1502) 2025-06-04 10:47:57 -04:00
examples FIPS-compliant CVD signing and verification 2025-03-26 19:33:25 -04:00
freshclam clamd: Add options to toggle SHUTDOWN, RELOAD, STATS and VERSION (#1502) 2025-06-04 10:47:57 -04:00
fuzz libclamav: Fix compiler error on some Apple systems. 2025-05-30 12:41:45 -07:00
libclamav Merge pull request #1482 from jhumlick/CLAM-2588-PDF-Urls 2025-05-31 18:57:00 -04:00
libclamav_rust Merge pull request #1489 from val-ms/oss-fuzz-engine-free-certs_directory 2025-05-07 10:09:00 -04:00
libclammspack Fix typos (no functional changes) 2024-01-19 09:08:36 -08:00
libclamunrar Bump copyright dates for 2025 2025-02-14 10:24:30 -05:00
libclamunrar_iface Bump copyright dates for 2025 2025-02-14 10:24:30 -05:00
libfreshclam FIPS-compliant CVD signing and verification 2025-03-26 19:33:25 -04:00
sigtool Fix several codesign bugs 2025-03-29 20:38:08 -04:00
unit_tests Merge pull request #1482 from jhumlick/CLAM-2588-PDF-Urls 2025-05-31 18:57:00 -04:00
win32 clamd: Add options to toggle SHUTDOWN, RELOAD, STATS and VERSION (#1502) 2025-06-04 10:47:57 -04:00
.clang-format Explicitly set clang-format version to 16 2024-04-03 16:35:23 -04:00
.dockerignore Docker: Fix build after CMake/CPack changes 2021-09-02 03:22:48 -07:00
.gitattributes Avoid altering signature for .cargo/vendor files 2023-03-08 19:40:35 -08:00
.gitignore Remove Cargo.lock file from .gitignore 2023-05-04 10:42:21 -07:00
Cargo.lock Codesign: fix test files & upgrade clamav-signature-util for related fix 2025-05-05 16:54:07 -04:00
Cargo.toml cdiff: Replace cdiff-apply feature with Rust implementation 2022-01-10 12:18:33 -07:00
ChangeLog.md Documentation update and cleanup. Transition to MarkDown files for improved rendering on GitHub.com 2018-03-06 17:43:54 -05:00
clam-format clam-format script: also format Rust source 2024-04-15 10:03:02 -07:00
clamav-config.h.cmake.in FIPS-compliant CVD signing and verification 2025-03-26 19:33:25 -04:00
clamav-config.in remove old CVS-stuff and make the repository look more like SVN 2007-02-17 19:02:20 +00:00
clamav-types.h.in Bump copyright dates for 2025 2025-02-14 10:24:30 -05:00
clamav-version.h.in Bump copyright dates for 2025 2025-02-14 10:24:30 -05:00
CMakeLists.txt Merge pull request #1475 from val-ms/CLAM-2726-1.5-beta-prep 2025-03-28 14:33:40 -04:00
CMakeOptions.cmake FIPS-compliant CVD signing and verification 2025-03-26 19:33:25 -04:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2021-05-21 10:05:52 -07:00
COPYING.txt CMake: CPack generate Windows installer with WIX 2021-02-25 11:41:27 -08:00
INSTALL-cross-linux-arm64.md Fix typos and remove duplicate #include 2024-04-10 19:31:46 -04:00
INSTALL-cross-windows-arm64.md Docs: add ARM64 cross-compile instructions for Windows and Linux 2024-03-26 12:48:11 -04:00
INSTALL.md FIPS-compliant CVD signing and verification 2025-03-26 19:33:25 -04:00
Jenkinsfile Jenkins: Archive the cargo vcs file 2024-11-14 16:30:22 -05:00
libclamav.pc.in Improve pkgconfig. Patch supplied by Andreas Cadhalpun. 2015-09-09 17:58:04 -04:00
logo.png GitHub Actions testing on Ubuntu, Mac, & Windows 2021-02-25 11:41:28 -08:00
NEWS.md Release notes for 1.5.0-beta 2025-03-27 14:47:14 -04:00
platform.h.in FIPS-compliant CVD signing and verification 2025-03-26 19:33:25 -04:00
README.Docker.md Fix typos (no functional changes) 2024-01-19 09:08:36 -08:00
README.md Remove bundled tomfastmath library. 2023-03-29 15:10:25 -07:00
SECURITY.md Adds SECURITY.md policy file 2021-06-09 14:17:59 -07:00
target.h.cmake.in Add CMake build tooling 2020-08-13 00:25:34 -07:00

ClamAV

Maeve, the ClamAV mascot

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

Documentation & FAQ

ClamAV documentation is hosted at docs.clamav.net. The source archive for each release also includes a copy of the documentation for offline reading.

You can contribute to the documentation by submitting improvements to Cisco-Talos/clamav-documentation

ClamAV News

For information about the features in this and prior releases, read the news.

Catch up on the latest about ClamAV by reading our blog and follow us on Twitter @clamav.

ClamAV Signatures

Anyone can learn to read and write ClamAV signatures. To get started, see our signature writing manual.

Installation Instructions

Using Docker

ClamAV can be run using Docker. For details, visit to the online manual under "Docker" and check out our images on Docker Hub.

Using a Package Manager

For help installing from a package manager, refer to the online manual under "Packages".

Using an Installer

The following install packages are available for download from clamav.net/downloads:

  • Linux - Debian and RPM packages for x86_64 and i686. New in v0.104.
  • macOS - PKG installer for x86_64 and arm64 (universal). New in v0.104.
  • Windows - MSI installers and portable ZIP packages for win32 and x64.

To learn how to use these packages, refer to the online manual under "Installing".

Build from Source

For step-by-step instructions, refer to the online manual:

The source archive for each release includes a copy of the documentation for offline reading.

A reference with all of the available build options can be found in the INSTALL.md file.

You can find additional advice for developers in the online manual under "For Developers".

Upgrading from a previous version

Visit the FAQ for tips on how to upgrade from a previous version.

Join the ClamAV Community

The best way to get in touch with the ClamAV community is to join our mailing lists.

You can also join the community on our ClamAV Discord chat server.

Want to make a contribution?

The ClamAV development team welcomes code contributions, improvements to our documentation, and also bug reports.

Thanks for joining us!

Licensing

ClamAV is licensed for public/open source use under the GNU General Public License, Version 2 (GPLv2).

See COPYING.txt for a copy of the license.

3rd Party Code

ClamAV contains a number of components that include code copied in part or in whole from 3rd party projects and whose code is not owned by Cisco and which are licensed differently than ClamAV. These include:

  • Yara: Apache 2.0 license
    • Yara has since switched to the BSD 3-Clause License; Our source is out-of-date and needs to be updated.
  • 7z / lzma: public domain
  • libclamav's NSIS/NulSoft parser includes:
    • zlib: permissive free software license
    • bzip2 / libbzip2: BSD-like license
  • OpenBSD's libc/regex: BSD license
  • file: BSD license
  • str.c: Contains BSD licensed modified-implementations of strtol(), stroul() functions, Copyright (c) 1990 The Regents of the University of California.
  • pngcheck (png.c): MIT/X11-style license
  • getopt.c: MIT license
  • Curl: license inspired by MIT/X, but not identical
  • libmspack: LGPL license
  • UnRAR (libclamunrar): a non-free/restricted open source license
    • Note: The UnRAR license is incompatible with GPLv2 because it contains a clause that prohibits reverse engineering a RAR compression algorithm from the UnRAR decompression code. For this reason, libclamunrar/libclamunrar_iface is not linked at all with libclamav. It is instead loaded at run-time. If it fails to load, ClamAV will continue running without RAR support.

See the COPYING directory for a copy of the 3rd party project licenses.

Acknowledgements

Credit for contributions to each release can be found in the News.

ClamAV is brought to you by the ClamAV Team