Skip to main content

ClamAV CVE-2020-37167

HIGH
2026-02-12 disclosure@vulncheck.com
8.6
CVSS 4.0 · Vendor: vulncheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft malicious bytecode signature
  2. Delivery
    Deliver as trusted-looking .cbc
  3. Exploit
    Victim loads untrusted/unsigned bytecode
  4. Execution
    ClamBC interpreter mishandles function-name encoding
  5. Impact
    Execute arbitrary code in engine context

Vulnerability Assessment

Exploitation Conditions

Exploitation requires the victim to load and execute an attacker-supplied ClamAV bytecode signature from an untrusted source through the ClamBC interpreter. Concretely this means either running the clambc analysis/testing tool on a malicious signature, or scanning with unsigned bytecode loading explicitly enabled - the non-default 'BytecodeUnsigned yes' clamd.conf setting or the clamscan '--bytecode-unsigned' flag - since bytecode inside digitally signed .c[lv]d files is normally trusted. The vendor added no code fix, only warnings, so the limiting factor is operator behavior: default configurations that only load Talos-signed signatures are not exposed. Attack is local (AV:L) and depends on this deliberate non-default trust decision.

Impact

This is a high-CVSS (8.6 CVSS 4.0) but low-real-world-priority issue whose signals are internally consistent once the actual attack model is understood. The provided CVSS 4.0 vector is AV:L/AC:L/PR:N/UI:N with full VC:H/VI:H/VA:H, implying trivial local code execution - but this contradicts the nature of the flaw: the ClamBC bytecode interpreter executes bytecode signatures, and arbitrary code execution only occurs when a user chooses to load and run bytecode from an untrusted source. The vendor's own 'fix' (commit cd2f2975) adds NO code hardening - it only adds documentation warnings ('You should NEVER run bytecode signatures from untrusted sources. Doing so may result in arbitrary code execution.') to man pages, config samples, and headers. This strongly indicates the behavior is by-design and the real gate is operator action, so the CVSS UI:N is questionable and should be UI:R/UI:P. EPSS is effectively zero (0.01%, 0th percentile) and there is no CISA KEV listing, consistent with a flaw requiring the victim to deliberately run malicious signatures. Publicly available exploit code exists (Exploit-DB 47687), which raises reproducibility but not opportunistic mass-exploitation likelihood. Note the input Tag 'Information Disclosure' conflicts with the described impact (arbitrary bytecode/code execution, VC/VI/VA:H) - verify tag against advisory.

Exploit ScenarioDerived

An attacker crafts a malicious ClamAV bytecode signature (.cbc) abusing weak function-name encoding validation in the ClamBC interpreter and distributes it as a seemingly legitimate signature. A victim who runs untrusted bytecode - via the clambc tool, or with unsigned bytecode loading enabled (BytecodeUnsigned yes / --bytecode-unsigned) - triggers arbitrary code execution in the ClamAV engine's context. Public exploit code exists (Exploit-DB 47687), lowering the barrier to reproduction.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv2 – Sep 30, 2026

ClamAV releases prior to 0.103.0-rc fail to properly validate bytecode function names inside the ClamBC bytecode interpreter, so a crafted bytecode signature can be executed within the ClamAV engine and lead to arbitrary code execution or other unexpected behavior on the host running the scanner. The exposure is narrow and operator-dependent: exploitation requires the victim to deliberately load and run an attacker-supplied bytecode signature, either by running the clambc analysis/testing tool or by scanning with unsigned bytecode loading explicitly enabled (the non-default 'BytecodeUnsigned yes' clamd.conf setting or the '--bytecode-unsigned' flag), because bytecode shipped inside digitally signed .c[lv]d files is normally trusted. Public exploit code exists (Exploit-DB 47687) and is reported as unauthenticated with user interaction (CVSS:3.1/AV:L/AC:L/PR:N/UI:R), but EPSS is only 0.01% and there is no CISA KEV status, so real-world priority is low; the vendor's referenced upstream commit adds cautionary warnings rather than a functional code fix.

Earlier versions of this analysis (1)
v1 Mar 12, 2026 - 22:02 CVSS 8.4

ClamAV versions up to 0.103.0 contains a vulnerability that allows attackers to manipulate bytecode function names (CVSS 8.4).

RemediationAI

