Puma is a HTTP 1.1 server for Ruby/Rack applications. Prior to versions 5.5.1 and 4.3.9, using `puma` with a proxy which forwards HTTP header values which contain the LF character could allow HTTP request smugggling. A client could smuggle a request through a proxy, causing the proxy to send a response back to another unknown client. The only proxy which has this behavior, as far as the Puma team is aware of, is Apache Traffic Server. If the proxy uses persistent connections and the client adds another request in via HTTP pipelining, the proxy may mistake it as the first request's body. Puma, however, would see it as two requests, and when processing the second request, send back a response that the proxy does not expect. If the proxy has reused the persistent connection to Puma to send another request for a different client, the second response from the first client will be sent to the second client. This vulnerability was patched in Puma 5.5.1 and 4.3.9. As a workaround, do not use Apache Traffic Server with `puma`.
CVSS Details
- CVSS 3.1 Base Score: 3.7
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:N)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Arch Linux | — | Upgrade to the latest version of Arch Linux | Jul 11, 2025 | Oct 12, 2021 |
| Centos_linux | — | Upgrade rubygem-unicode-display_widthUpgrade tfm-rubygem-jwtUpgrade tfm-rubygem-mime-types-dataUpgrade rubygem-oauthUpgrade rubygem-unf_ext-debugsourceUpgrade rubygem-little-pluggerUpgrade satellite-maintainUpgrade tfm-rubygem-hammer_cli_foreman_discoveryUpgrade rubygem-unicode-debuginfoUpgrade tfm-rubygem-localeUpgrade rubygem-hammer_cli_foreman_webhooksUpgrade rubygem-loggingUpgrade tfm-rubygem-hashieUpgrade tfm-rubygem-hammer_cli_foreman_remote_executionUpgrade tfm-rubygem-unicode-display_widthUpgrade rubygem-hammer_cli_foreman_tasksUpgrade rubygem-jwtUpgrade rubygem-netrcUpgrade tfm-rubygem-highlineUpgrade rubygem-hammer_cli_foreman_remote_executionUpgrade tfm-rubygem-domain_nameUpgrade foreman-cliUpgrade rubygem-hammer_cliUpgrade rubygem-rest-clientUpgrade tfm-rubygem-loggingUpgrade rubygem-hammer_cli_foremanUpgrade rubygem-hashieUpgrade rubygem-highlineUpgrade tfm-rubygem-hammer_cli_foreman_webhooksUpgrade rubygem-clampUpgrade tfm-rubygem-hammer_cli_foremanUpgrade rubygem-foreman_maintainUpgrade tfm-rubygem-netrcUpgrade tfm-rubygem-unf_ext-debuginfoUpgrade rubygem-hammer_cli_foreman_templatesUpgrade rubygem-hammer_cli_foreman_openscapUpgrade rubygem-fast_gettextUpgrade tfm-rubygem-oauthUpgrade tfm-rubygem-http-cookieUpgrade rubygem-hammer_cli_foreman_ansibleUpgrade rubygem-hammer_cli_foreman_adminUpgrade rubygem-mime-types-dataUpgrade rubygem-unfUpgrade tfm-rubygem-unicodeUpgrade tfm-rubygem-mime-typesUpgrade tfm-rubygem-hammer_cli_foreman_openscapUpgrade tfm-rubygem-clampUpgrade rubygem-localeUpgrade rubygem-hammer_cli_foreman_bootdiskUpgrade rubygem-amazing_printUpgrade rubygem-unicode-debugsourceUpgrade rubygem-hammer_cli_foreman_azure_rmUpgrade satellite-cloneUpgrade tfm-rubygem-hammer_cli_katelloUpgrade tfm-rubygem-hammer_cli_foreman_virt_who_configureUpgrade tfm-rubygem-hammer_cli_foreman_tasksUpgrade tfm-rubygem-apipie-bindingsUpgrade rubygem-domain_nameUpgrade tfm-rubygem-unf_extUpgrade rubygem-hammer_cli_foreman_discoveryUpgrade rubygem-http-cookieUpgrade tfm-rubygem-multi_jsonUpgrade satellite-cliUpgrade tfm-rubygem-hammer_cli_foreman_adminUpgrade tfm-rubygem-unicode-debuginfoUpgrade tfm-rubygem-powerbarUpgrade tfm-rubygem-hammer_cli_foreman_templatesUpgrade tfm-rubygem-amazing_printUpgrade rubygem-mime-typesUpgrade tfm-runtimeUpgrade tfm-rubygem-hammer_cli_foreman_ansibleUpgrade rubygem-unicodeUpgrade tfm-rubygem-hammer_cli_foreman_azure_rmUpgrade tfm-rubygem-fast_gettextUpgrade rubygem-multi_jsonUpgrade rubygem-apipie-bindingsUpgrade rubygem-hammer_cli_foreman_virt_who_configureUpgrade tfm-rubygem-unfUpgrade tfm-rubygem-rest-clientUpgrade tfm-rubygem-hammer_cli_foreman_bootdiskUpgrade rubygem-hammer_cli_katelloUpgrade rubygem-unf_ext-debuginfoUpgrade rubygem-unf_extUpgrade rubygem-powerbarUpgrade tfm-rubygem-little-pluggerUpgrade tfm-rubygem-hammer_cli | Jul 14, 2022 | Oct 12, 2021 |
| Debian | — | Upgrade puma | Aug 29, 2022 | Oct 12, 2021 |
| Gentoo Linux | — | Upgrade www-servers/puma. | Aug 16, 2022 | Oct 12, 2021 |
| Redhat_linux | — | Upgrade rubygem-localeUpgrade rubygem-hammer_cliUpgrade rubygem-highlineUpgrade tfm-rubygem-hammer_cli_foreman_webhooksUpgrade rubygem-fast_gettextUpgrade tfm-rubygem-hammer_cli_foreman_discoveryUpgrade rubygem-hammer_cli_foreman_remote_executionUpgrade tfm-rubygem-clampUpgrade tfm-rubygem-unicode-display_widthUpgrade rubygem-unicode-debuginfoUpgrade rubygem-hammer_cli_foreman_discoveryUpgrade tfm-rubygem-mime-types-dataUpgrade rubygem-jwtUpgrade foreman-cliUpgrade tfm-rubygem-highlineUpgrade rubygem-amazing_printUpgrade rubygem-loggingUpgrade tfm-rubygem-hammer_cli_katelloUpgrade rubygem-clampUpgrade rubygem-little-pluggerUpgrade tfm-rubygem-loggingUpgrade rubygem-unfUpgrade rubygem-unicode-debugsourceUpgrade tfm-rubygem-little-pluggerUpgrade tfm-rubygem-hammer_cli_foremanUpgrade rubygem-foreman_maintainUpgrade rubygem-oauthUpgrade rubygem-mime-types-dataUpgrade tfm-rubygem-domain_nameUpgrade rubygem-rest-clientUpgrade rubygem-hammer_cli_foreman_tasksUpgrade rubygem-hammer_cli_foreman_webhooksUpgrade tfm-rubygem-hammer_cli_foreman_virt_who_configureUpgrade tfm-rubygem-multi_jsonUpgrade tfm-rubygem-hammer_cli_foreman_azure_rmUpgrade rubygem-multi_jsonUpgrade rubygem-hammer_cli_foreman_templatesUpgrade rubygem-hammer_cli_foremanUpgrade tfm-rubygem-unicodeUpgrade rubygem-unicodeUpgrade tfm-rubygem-hammer_cliUpgrade tfm-rubygem-hammer_cli_foreman_tasksUpgrade tfm-rubygem-unicode-debuginfoUpgrade tfm-rubygem-amazing_printUpgrade tfm-rubygem-localeUpgrade tfm-rubygem-hammer_cli_foreman_templatesUpgrade rubygem-hammer_cli_foreman_bootdiskUpgrade rubygem-apipie-bindingsUpgrade satellite-cloneUpgrade rubygem-hammer_cli_foreman_openscapUpgrade tfm-rubygem-mime-typesUpgrade tfm-rubygem-hammer_cli_foreman_ansibleUpgrade tfm-rubygem-hammer_cli_foreman_bootdiskUpgrade tfm-rubygem-oauthUpgrade tfm-rubygem-powerbarUpgrade rubygem-hammer_cli_foreman_ansibleUpgrade rubygem-netrcUpgrade tfm-rubygem-hammer_cli_foreman_adminUpgrade tfm-rubygem-jwtUpgrade satellite-cliUpgrade tfm-rubygem-unfUpgrade tfm-rubygem-hashieUpgrade rubygem-unf_ext-debugsourceUpgrade rubygem-unf_extUpgrade rubygem-hammer_cli_foreman_azure_rmUpgrade tfm-rubygem-netrcUpgrade tfm-rubygem-fast_gettextUpgrade rubygem-unf_ext-debuginfoUpgrade rubygem-domain_nameUpgrade tfm-rubygem-apipie-bindingsUpgrade rubygem-hashieUpgrade rubygem-powerbarUpgrade satellite-maintainUpgrade tfm-rubygem-unf_ext-debuginfoUpgrade rubygem-hammer_cli_katelloUpgrade tfm-rubygem-hammer_cli_foreman_remote_executionUpgrade rubygem-hammer_cli_foreman_virt_who_configureUpgrade rubygem-hammer_cli_foreman_adminUpgrade tfm-rubygem-http-cookieUpgrade tfm-rubygem-hammer_cli_foreman_openscapUpgrade tfm-rubygem-rest-clientUpgrade rubygem-http-cookieUpgrade rubygem-unicode-display_widthUpgrade tfm-runtimeUpgrade rubygem-mime-typesUpgrade tfm-rubygem-unf_ext | Jul 14, 2022 | Oct 12, 2021 |
| Rocky_linux | — | Upgrade libdb-utils-debuginfoUpgrade libdb-sql-devel-debuginfoUpgrade libdb-cxx-debuginfoUpgrade libdb-debuginfoUpgrade libdb-sql-debuginfoUpgrade libdb-cxxUpgrade libdb-debugsource | Mar 12, 2024 | Oct 12, 2021 |
| Suse | — | Upgrade ruby2.5-rubygem-pumaUpgrade ruby2.5-rubygem-puma-doc | Oct 26, 2022 | Oct 12, 2021 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub