SOC status:Duty analyst on shift

UK Cyber Defence
VulnerabilityModified

CVE-2017-1000257

The strlen() is called on a heap based buffer that might not be zero terminated so libcurl might read beyond the end of it into whatever memory lies after (or just crash) and then deliver that to the application as if it was actually downloaded.

CRITICAL 9.1EPSS 6.22%

Does this matter?

High impact if exploited, but EPSS currently rates exploitation as unlikely (6.22%). Schedule it in the normal patch cycle and watch for a rise in EPSS or a public exploit.

Description

An IMAP FETCH response line indicates the size of the returned data, in number of bytes. When that response says the data is zero bytes, libcurl would pass on that (non-existing) data with a pointer and the size (zero) to the deliver-data function. libcurl's deliver-data function treats zero as a magic number and invokes strlen() on the data to figure out the length. The strlen() is called on a heap based buffer that might not be zero terminated so libcurl might read beyond the end of it into whatever memory lies after (or just crash) and then deliver that to the application as if it was actually downloaded.

CVSS 3.1
9.1 CRITICALCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
EPSS
6.22% probability · 93th percentile
CISA KEV
Not listed
Weakness
CWE-119
Affected
haxx/libcurl · debian/debian linux
Source
cve@mitre.org

Source: NVD record, EPSS from FIRST.org, KEV from CISA. Refreshed daily.