Upgrade ClamAV to 0.103.0-rc or later, the version cited in the supplied data as the boundary after which the affected releases are superseded; note that the linked upstream commit (cd2f2975b93277de7f74464d48adb378375a305f) contains only warning text and documentation for the BytecodeUnsigned option and CL_DB_BYTECODE_UNSIGNED define, so vendor patch availability is reported but a functional code fix is not independently confirmed and upgrades should not be treated as a complete technical control. The decisive mitigation is to preserve the default trust model: keep BytecodeUnsigned disabled in clamd.conf (the sample explicitly documents 'Default: no'), never pass the clamscan '--bytecode-unsigned' flag, and only load bytecode that is shipped inside digitally signed .c[lv]d files from Talos. Do not run the clambc tool on signatures of untrusted origin; if clambc must be used for signature development, run it in a disposable sandbox or container with no access to production files, credentials, or the network, accepting the trade-off that this adds operational friction for signature authors. If third-party unsigned bytecode signatures are operationally required, isolate the scanning service account so that arbitrary code execution yields no privileged access, and monitor the low-volume Exploit-DB 47687 proof-of-concept and the vendor advisory at https://www.vulncheck.com/advisories/clamav-clambc-clambc-executable-regular-expression-error for updated guidance; there is no CISA KEV listing and EPSS is 0.01%, so emergency out-of-band action is not indicated for environments that never enabled unsigned bytecode loading.

Affected ProductsAI

ClamAV versions prior to 0.103.0-rc are affected according to the supplied vulnerability data, spanning the ClamBC bytecode interpreter and the components that can load unsigned bytecode: the clambc analysis/testing tool (clambc/bcrun.c), clamscan (clamscan/clamscan.c), the libclamav library and its CL_DB_BYTECODE_UNSIGNED flag (libclamav/clamav.h), and clamd through the BytecodeUnsigned clamd.conf directive, including the Windows clamd.conf.sample. No CPE strings were provided with this record, so exact platform bindings cannot be enumerated from the input; the relevant distinguishing factor is configuration state rather than build, since only systems that load bytecode from outside digitally signed .c[lv]d files - the non-default 'BytecodeUnsigned yes' setting or the '--bytecode-unsigned' flag - are exposed. Vendor and advisory references are https://www.clamav.net/ and the VulnCheck advisory at https://www.vulncheck.com/advisories/clamav-clambc-clambc-executable-regular-expression-error, with upstream change history at https://github.com/Cisco-Talos/clamav/commit/cd2f2975b93277de7f74464d48adb378375a305f.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

ClamAV's bytecode signatures are a platform-independent executable plugin format that extends detection capabilities; they are consumed either by the clambc bytecode analysis/testing tool or by libclamav through clamd/clamscan, and they can run either under the ClamBC bytecode interpreter or a JIT path. The reported defect lies in the interpreter's handling of bytecode function name encoding, where weak input validation lets a crafted signature manipulate function names and, in effect, run attacker-controlled bytecode inside the scanning process. This is an improper-input-validation class of flaw (no CWE was assigned in the supplied source data), and the confidential integrity and availability impact comes from executing that untrusted plugin code with the privileges of the antivirus service rather than from a memory-safety bug in parsing ordinary scanned files. The referenced upstream commit cd2f2975b93277de7f74464d48adb378375a305f touches clambc/bcrun.c, clamscan/clamscan.c, libclamav/clamav.h, and several man pages and sample configs, but its content consists solely of warnings such as 'You should NEVER run bytecode signatures from untrusted sources' and documentation for the BytecodeUnsigned option and the CL_DB_BYTECODE_UNSIGNED flag - that is, it formalizes the trust boundary rather than adding validation logic. This explains why the exploitability signal (public POC, high CVSS 4.0 base of 8.6) and the real-world signal (0.01% EPSS, no KEV, non-default preconditions) diverge: the design already assumes bytecode signatures are trusted code, and the advisory data confirms the mitigating control is configuration and operator behavior.

Know when Clamav gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (vulncheck) PRIMARY 8.6 HIGH
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.8 HIGH

Local (AV:L) since a malicious bytecode file must be processed; UI:R because an operator must deliberately load/run untrusted or unsigned bytecode; full CIA from arbitrary code execution.

3.1 AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE 8.4 HIGH
AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Primary rating from Vendor (vulncheck).

CVSS VectorVendor: vulncheck

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

