Every CVE Search/ Get API key

CVE-2017-1000099

When asking to get a file from a file:// URL, libcurl provides a feature that outputs meta-data...

6.5 MediumFix available

When asking to get a file from a file:// URL, libcurl provides a feature that outputs meta-data about the file using HTTP-like headers. The code doing this would send the wrong buffer to the user (stdout or the application's provide callback), which could lead to other private data from the heap to get inadvertently displayed. The wrong buffer was an uninitialized memory area allocated on the heap and if it turned out to not contain any zero byte, it would continue and display the data following that buffer in memory.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
Required

What an attacker can affect

Confidentiality
High
Integrity
None
Availability
None

Exploit likelihood

2.65%Up 1.6 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 6.5

When asking to get a file from a file:// URL, libcurl provides a feature that outputs meta-data about the file using HTTP-like headers. The code doing this would send the wrong buffer to the user (stdout or the application's provide callback), which could lead to other private data from the heap to get inadvertently displayed. The wrong buffer was an uninitialized memory area allocated on the heap and if it turned out to not contain any zero byte, it would continue and display the data following that buffer in memory.

Record
CVE-2017-1000099
CVSS 3.0
6.5 MediumCVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
CVSS 2.0
4.3 MediumAV:N/AC:M/Au:N/C:P/I:N/A:N
Weakness
CWE-200
Updated
2026-11-02
CVE List No score

When asking to get a file from a file:// URL, libcurl provides a feature that outputs meta-data about the file using HTTP-like headers. The code doing this would send the wrong buffer to the user (stdout or the application's provide callback), which could lead to other private data from the heap to get inadvertently displayed. The wrong buffer was an uninitialized memory area allocated on the heap and if it turned out to not contain any zero byte, it would continue and display the data following that buffer in memory.

Record
CVE-2017-1000099
Updated
2026-11-02
EUVDEUVD-2017-1403 No score

When asking to get a file from a file:// URL, libcurl provides a feature that outputs meta-data about the file using HTTP-like headers. The code doing this would send the wrong buffer to the user (stdout or the application's provide callback), which could lead to other private data from the heap to get inadvertently displayed. The wrong buffer was an uninitialized memory area allocated on the heap and if it turned out to not contain any zero byte, it would continue and display the data following that buffer in memory.

Record
EUVD-2017-1403
Updated
2026-11-03
GitHub AdvisoriesGHSA-q937-ph5c-26qf 6.5

When asking to get a file from a file:// URL, libcurl provides a feature that outputs meta-data...

When asking to get a file from a file:// URL, libcurl provides a feature that outputs meta-data about the file using HTTP-like headers. The code doing this would send the wrong buffer to the user (stdout or the application's provide callback), which could lead to other private data from the heap to get inadvertently displayed. The wrong buffer was an uninitialized memory area allocated on the heap and if it turned out to not contain any zero byte, it would continue and display the data following that buffer in memory.

Record
GHSA-q937-ph5c-26qf
CVSS 3.0
6.5 MediumCVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
Weakness
CWE-200
Updated
2026-11-02
OSVALPINE-CVE-2017-1000099 6.5

When asking to get a file from a file:// URL, libcurl provides a feature that outputs meta-data about the file using HTTP-like headers. The code doing this would send the wrong buffer to the user (stdout or the application's provide callback), which could lead to other private data from the heap to get inadvertently displayed. The wrong buffer was an uninitialized memory area allocated on the heap and if it turned out to not contain any zero byte, it would continue and display the data following that buffer in memory.

Record
ALPINE-CVE-2017-1000099
CVSS 3.0
6.5 MediumCVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
Updated
2026-11-02
OSVBELL-CVE-2017-1000099 6.5

CVE-2017-1000099 does not affect BellSoft software

Record
BELL-CVE-2017-1000099
CVSS 3.0
6.5 MediumCVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
Updated
2026-11-02
Show 4 moreShow less
OSV 6.5

