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.
Published 2017-10-31 21:29:00
Updated 2018-11-13 11:29:08
Source MITRE
View at NVD,
Vulnerability category: Overflow

Exploit prediction scoring system (EPSS) score for CVE-2017-1000257

Probability of exploitation activity in the next 30 days EPSS Score History
~ 88 %
Percentile, the proportion of vulnerabilities that are scored at or less

CVSS scores for CVE-2017-1000257

Base Score Base Severity CVSS Vector Exploitability Score Impact Score Score Source First Seen

CWE ids for CVE-2017-1000257

  • The product performs operations on a memory buffer, but it reads from or writes to a memory location outside the buffer's intended boundary. This may result in read or write operations on unexpected memory locations that could be linked to other variables, data structures, or internal program data.
    Assigned by: (Primary)

References for CVE-2017-1000257

Products affected by CVE-2017-1000257

This web site uses cookies for managing your session, storing preferences, website analytics and additional purposes described in our privacy policy.
By using this web site you are agreeing to terms of use!