GitHub Advisoryadvisory · RubyGems
GHSA-84j7-475p-hp8v HTTP Response Splitting in Puma
MEDIUM
Official page ↗
- Aliases
- CVE-2020-5247
- Ecosystem
- RubyGems
- Packages
- puma
- Severity
- Moderate
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:L
- Weaknesses
- CWE-113
- Reviewed
- 2020-02-28
Affected packages
• RubyGems puma: < 3.12.4 → fixed in 3.12.4
• RubyGems puma: >= 4.0.0, < 4.3.3 → fixed in 4.3.3
Description
In Puma (RubyGem) before 4.3.2 and 3.12.3, if an application using Puma allows untrusted input in a response header, an attacker can use newline characters (i.e. `CR`, `LF` or`/r`, `/n`) to end the header and inject malicious content, such as additional headers or an entirely new response body. This vulnerability is known as HTTP Response Splitting.
While not an attack in itself, response splitting is a vector for several other attacks, such as cross-site scripting (XSS).
This is related to CVE-2019-16254, which fixed this vulnerability for the WEBrick Ruby web server.
This has been fixed in versions 4.3.2 and 3.12.3 by checking all headers for line endings and rejecting headers with those characters.
Related
Alias · CVE (1)
- CVE-2020-5247 In Puma (RubyGem) before 4.3.2 and before 3.12.3, if an application using Puma allows untrusted input in a response header, an attacker can… vulnerability
Weakness · CWE (1)
- CWE-113 Improper Neutralization of CRLF Sequences in HTTP Headers weakness
References
- https://github.com/puma/puma/security/advisories/GHSA-84j7-475p-hp8v web
- https://nvd.nist.gov/vuln/detail/CVE-2020-5247 advisory
- https://github.com/puma/puma/commit/c36491756f68a9d6a8b3a49e7e5eb07fe6f1332f web
- https://github.com/puma/puma package
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/puma/CVE-2020-5247.yml web
- https://lists.debian.org/debian-lts-announce/2022/05/msg00034.html web
- https://lists.fedoraproject.org/archives/list/[email protected]/message/BMJ3CGZ3DLBJ5WUUKMI5ZFXFJQMXJZIK web
- https://lists.fedoraproject.org/archives/list/[email protected]/message/DIHVO3CQMU7BZC7FCTSRJ33YDNS3GFPK web
- https://lists.fedoraproject.org/archives/list/[email protected]/message/NJ3LL5F5QADB6LM46GXZETREAKZMQNRD web
- https://owasp.org/www-community/attacks/HTTP_Response_Splitting web
- https://www.ruby-lang.org/en/news/2019/10/01/http-response-splitting-in-webrick-cve-2019-16254 web