CVE-2023-40175
rubygem-puma: HTTP request smuggling when parsing chunked transfer encoding bodies and zero-length content-length headers
Severity by source
Trivy's own label is CRITICAL. Rated critical by NVD, GHSA. Rated lower by Red Hat (medium), Ruby Advisory DB (medium), Ubuntu (medium).
Description
Puma is a Ruby/Rack web server built for parallelism. Prior to versions 6.3.1 and 5.6.7, puma exhibited incorrect behavior when parsing chunked transfer encoding bodies and zero-length Content-Length headers in a way that allowed HTTP request smuggling. Severity of this issue is highly dependent on the nature of the web site using puma is. This could be caused by either incorrect parsing of trailing fields in chunked transfer encoding bodies or by parsing of blank/zero-length Content-Length headers. Both issues have been addressed and this vulnerability has been fixed in versions 6.3.1 and 5.6.7. Users are advised to upgrade. There are no known workarounds for this vulnerability.
Affected packages and fixed versions
| Source | Package | Fixed in |
|---|---|---|
| rubygems::GitHub Security Advisory RubyGems | puma | 5.6.7, 6.3.1 |
| debian 10 | puma | no fix listed |
| debian 11 | puma | no fix listed |
| debian 12 | puma | 5.6.5-3+deb12u1 |
| debian 13 | puma | 5.6.7-1 |
| debian 14 | puma | 5.6.7-1 |
| echo | puma | 5.6.5-3+deb12u1 |
| rapidfort ubuntu 20.04 | puma | 0:5.6.5-3ubuntu1.1 |
| rapidfort ubuntu 22.04 | puma | 0:5.6.5-3ubuntu1.1 |
| rapidfort ubuntu 24.04 | puma | 0:5.6.5-3ubuntu1.1 |
| Red Hat | rubygem-puma, rubygem-puma-doc, tfm-rubygem-puma | no fix listed |
| rubygems::Ruby Advisory Database | puma | ~> 5.6.7, >= 6.3.1 |
Show all 24 entries from 22 sources
| Source | Package | Fixed in |
|---|---|---|
| rubygems::GitHub Security Advisory RubyGems | puma | 5.6.7, 6.3.1 |
| debian 10 | puma | no fix listed |
| debian 11 | puma | no fix listed |
| debian 12 | puma | 5.6.5-3+deb12u1 |
| debian 13 | puma | 5.6.7-1 |
| debian 14 | puma | 5.6.7-1 |
| echo | puma | 5.6.5-3+deb12u1 |
| rapidfort ubuntu 20.04 | puma | 0:5.6.5-3ubuntu1.1 |
| rapidfort ubuntu 22.04 | puma | 0:5.6.5-3ubuntu1.1 |
| rapidfort ubuntu 24.04 | puma | 0:5.6.5-3ubuntu1.1 |
| Red Hat | rubygem-puma | no fix listed |
| Red Hat | rubygem-puma-doc | no fix listed |
| Red Hat | tfm-rubygem-puma | no fix listed |
| rubygems::Ruby Advisory Database | puma | ~> 5.6.7, >= 6.3.1 |
| ubuntu 20.04-ESM | puma | 3.12.4-1ubuntu2+esm1 |
| ubuntu 22.04 | puma | no fix listed |
| ubuntu 23.04 | puma | 5.6.5-3ubuntu1.1 |
| ubuntu 23.10 | puma | 5.6.5-4ubuntu2 |
| ubuntu 24.04 | puma | 5.6.5-4ubuntu2 |
| ubuntu 24.10 | puma | 5.6.5-4ubuntu2 |
| ubuntu 25.04 | puma | 5.6.5-4ubuntu2 |
| ubuntu 25.10 | puma | 5.6.5-4ubuntu2 |
| ubuntu 26.04 | puma | 5.6.5-4ubuntu2 |
| ubuntu 26.10 | puma | 5.6.5-4ubuntu2 |
References
- https://access.redhat.com/security/cve/CVE-2023-40175
- https://github.com/advisories/GHSA-68xg-gqqm-vgj8
- https://github.com/puma/puma
- https://github.com/puma/puma/commit/690155e7d644b80eeef0a6094f9826ee41f1080a
- https://github.com/puma/puma/commit/7405a219801dcebc0ad6e0aa108d4319ca23f662
- https://github.com/puma/puma/commit/ed0f2f94b56982c687452504b95d5f1fbbe3eed1
- https://github.com/puma/puma/releases/tag/v5.6.7
- https://github.com/puma/puma/releases/tag/v6.3.1
All 14 references
- https://github.com/puma/puma/security/advisories/GHSA-68xg-gqqm-vgj8
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/puma/CVE-2023-40175.yml
- https://nvd.nist.gov/vuln/detail/CVE-2023-40175
- https://ubuntu.com/security/notices/USN-6399-1
- https://ubuntu.com/security/notices/USN-6682-1
- https://www.cve.org/CVERecord?id=CVE-2023-40175