CVE-2022-24790
Published: 30 March 2022
Puma 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.
Notes
Author | Note |
---|---|
alexmurray | for focal the patch needs to be backported manually along with the fix for CVE-2020-11076 |
Priority
Status
Package | Release | Status |
---|---|---|
puma Launchpad, Ubuntu, Debian |
focal |
Released
(3.12.4-1ubuntu2+esm1)
Available with Ubuntu Pro |
impish |
Ignored
(end of life)
|
|
jammy |
Released
(5.5.2-2ubuntu2+esm1)
Available with Ubuntu Pro |
|
kinetic |
Ignored
(end of life, was needed)
|
|
lunar |
Not vulnerable
(5.6.5-3ubuntu1)
|
|
mantic |
Not vulnerable
(5.6.5-3ubuntu1)
|
|
noble |
Not vulnerable
(5.6.5-3ubuntu1)
|
|
trusty |
Ignored
(end of standard support)
|
|
upstream |
Needs triage
|
|
xenial |
Ignored
(end of standard support)
|
|
Patches: upstream: https://github.com/puma/puma/commit/5bb7d202e24dec00a898dca4aa11db391d7787a5 |
Severity score breakdown
Parameter | Value |
---|---|
Base score | 7.5 |
Attack vector | Network |
Attack complexity | Low |
Privileges required | None |
User interaction | None |
Scope | Unchanged |
Confidentiality | None |
Integrity impact | High |
Availability impact | None |
Vector | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N |