On March 20, 2023 curl turns 25 years old. Celebrate with us online.
curl / Docs / Security Problems / SMTP end-of-response out-of-bounds read

SMTP end-of-response out-of-bounds read

Project curl Security Advisory, February 6th 2019 - Permalink


libcurl contains a heap out-of-bounds read in the code handling the end-of-response for SMTP.

If the buffer passed to smtp_endofresp() isn't NUL terminated and contains no character ending the parsed number, and len is set to 5, then the strtol() call reads beyond the allocated buffer. The read contents will not be returned to the caller.

We are not aware of any exploit of this flaw.


This bug was introduced in October 2013 in commit 2766262a68.

The Common Vulnerabilities and Exposures (CVE) project has assigned the name CVE-2019-3823 to this issue.

CWE-125: Out-of-bounds Read

Severity: Low


libcurl is used by many applications, but not always advertised as such.


A patch for CVE-2019-3823 is available.


We suggest you take one of the following actions immediately, in order of preference:

A - Upgrade curl to version 7.64.0

B - Apply the patch to your version and rebuild

C - Turn off SMTP


The issue was reported to the curl project on January 18, 2019. A patch was communicated to the reporter on January 19, 2019. We contacted distros@openwall on January 28.

curl 7.64.0 was released on February 6 2019, coordinated with the publication of this advisory.


Thanks a lot!