When asking to get a file from a file:// URL, libcurl provides a feature that outputs meta-data about the file using HTTP-like headers. The code doing this would send the wrong buffer to the user (stdout or the application's provide callback), which could lead to other private data from the heap to get inadvertently displayed. The wrong buffer was an uninitialized memory area allocated on the heap and if it turned out to not contain any zero byte, it would continue and display the data following that buffer in memory.

Record
CVE-2017-1000099
CVSS 3.0
6.5 MediumCVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N
Updated
2026-11-02
OSVCURL-CVE-2017-1000099 No score

FILE buffer read out of bounds

When asking to get a file from a file:// URL, libcurl provides a feature that outputs meta-data about the file using HTTP-like headers.

The code doing this would send the wrong buffer to the user (stdout or the application's provide callback), which could lead to other private data from the heap to get inadvertently displayed.

The wrong buffer was an uninitialized memory area allocated on the heap and if it turned out to not contain any zero byte, it would continue and display the data following that buffer in memory.

Record
CURL-CVE-2017-1000099
Updated
2026-11-02
OSVMGASA-2017-0281 No score

Updated curl packages fix security vulnerabilities

When asking to get a file from a file:// URL, libcurl provides a feature that outputs meta-data about the file using HTTP-like headers. The code doing this would send the wrong buffer to the user (stdout or the application's provide callback), which could lead to other private data from the heap to get inadvertently displayed. The wrong buffer was an uninitialized memory area allocated on the heap and if it turned out to not contain any zero byte, it would continue and display the data following that buffer in memory (CVE-2017-1000099).

When doing a TFTP transfer and curl/libcurl is given a URL that contains a very long file name (longer than about 515 bytes), the file name is truncated to fit within the buffer boundaries, but the buffer size is still wrongly updated to use the untruncated length. This too large value is then used in the sendto() call, making curl attempt to send more data than what is actually put into the buffer. The sendto() function will then read beyond the end of the heap based buffer. A malicious HTTP(S) server could redirect a vulnerable libcurl-using client to a crafted TFTP URL (if the client hasn't restricted which protocols it allows redirects to) and trick it to send private memory contents to a remote server over UDP. Limit curl's redirect protocols with --proto-redir and libcurl's with CURLOPT_REDIR_PROTOCOLS (CVE-2017-1000100).

curl supports "globbing" of URLs, in which a user can pass a numerical range to have the tool iterate over those numbers to do a sequence of transfers. In the globbing function that parses the numerical range, there was an omission that made curl read a byte beyond the end of the URL if given a carefully crafted, or just wrongly written, URL. The URL is stored in a heap based buffer, so it could then be made to wrongly read something else instead of crashing (CVE-2017-1000101).

Record
MGASA-2017-0281
Updated
2026-11-02
OSVopenSUSE-SU-2024:10582-1 No score

curl-7.79.1-1.1 on GA media

These are all security issues fixed in the curl-7.79.1-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:10582-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
curl
Alpine:v3.10
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.11
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.12
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.13
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.14
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.15
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.16
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.17
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.18
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.19
before 7.55.0-r0
7.55.0-r0
Show 14 moreShow less
Affected packages
PackageAffectedFixed
curl
Alpine:v3.20
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.21
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.22
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.23
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.24
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.3
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.4
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.5
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.6
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.7
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.8
before 7.55.0-r0
7.55.0-r0
curl
Alpine:v3.9
before 7.55.0-r0
7.55.0-r0
curl
Mageia:6
before 7.54.1-2.2.mga6
7.54.1-2.2.mga6
curl
openSUSE:Tumbleweed
before 7.79.1-1.1
7.79.1-1.1

History

History
RecordedChangedSources
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2017-1000099 is a medium vulnerability (CVSS 6.5) in Haxx Libcurl, published August 9, 2017. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 2.65%, the 85th percentile. Fixed in curl 7.55.0-r0.

References

Show 55 moreShow less
MoveEnter Open