Exim CVE database

Tracked vulnerabilities in Exim with severity, remediation steps and WAF mitigations curated by Defensia.

CVE-2010-4344criticalCVSS 10Actively exploitedPublic exploit

Heap-based buffer overflow in the string_vformat function in string.c in Exim before 4.70 allows remote attackers to execute arbitrary code via an SMTP session that includes two MAIL commands in conjunction with a large message containing crafted headers, leading to improper rejection logging.

Fixed in 4.70-1

CVE-2018-6789criticalCVSS 10Actively exploitedPublic exploit

An issue was discovered in the base64d function in the SMTP listener in Exim before 4.90.1. By sending a handcrafted message, a buffer overflow may happen. This can be used to execute code remotely.

Fixed in 4.90.1-1

CVE-2019-10149criticalCVSS 10Actively exploitedPublic exploit

A flaw was found in Exim versions 4.87 to 4.91 (inclusive). Improper validation of recipient address in deliver_message() function in /src/deliver.c may lead to remote command execution.

Fixed in 4.92~RC3-1

CVE-2019-16928criticalCVSS 10Actively exploited

Exim 4.92 through 4.92.2 allows remote code execution, a different vulnerability than CVE-2019-15846. There is a heap-based buffer overflow in string_vformat in string.c involving a long EHLO command.

Fixed in 4.92.2-3

CVE-2010-4345highCVSS 7.5Actively exploitedPublic exploit

Exim 4.72 and earlier allows local users to gain privileges by leveraging the ability of the exim user account to specify an alternate configuration file with a directive that contains arbitrary commands, as demonstrated by the spool_directory directive.

Fixed in 4.72-3

CVE-2026-45185criticalCVSS 9.8

Exim before 4.99.3, in certain GnuTLS configurations, has a remotely reachable use-after-free in the BDAT body parsing path. It is triggered when a client sends a TLS close_notify mid-body during a CHUNKING transfer, followed by a final cleartext byte on the same TCP connection. This can lead to heap corruption. An unauthenticated network attacker exploiting this vulnerability could execute arbitrary code.

Fixed in 4.99.3

CVE-2017-16944criticalCVSS 9Public exploit

The receive_msg function in receive.c in the SMTP daemon in Exim 4.88 and 4.89 allows remote attackers to cause a denial of service (infinite loop and stack exhaustion) via vectors involving BDAT commands and an improper check for a '.' character signifying the end of the content, related to the bdat_getc function.

Fixed in 4.89-13

CVE-2026-66140highCVSS 8.4

Exim before 4.99.5 allows directory traversal to access files outside of the spool area, and consequently gain privileges, because arguments related to queue-name are mishandled.

Fixed in 4.99.5

CVE-2026-94056highCVSS 7.5

Exim before 4.100.1, when Proxy-Protocol is used with an attacker-controlled proxy, allows attackers to read certain uninitialized data from stack memory.

Fixed in 4.100.1

CVE-2026-66141highCVSS 7.4

Exim before 4.99.5 allows .forward privilege escalation because force_command for a pipe transport is mishandled.

Fixed in 4.99.5

CVE-2026-94054highCVSS 7

Exim before 4.100.1, when Proxy-Protocol is used with an attacker-controlled proxy, has an out-of-bounds write.

Fixed in 4.100.1

CVE-2016-1531highCVSS 7Public exploit

Exim before 4.86.2, when installed setuid root, allows local users to gain privileges via the perl_startup argument.

Fixed in 4.86.2-1

CVE-2026-48840mediumCVSS 5.3

Exim 4.88 before 4.99.4, in some proxy configurations, mishandles certain short payloads, leading to disclosure of uninitialized stack memory values to a client.

Fixed in 4.99.4

CVE-2026-94057mediumCVSS 4

Exim before 4.100.1 allows SMTP smuggling in which the received message does not match any sent message, and instead depends on crafted data sent after a rejection during DATA processing.

Fixed in 4.100.1