Name | CVE-2018-1000005 |
Description | libcurl 7.49.0 to and including 7.57.0 contains an out bounds read in code handling HTTP/2 trailers. It was reported (https://github.com/curl/curl/pull/2231) that reading an HTTP/2 trailer could mess up future trailers since the stored size was one byte less than required. The problem is that the code that creates HTTP/1-like headers from the HTTP/2 trailer data once appended a string like `:` to the target buffer, while this was recently changed to `: ` (a space was added after the colon) but the following math wasn't updated correspondingly. When accessed, the data is read out of bounds and causes either a crash or that the (too large) data gets passed to client write. This could lead to a denial-of-service situation or an information disclosure if someone has a service that echoes back or uses the trailers for something. |
Source | CVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
Vulnerable and fixed packages
The table below lists information on source packages.
Source Package | Release | Version | Status |
---|
curl (PTS) | jessie, jessie (lts) | 7.38.0-4+deb8u28 | fixed |
| stretch (security) | 7.52.1-5+deb9u16 | fixed |
| stretch (lts), stretch | 7.52.1-5+deb9u22 | fixed |
| buster, buster (lts) | 7.64.0-4+deb10u10 | fixed |
| buster (security) | 7.64.0-4+deb10u9 | fixed |
| bullseye | 7.74.0-1.3+deb11u13 | fixed |
| bullseye (security) | 7.74.0-1.3+deb11u14 | fixed |
| bookworm | 7.88.1-10+deb12u8 | fixed |
| bookworm (security) | 7.88.1-10+deb12u5 | fixed |
| sid, trixie | 8.11.1-1 | fixed |
The information below is based on the following data on fixed versions.
Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
---|
curl | source | wheezy | (not affected) | | | |
curl | source | jessie | (not affected) | | | |
curl | source | stretch | 7.52.1-5+deb9u4 | | | |
curl | source | (unstable) | 7.58.0-1 | | | |
Notes
[jessie] - curl <not-affected> (Vulnerable code introduce later)
[wheezy] - curl <not-affected> (Vulnerable code introduce later)
https://github.com/curl/curl/pull/2231
https://curl.haxx.se/docs/adv_2018-824a.html
Introduced by: https://github.com/curl/curl/commit/0761a51ee0551ad9e5
Patch: https://github.com/curl/curl/commit/fa3dbb9a147488a294.patch