CVE-2018-1000005
curl: Out-of-bounds read in code handling HTTP/2 trailers
Severity by source
Trivy's own label is CRITICAL. Rated critical by NVD. Rated lower by Amazon (high), Ubuntu (medium), Red Hat (low).
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.
Affected packages and fixed versions
| Source | Package | Fixed in |
|---|---|---|
| alpine 3.4 | curl | 7.58.0-r0 |
| alpine 3.5 | curl | 7.58.0-r0 |
| alpine 3.6 | curl | 7.58.0-r0 |
| alpine 3.7 | curl | 7.58.0-r0 |
| amazon linux 1 | curl, curl-debuginfo, libcurl and 1 more | 7.53.1-14.81.amzn1 |
| amazon linux 2 | curl, curl-debuginfo, libcurl and 1 more | 7.55.1-9.amzn2.0.1 |
| debian 11 | curl | 7.58.0-1 |
| debian 12 | curl | 7.58.0-1 |
| debian 13 | curl | 7.58.0-1 |
| debian 14 | curl | 7.58.0-1 |
| debian 9 | curl | 7.52.1-5+deb9u4 |
| echo | curl | 7.58.0-1 |
Show all 24 entries from 18 sources
| Source | Package | Fixed in |
|---|---|---|
| alpine 3.4 | curl | 7.58.0-r0 |
| alpine 3.5 | curl | 7.58.0-r0 |
| alpine 3.6 | curl | 7.58.0-r0 |
| alpine 3.7 | curl | 7.58.0-r0 |
| amazon linux 1 | curl | 7.53.1-14.81.amzn1 |
| amazon linux 1 | curl-debuginfo | 7.53.1-14.81.amzn1 |
| amazon linux 1 | libcurl | 7.53.1-14.81.amzn1 |
| amazon linux 1 | libcurl-devel | 7.53.1-14.81.amzn1 |
| amazon linux 2 | curl | 7.55.1-9.amzn2.0.1 |
| amazon linux 2 | curl-debuginfo | 7.55.1-9.amzn2.0.1 |
| amazon linux 2 | libcurl | 7.55.1-9.amzn2.0.1 |
| amazon linux 2 | libcurl-devel | 7.55.1-9.amzn2.0.1 |
| debian 11 | curl | 7.58.0-1 |
| debian 12 | curl | 7.58.0-1 |
| debian 13 | curl | 7.58.0-1 |
| debian 14 | curl | 7.58.0-1 |
| debian 9 | curl | 7.52.1-5+deb9u4 |
| echo | curl | 7.58.0-1 |
| root.io debian 11 | rootio-curl | 7.58.0-1 |
| root.io debian 12 | rootio-curl | 7.58.0-1 |
| root.io debian 13 | rootio-curl | 7.58.0-1 |
| ubuntu 16.04 | curl | 7.47.0-1ubuntu2.6 |
| ubuntu 16.04-ESM | curl | 7.47.0-1ubuntu2.6 |
| ubuntu 17.10 | curl | 7.55.1-1ubuntu2.3 |
References
- http://www.securitytracker.com/id/1040273
- https://access.redhat.com/errata/RHSA-2019:1543
- https://access.redhat.com/security/cve/CVE-2018-1000005
- https://curl.haxx.se/docs/adv_2018-824a.html
- https://github.com/curl/curl/pull/2231
- https://nvd.nist.gov/vuln/detail/CVE-2018-1000005
- https://ubuntu.com/security/notices/USN-3554-1
- https://usn.ubuntu.com/3554-1/