GitHub Advisoryadvisory · RubyGems

GHSA-rmj8-8hhh-gv5h Puma used with Rails may lead to Information Exposure

HIGH Published 2022-02-11 Modified 2022-08-16 Official page ↗
Aliases
CVE-2022-23634
Ecosystem
RubyGems
Packages
puma
Severity
High
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:H/A:N
Weaknesses
CWE-200, CWE-404
Reviewed
2022-02-11

Affected packages

• RubyGems puma: >= 5.0.0, < 5.6.2 → fixed in 5.6.2 • RubyGems puma: < 4.3.11 → fixed in 4.3.11

Description

Impact Prior to `puma` version `5.6.2`, `puma` may not always call `close` on the response body. Rails, prior to version `7.0.2.2`, depended on the response body being closed in order for its `CurrentAttributes` implementation to work correctly. From Rails: > Under certain circumstances response bodies will not be closed, for example a bug in a webserver[1] or a bug in a Rack middleware. In the event a response is not notified of a close, ActionDispatch::Executor will not know to reset thread local state for the next request. This can lead to data being leaked to subsequent requests, especially when interacting with ActiveSupport::CurrentAttributes. The combination of these two behaviors (Puma not closing the body + Rails' Executor implementation) causes information leakage. Patches This problem is fixed in Puma versions 5.6.2 and 4.3.11. This problem is fixed in Rails versions 7.02.2, 6.1.4.6, 6.0.4.6, and 5.2.6.2. See: https://github.com/advisories/GHSA-wh98-p28r-vrc9 for details about the rails vulnerability Upgrading to a patched Rails _or_ Puma version fixes the vulnerability. Workarounds Upgrade to Rails versions 7.02.2, 6.1.4.6, 6.0.4.6, and 5.2.6.2. The Rails CVE includes a middleware that can be used instead. References • Rails CVE: CVE-2022-23633 For more information If you have any questions or comments about this advisory: • Open an issue in puma • See our security policy

Related

Alias · CVE (1)

  • CVE-2022-23634 Puma is a Ruby/Rack web server built for parallelism. vulnerability

Weakness · CWE (2)

  • CWE-200 Exposure of Sensitive Information to an Unauthorized Actor weakness
  • CWE-404 Improper Resource Shutdown or Release weakness

References