Puma is a Ruby/Rack web server built for parallelism. 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. The combination of these two behaviors (Puma not closing the body + Rails' Executor implementation) causes information leakage. 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. Upgrading to a patched Rails _or_ Puma version fixes the vulnerability.
2022-02-11T22:15:07.817
2024-11-21T06:48:58.950
Modified
CVSSv3.1: 8.0 (HIGH)
AV:N/AC:M/Au:N/C:P/I:N/A:N
8.6
2.9
Type | Vendor | Product | Version/Range | Vulnerable? |
---|---|---|---|---|
Application | puma | puma | < 4.3.11 | Yes |
Application | puma | puma | < 5.6.2 | Yes |
Application | rubyonrails | rails | < 5.2.6.2 | Yes |
Application | rubyonrails | rails | < 6.0.4.6 | Yes |
Application | rubyonrails | rails | < 6.1.4.6 | Yes |
Application | rubyonrails | rails | < 7.0.2.2 | Yes |
Operating System | debian | debian_linux | 9.0 | Yes |
Operating System | debian | debian_linux | 10.0 | Yes |
Operating System | debian | debian_linux | 11.0 | Yes |
Operating System | fedoraproject | fedora | 35 | Yes |
Operating System | fedoraproject | fedora | 36 | Yes |
Operating System | fedoraproject | fedora | 37 | Yes |