Upstream information

CVE-2021-29509 at MITRE

Description

Puma is a concurrent HTTP 1.1 server for Ruby/Rack applications. The fix for CVE-2019-16770 was incomplete. The original fix only protected existing connections that had already been accepted from having their requests starved by greedy persistent-connections saturating all threads in the same process. However, new connections may still be starved by greedy persistent-connections saturating all threads in all processes in the cluster. A `puma` server which received more concurrent `keep-alive` connections than the server had threads in its threadpool would service only a subset of connections, denying service to the unserved connections. This problem has been fixed in `puma` 4.3.8 and 5.3.1. Setting `queue_requests false` also fixes the issue. This is not advised when using `puma` without a reverse proxy, such as `nginx` or `apache`, because you will open yourself to slow client attacks (e.g. slowloris). The fix is very small and a git patch is available for those using unsupported versions of Puma.

SUSE information

Overall state of this security issue: Running

This issue is currently rated as having important severity.

CVSS v2 Scores
  National Vulnerability Database
Base Score 5
Vector AV:N/AC:L/Au:N/C:N/I:N/A:P
Access Vector Network
Access Complexity Low
Authentication None
Confidentiality Impact None
Integrity Impact None
Availability Impact Partial
CVSS v3 Scores
  National Vulnerability Database SUSE
Base Score 7.5 7.5
Vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Access Vector Network Network
Access Complexity Low Low
Privileges Required None None
User Interaction None None
Scope Unchanged Unchanged
Confidentiality Impact None None
Integrity Impact None None
Availability Impact High High
CVSSv3 Version 3.1 3.1
SUSE Bugzilla entry: 1188527 [NEW]

No SUSE Security Announcements cross referenced.

List of packages in QA

Product(s) Package(s)
SUSE OpenStack Cloud Crowbar 8
  • ruby2.1-rubygem-puma >= 2.16.0-3.12.1
  • ruby2.1-rubygem-puma-debuginfo >= 2.16.0-3.12.1
  • rubygem-puma-debugsource >= 2.16.0-3.12.1
SUSE OpenStack Cloud Crowbar 9
  • ruby2.1-rubygem-puma >= 2.16.0-4.12.1
  • ruby2.1-rubygem-puma-debuginfo >= 2.16.0-4.12.1
  • rubygem-puma-debugsource >= 2.16.0-4.12.1


Status of this issue by product and package

Please note that this evaluation state might be work in progress, incomplete or outdated. Also information for service packs in the LTSS phase is only included for issues meeting the LTSS criteria. If in doubt, feel free to contact us for clarification.

Product(s) Source package State
SUSE Linux Enterprise High Availability Extension 15 rubygem-puma Affected
SUSE Linux Enterprise High Availability Extension 15 SP1 rubygem-puma Affected
SUSE Linux Enterprise High Availability Extension 15 SP2 rubygem-puma Affected
SUSE OpenStack Cloud 7 rubygem-puma Unsupported
SUSE OpenStack Cloud Crowbar 8 rubygem-puma In progress
SUSE OpenStack Cloud Crowbar 9 rubygem-puma In progress