5
Analysis Updated
Sep 30, 2026 - 18:44 vuln.today
v2 - CVSS changed
CVSS changed
Sep 30, 2026 - 18:22 NVD
8.4 (HIGH) 8.6 (HIGH)
Patch released
Mar 31, 2026 - 21:13 nvd
Patch available
PoC Detected
Feb 27, 2026 - 22:16 vuln.today
Public exploit code
CVE Published
Feb 12, 2026 - 23:16 nvd
HIGH 8.4

DescriptionCVE.org

ClamAV versions prior to 0.103.0-rc contain a vulnerability in function name processing through the ClamBC bytecode interpreter that allows attackers to manipulate bytecode function names. Attackers can exploit the weak input validation in function name encoding to potentially execute malicious bytecode or cause unexpected behavior in the ClamAV engine.

Executive ViewAI

Why It Matters

ClamAV deployments that use the clambc tool or enable unsigned bytecode loading are exposed to high-severity code execution on the scanning host, but only if an operator deliberately loads a malicious bytecode signature. Because this requires user interaction and a non-default configuration, the practical business risk is limited to teams that rely on unsigned bytecode workflows; most standard scanning operations remain protected by signed signature files. Leadership should prioritize patching only those affected instances and confirm whether unsigned bytecode is enabled in production.

Business Impact: Low
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.0%
Top 100% exploitable
Prevalence
High
widely deployed open-source AV engine in mail/web gateways and Linux servers
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High
NVD CVE.org EPSS Vendor Exploit-DB GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
Poc
System Exposure· derived
Small
Automatable· derived
No
Human Impact
Low

Priority Score

63
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +43
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Clamav

View all
CVE-2012-1459 MEDIUM
4.3 Mar 21

The TAR file parser in AhnLab V3 Internet Security 2011.01.18.00, Avira AntiVir 7.11.1.163, Antiy Labs AVL SDK 2.0.3.7,

CVE-2012-1457 MEDIUM
4.3 Mar 21

The TAR file parser in Avira AntiVir 7.11.1.163, Antiy Labs AVL SDK 2.0.3.7, avast!. Rated medium severity (CVSS 4.3), t

CVE-2012-1443 MEDIUM
4.3 Mar 21

The RAR file parser in ClamAV 0.96.4, Rising Antivirus 22.83.00.03, Quick Heal (aka Cat QuickHeal) 11.00, G Data AntiVir

CVE-2014-9050 MEDIUM POC
5.0 Dec 01

Heap-based buffer overflow in the cli_scanpe function in libclamav/pe.c in ClamAV before 0.98.5 allows remote attackers

CVE-2025-20260 CRITICAL
9.8 Jun 18

A remote code execution vulnerability in the PDF scanning processes of ClamAV could allow an unauthenticated (CVSS 9.8).

CVE-2014-9328 HIGH
7.5 Feb 03

ClamAV before 0.98.6 allows remote attackers to have unspecified impact via a crafted upack packer file, related to a "h

CVE-2023-20032 CRITICAL
9.8 Mar 01

On Feb 15, 2023, the following vulnerability in the ClamAV scanning library was disclosed: A vulnerability in the HFS+ p

CVE-2016-1372 MEDIUM POC
5.5 Oct 03

ClamAV (aka Clam AntiVirus) before 0.99.2 allows remote attackers to cause a denial of service (application crash) via a

CVE-2016-1371 MEDIUM POC
5.5 Oct 03

ClamAV (aka Clam AntiVirus) before 0.99.2 allows remote attackers to cause a denial of service (application crash) via a

CVE-2019-1798 MEDIUM POC
5.5 Apr 08

A vulnerability in the Portable Executable (PE) file scanning functionality of Clam AntiVirus (ClamAV) Software versions

CVE-2019-1788 MEDIUM POC
5.5 Apr 08

A vulnerability in the Object Linking & Embedding (OLE2) file scanning functionality of Clam AntiVirus (ClamAV) Software

CVE-2019-1787 MEDIUM POC
5.5 Apr 08

A vulnerability in the Portable Document Format (PDF) scanning functionality of Clam AntiVirus (ClamAV) Software version

Vendor StatusVendor

SUSE

Severity: High
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Fixed
SUSE Linux Enterprise High Performance Computing 15 SP7 Fixed
SUSE Linux Enterprise Micro 5.5 Fixed
SUSE Linux Enterprise Module for Basesystem 15 SP7 Fixed
SUSE Linux Enterprise Server 15 SP7 Fixed

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy