CVE-2019-10149
A flaw was found in Exim versions 4.87 to 4.91 (inclusive). Improper validation of recipient...
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
9.0
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.
- Record
CVE-2019-10149- CVSS 3.0
- 9.0 Critical
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H - Weakness
- CWE-78
- Updated
- 2026-11-02
EUVDEUVD-2019-2187
9.0
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.
- Record
EUVD-2019-2187- CVSS 3.0
- 9.0 Critical
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-5r7w-xvrp-rg22
9.8
A flaw was found in Exim versions 4.87 to 4.91 (inclusive). Improper validation of recipient...
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.
- Record
GHSA-5r7w-xvrp-rg22- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-20, CWE-78
- Updated
- 2026-11-02
CISA KEV No score
Exim Mail Transfer Agent (MTA) Improper Input Validation
Improper validation of recipient address in deliver_message() function in /src/deliver.c may lead to remote command execution.
- Record
CVE-2019-10149- Weakness
- CWE-78
- Updated
- 2026-11-02
NVD
9.8
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.
- Record
CVE-2019-10149- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 3.0
- 9.0 Critical
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H - CVSS 2.0
- 10.0 High
AV:N/AC:L/Au:N/C:C/I:C/A:C - Weakness
- CWE-78
- Updated
- 2026-11-02
OSVALPINE-CVE-2019-10149
9.8
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.
- Record
ALPINE-CVE-2019-10149- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-03
Show 7 moreShow less
OSV
9.8
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.
- Record
CVE-2019-10149- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVDEBIAN-CVE-2019-10149
9.8
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.
- Record
DEBIAN-CVE-2019-10149- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2019-10149
9.8
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.
- Record
UBUNTU-CVE-2019-10149- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 3.0
- 9.0 Critical
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H - CVSS 3.0
- 9.8 Critical
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVopenSUSE-SU-2019:1524-1 No score
Security update exim
exim was updated to fix a security issue.
- CVE-2019-10149: Fixed a Remote Command Execution in exim (bsc#1136587)
- Record
openSUSE-SU-2019:1524-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2021:0753-1 No score
Security update for exim
This update for exim fixes the following issues:
exim was updated to 4.94.2:
security update (boo#1185631)
- CVE-2020-28007: Link attack in Exim's log directory
- CVE-2020-28008: Assorted attacks in Exim's spool directory
- CVE-2020-28014: Arbitrary PID file creation
- CVE-2020-28011: Heap buffer overflow in queue_run()
- CVE-2020-28010: Heap out-of-bounds write in main()
- CVE-2020-28013: Heap buffer overflow in parse_fix_phrase()
- CVE-2020-28016: Heap out-of-bounds write in parse_fix_phrase()
- CVE-2020-28015: New-line injection into spool header file (local)
- CVE-2020-28012: Missing close-on-exec flag for privileged pipe
- CVE-2020-28009: Integer overflow in get_stdinput()
- CVE-2020-28017: Integer overflow in receive_add_recipient()
- CVE-2020-28020: Integer overflow in receive_msg()
- CVE-2020-28023: Out-of-bounds read in smtp_setup_msg()
- CVE-2020-28021: New-line injection into spool header file (remote)
- CVE-2020-28022: Heap out-of-bounds read and write in extract_option()
- CVE-2020-28026: Line truncation and injection in spool_read_header()
- CVE-2020-28019: Failure to reset function pointer after BDAT error
- CVE-2020-28024: Heap buffer underflow in smtp_ungetc()
- CVE-2020-28018: Use-after-free in tls-openssl.c
- CVE-2020-28025: Heap out-of-bounds read in pdkim_finish_bodyhash()
update to exim-4.94.1
- Fix security issue in BDAT state confusion. Ensure we reset known-good where we know we need to not be reading BDAT data, as a general case fix, and move the places where we switch to BDAT mode until after various protocol state checks. Fixes CVE-2020-BDATA reported by Qualys.
- Fix security issue in SMTP verb option parsing (CVE-2020-EXOPT)
- Fix security issue with too many recipients on a message (to remove a known security problem if someone does set recipients_max to unlimited, or if local additions add to the recipient list). Fixes CVE-2020-RCPTL reported by Qualys.
- Fix CVE-2020-28016 (PFPZA): Heap out-of-bounds write in parse_fix_phrase()
- Fix security issue CVE-2020-PFPSN and guard against cmdline invoker providing a particularly obnoxious sender full name.
- Fix Linux security issue CVE-2020-SLCWD and guard against PATH_MAX better.
-
bring back missing exim_db.8 manual page (fixes boo#1173693)
-
bring in changes from current +fixes (lots of taint check fixes)
- Bug 1329: Fix format of Maildir-format filenames to match other mail- related applications. Previously an 'H' was used where available info says that 'M' should be, so change to match.
- Bug 2587: Fix pam expansion condition. Tainted values are commonly used as arguments, so an implementation trying to copy these into a local buffer was taking a taint-enforcement trap. Fix by using dynamically created buffers.
- Bug 2586: Fix listcount expansion operator. Using tainted arguments is reasonable, eg. to count headers. Fix by using dynamically created buffers rather than a local. Do similar fixes for ACL actions 'dcc', 'log_reject_target', 'malware' and 'spam'; the arguments are expanded so could be handling tainted values.
- Bug 2590: Fix -bi (newaliases). A previous code rearrangement had broken the (no-op) support for this sendmail command. Restore it to doing nothing, silently, and returning good status.
update to exim 4.94
- some transports now refuse to use tainted data in constructing their delivery location this WILL BREAK configurations which are not updated accordingly. In particular: any Transport use of $local_user which has been relying upon check_local_user far away in the Router to make it safe, should be updated to replace $local_user with $local_part_data.
- Attempting to remove, in router or transport, a header name that ends with an asterisk (which is a standards-legal name) will now result in all headers named starting with the string before…
- Record
openSUSE-SU-2021:0753-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2024:10746-1 No score
exim-4.94.2-4.2 on GA media
These are all security issues fixed in the exim-4.94.2-4.2 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2024:10746-1- Updated
- 2026-11-02
OSVUSN-4010-1 No score
exim4 vulnerability
It was discovered that Exim incorrectly handled certain decoding operations. A remote attacker could possibly use this issue to execute arbitrary commands.
- Record
USN-4010-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
eximAlpine:v3.10 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.11 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.12 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.13 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.14 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.15 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.16 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.17 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.18 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.19 |
4.87 up to 4.92-r0 | 4.92-r0 |
Show 17 moreShow less
| Package | Affected | Fixed |
|---|---|---|
eximAlpine:v3.20 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.21 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.22 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.23 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.24 |
4.87 up to 4.92-r0 | 4.92-r0 |
eximAlpine:v3.8 |
4.87 up to 4.91-r2 | 4.91-r2 |
eximAlpine:v3.9 |
4.87 up to 4.92-r0 | 4.92-r0 |
exim4Debian:12 |
before 4.92~RC3-1 | 4.92~RC3-1 |
exim4Debian:13 |
before 4.92~RC3-1 | 4.92~RC3-1 |
exim4Debian:14 |
before 4.92~RC3-1 | 4.92~RC3-1 |
exim4Debian:9 |
before 4.89-2+deb9u4, plus listed versions 4.89-24.89-2+deb9u14.89-2+deb9u1~bpo8+14.89-2+deb9u24.89-2+deb9u34.89-2+deb9u3~bpo8+1 |
4.89-2+deb9u4 |
exim4Ubuntu:18.04:LTS |
before 4.90.1-1ubuntu1.2, plus listed versions 4.89-5ubuntu14.89-9ubuntu14.89-9ubuntu24.89-9ubuntu34.89-9ubuntu44.90.1-1ubuntu14.90.1-1ubuntu1.1 |
4.90.1-1ubuntu1.2 |
eximopenSUSE:Leap 15.0 |
before 4.88-lp151.4.3.1 | 4.88-lp151.4.3.1 |
eximopenSUSE:Leap 15.1 |
before 4.88-lp151.4.3.1 | 4.88-lp151.4.3.1 |
eximSUSE:Package Hub 15 SP1 |
before 4.94.2-bp151.2.4.1 | 4.94.2-bp151.2.4.1 |
libspf2SUSE:Package Hub 15 SP1 |
before 1.2.10-bp151.4.1 | 1.2.10-bp151.4.1 |
eximopenSUSE:Tumbleweed |
before 4.94.2-4.2 | 4.94.2-4.2 |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| Exploit-DB | Exim 4.87 < 4.91 - (Local / Remote) Command Execution | 2019-06-05 |
| Metasploit | Exim 4.87 - 4.91 Local Privilege Escalation | 2019-06-05 |
| PoC in GitHub | bananaphones/exim-rce-quickfix | 2019-06-10 |
| PoC in GitHub | cowbe0x004/eximrce-CVE-2019-10149 | 2019-06-12 |
| PoC in GitHub | MNEMO-CERT/PoC--CVE-2019-10149_Exim | 2019-06-13 |
| PoC in GitHub | aishee/CVE-2019-10149-quick | 2019-06-14 |
| Exploit-DB | Exim 4.87 - 4.91 - Local Privilege Escalation | 2019-06-17 |
| PoC in GitHub | AzizMea/CVE-2019-10149-privilege-escalation | 2019-06-27 |
| PoC in GitHub | Brets0150/StickyExim | 2019-07-25 |
| Exploit-DB | Exim 4.87 / 4.91 - Local Privilege Escalation (Metasploit) | 2019-08-26 |
Show 13 moreShow less
| Source | Link | Date |
|---|---|---|
| PoC in GitHub | Chris-dev1/exim.exp | 2019-09-05 |
| PoC in GitHub | darsigovrustam/CVE-2019-10149 | 2019-10-21 |
| PoC in GitHub | Diefunction/CVE-2019-10149 | 2019-10-27 |
| PoC in GitHub | Dilshan-Eranda/CVE-2019-10149 | 2020-05-12 |
| PoC in GitHub | cloudflare/exim-cve-2019-10149-data | 2020-06-03 |
| PoC in GitHub | Stick-U235/CVE-2019-10149-Exploit | 2021-07-29 |
| PoC in GitHub | rahmadsandy/EXIM-4.87-CVE-2019-10149 | 2023-03-07 |
| PoC in GitHub | hyim0810/CVE-2019-10149 | 2023-10-25 |
| PoC in GitHub | qlusec/CVE-2019-10149 | 2024-09-06 |
| PoC in GitHub | uyerr/PoC_CVE-2019-10149--rce | 2024-11-24 |
| PoC in GitHub | VoyagerOnne/Exim-CVE-2019-10149 | 2025-04-11 |
| PoC in GitHub | CybersRMUTL/CVE-2019-10149-Exim4-RCE | 2026-01-21 |
| PoC in GitHub | Ambrella-Security/CVE-2019-10149 | 2026-05-07 |
History
| Recorded | Changed | Sources |
|---|---|---|
| exploitation | ||
| affected, aliases, exploits, references | OSV | |
| first indexed | CVE List, EUVD, Exploit-DB, GitHub Advisories, CISA KEV, Metasploit, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2019-10149 is a critical vulnerability (CVSS 9.0) in Exim, published June 4, 2019. CISA lists it as known to be exploited, since January 10, 2022. EUVD reports exploitation since January 10, 2022. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 100.0%, the 99th percentile. Fixed in exim 4.92-r0.
References
openwall.com/lists/oss-security/2019/06/05/2
usn.ubuntu.com/4010-1
openwall.com/lists/oss-security/2019/06/05/3
openwall.com/lists/oss-security/2019/06/05/4
debian.org/security/2019/dsa-4456
seclists.org/bugtraq/2019/Jun/5
Show 65 moreShow less
security.gentoo.org/glsa/201906-01
openwall.com/lists/oss-security/2019/06/06/1
securityfocus.com/bid/108679
lists.opensuse.org/opensuse-security-announce/2019-06/msg00020.html
seclists.org/fulldisclosure/2019/Jun/16
openwall.com/lists/oss-security/2019/07/25/6
openwall.com/lists/oss-security/2019/07/25/7
openwall.com/lists/oss-security/2019/07/26/4
openwall.com/lists/oss-security/2021/05/04/7
bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-10149
exim.org/static/doc/security/CVE-2019-10149.txt
packetstormsecurity.com/files/153218/Exim-4.9.1-Remote-Command-Execution.html
packetstormsecurity.com/files/153312/Exim-4.91-Local-Privilege-Escalation.html
packetstormsecurity.com/files/154198/Exim-4.91-Local-Privilege-Escalation.html
cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2019-10149
nvd.nist.gov/vuln/detail/CVE-2019-10149
github.com/advisories/GHSA-5r7w-xvrp-rg22
security.alpinelinux.org/vuln/CVE-2019-10149
security-tracker.debian.org/tracker/CVE-2019-10149
ubuntu.com/security/CVE-2019-10149
ubuntu.com/security/notices/USN-4010-1
cve.org/CVERecord?id=CVE-2019-10149
cisa.gov/known-exploited-vulnerabilities-catalog
lists.opensuse.org/archives/list/[email protected]/thread/MSHI6H5JMKAAO5PV4XT32SOANX5LGJM2
bugzilla.suse.com/1136587
suse.com/security/cve/CVE-2019-10149
lists.opensuse.org/archives/list/[email protected]/thread/UMX36VOLIS2TDKA3MXOUO365NDUK5WQ3
bugzilla.suse.com/1079832
bugzilla.suse.com/1142207
bugzilla.suse.com/1154183
bugzilla.suse.com/1160726
bugzilla.suse.com/1171490
bugzilla.suse.com/1171877
bugzilla.suse.com/1173693
bugzilla.suse.com/1185631
suse.com/security/cve/CVE-2017-1000369
suse.com/security/cve/CVE-2017-16943
suse.com/security/cve/CVE-2017-16944
suse.com/security/cve/CVE-2018-6789
suse.com/security/cve/CVE-2019-13917
suse.com/security/cve/CVE-2019-15846
suse.com/security/cve/CVE-2019-16928
suse.com/security/cve/CVE-2020-12783
suse.com/security/cve/CVE-2020-28007
suse.com/security/cve/CVE-2020-28008
suse.com/security/cve/CVE-2020-28009
suse.com/security/cve/CVE-2020-28010
suse.com/security/cve/CVE-2020-28011
suse.com/security/cve/CVE-2020-28012
suse.com/security/cve/CVE-2020-28013
suse.com/security/cve/CVE-2020-28014
suse.com/security/cve/CVE-2020-28015
suse.com/security/cve/CVE-2020-28016
suse.com/security/cve/CVE-2020-28017
suse.com/security/cve/CVE-2020-28018
suse.com/security/cve/CVE-2020-28019
suse.com/security/cve/CVE-2020-28020
suse.com/security/cve/CVE-2020-28021
suse.com/security/cve/CVE-2020-28022
suse.com/security/cve/CVE-2020-28023
suse.com/security/cve/CVE-2020-28024
suse.com/security/cve/CVE-2020-28025
suse.com/security/cve/CVE-2020-28026
suse.com/security/cve/CVE-2020-8015
suse.com/security/cve/CVE-2016-9963
Left out here: the rest of 1 source description. The JSON record has them.