critical CVSS 10 Actively exploited EPSS 100% Public exploit available

CVE-2019-10149·Exim vulnerability

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.

Severity
critical
Software
Exim
Fixed in
4.92~RC3-1
Published

How likely is exploitation

FIRST's Exploit Prediction Scoring System puts the probability of this CVE being exploited in the next 30 days at 100% — among the highest-scoring CVEs ever published. EPSS is an independent forecast of exploitation, not a severity rating: it says nothing about how much damage a successful attack does, which is what a CVSS score measures.

Affected versions

Until: 4.92~RC3-1

Fixed in: 4.92~RC3-1

How to fix this CVE

Update Exim to version 4.92~RC3-1 or later immediately, as this CVSS 10.0 vulnerability allows unauthenticated remote code execution through malformed recipient addresses. Organizations running Exim 4.87 through 4.91 should prioritize this patch deployment given active exploitation in the wild and publicly available exploits.

sudo dnf update exim

Defensia detects this vulnerability

What an exploitation attempt looks like

Sample log line indicative of exploitation attempts:

SMTP transaction logs showing malformed or shell-metacharacter-containing recipient addresses (e.g., RCPT TO: <user$(command)@domain.com> or RCPT TO: <user`cmd`@domain.com>) followed by delivery errors or successful command execution indicators in syslog

How to check if you are affected

  1. Check installed Exim version: exim -bV | grep -i 'version'
  2. Verify if Exim is listening on network interfaces: netstat -tuln | grep :25 or ss -tuln | grep :25
  3. Search mail logs for suspicious recipient patterns: grep -i 'recipient' /var/log/exim4/mainlog | grep -E '[`$(){}]|\\x'
  4. Confirm patch applied: dpkg -l exim4 | grep '4.92~rc3' (Debian/Ubuntu) or rpm -qa exim (RHEL/CentOS)

FAQ

What is CVE-2019-10149?

CVE-2019-10149 is a critical remote code execution vulnerability in Exim mail servers that stems from insufficient validation of recipient email addresses in the message delivery function, allowing attackers to inject and execute arbitrary commands without authentication.

Is CVE-2019-10149 being actively exploited?

Yes, this vulnerability is listed in the CISA Known Exploited Vulnerabilities (KEV) catalog and has multiple public exploits available on Exploit-DB, confirming active real-world exploitation.

What versions of Exim are affected by CVE-2019-10149?

Exim versions 4.87 through 4.91 (inclusive) are vulnerable; the fix was released in version 4.92~RC3-1 and later.

How do I check if my server is vulnerable to CVE-2019-10149?

Run 'exim -bV' and check if the version falls between 4.87-4.91; if it does and the server accepts remote SMTP connections on port 25, it is vulnerable.

Does Defensia detect CVE-2019-10149?

Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Exim is installed on a monitored server, CVE-2019-10149 will appear in your dashboard with remediation steps.

Related Exim CVEs

CVE-2019-16928CVSS 10Exim 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.
CVE-2018-6789CVSS 10An 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.
CVE-2010-4344CVSS 10Heap-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.
CVE-2026-45185CVSS 9.8Exim 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.
CVE-2017-16944CVSS 9The 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.

References

Track CVEs across your fleet automatically

Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2019-10149. Free for 1 server.

Get started free