Bug 1756930 (CVE-2019-16928)

Summary: CVE-2019-16928 exim: remotely triggerable buffer overflow in string_vformat()
Product: [Other] Security Response Reporter: Tomas Hoger <thoger>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED NOTABUG QA Contact:
Severity: urgent Docs Contact:
Priority: urgent    
Version: unspecifiedCC: bennie.joubert, dwmw2, jskarvad, rtillery, tremble
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: exim 4.92.3 Doc Type: If docs needed, set a value
Doc Text:
A heap-based buffer overflow flaw was found in Exim. The overflow can be triggered via specially crafted SMTP-protocol EHLO message, which may lead to unauthenticated remote code execution. It is thought that the execution of the remote code would be at the exim user level although execution as the root user cannot be ruled out.
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-09-30 12:45:34 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 1756933, 1756934    
Bug Blocks: 1756931    

Description Tomas Hoger 2019-09-30 09:00:57 UTC
A heap-based buffer overflow flaw was reported in the Exim's internal function string_vformat().  Additionally, it was identified that the overflow can be triggered via specially crafted SMTP protocol EHLO message, which may lead to unauthenticated remote code execution.

Upstream bug report:

https://bugs.exim.org/show_bug.cgi?id=2449

Upstream commit:

https://git.exim.org/exim.git/commitdiff/478effbfd9c3cc5a627fc671d4bf94d13670d65f

The issue was fixed upstream in version 4.92.3.

Comment 1 Tomas Hoger 2019-09-30 09:03:49 UTC
External References:

https://exim.org/static/doc/security/CVE-2019-16928.txt

Comment 2 Tomas Hoger 2019-09-30 09:04:11 UTC
Created exim tracking bugs for this issue:

Affects: epel-all [bug 1756934]
Affects: fedora-all [bug 1756933]

Comment 3 Tomas Hoger 2019-09-30 09:10:32 UTC
This is flaw was introduced in upstream version 4.92, where string_vformat() function was changed to use growable stings:

https://git.exim.org/exim.git/commitdiff/d12746bc15d83ab821be36975da0179672708bc1
https://git.exim.org/exim.git/commitdiff/1100a343aead3a686a31652d78e4b64dc5e982e5

Earlier versions, including the version of Exim as shipped with Red Hat Enterprise Linux 5, did not contain the vulnerable code and were not affected by this issue.

Comment 5 Tomas Hoger 2019-09-30 10:49:43 UTC
The discussion on the oss-security mailing list indicates that the attacked using the EHLO command as described in the upstream bug report affects a process running with dropped privileges as exim user rather than root.  Upstream did not rule out that there may be other vectors affecting other processes running with higher privileges as root.

https://seclists.org/oss-sec/2019/q3/255

Comment 6 Product Security DevOps Team 2019-09-30 12:45:34 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2019-16928

Comment 11 Eric Christensen 2020-03-12 13:34:03 UTC
Statement:

This issue did not affect Red Hat Enterprise Linux 5 as the exim package did not contain the vulnerable code in any of our supported products.