CVE-2022-24790

NameCVE-2022-24790
DescriptionPuma is a simple, fast, multi-threaded, parallel HTTP 1.1 server for Ruby/Rack applications. When using Puma behind a proxy that does not properly validate that the incoming HTTP request matches the RFC7230 standard, Puma and the frontend proxy may disagree on where a request starts and ends. This would allow requests to be smuggled via the front-end proxy to Puma. The vulnerability has been fixed in 5.6.4 and 4.3.12. Users are advised to upgrade as soon as possible. Workaround: when deploying a proxy in front of Puma, turning on any and all functionality to make sure that the request matches the RFC7230 standard.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
ReferencesDLA-3083-1, DSA-5146-1
Debian Bugs1008723

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
puma (PTS)stretch (security), stretch (lts), stretch3.6.0-1+deb9u2vulnerable
buster (security), buster, buster (lts)3.12.0-2+deb10u3fixed
bullseye4.3.8-1+deb11u2fixed
bullseye (security)4.3.8-1+deb11u3fixed
bookworm5.6.5-3fixed
sid, trixie6.4.3-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
pumasourcebuster3.12.0-2+deb10u3DLA-3083-1
pumasourcebullseye4.3.8-1+deb11u2DSA-5146-1
pumasource(unstable)5.6.4-11008723

Notes

[stretch] - puma <no-dsa> (possibly introduces regressions)
https://github.com/puma/puma/security/advisories/GHSA-h99w-9q5r-gjq9
https://github.com/puma/puma/commit/5bb7d202e24dec00a898dca4aa11db391d7787a5 (5-6-stable)
https://github.com/puma/puma/commit/6c514e70f5ae0ff14c9b0091fa84bfa39b022025 (v5.6.3)

Search for package or bug name: Reporting problems