Security decision bypass via percent-decoded cookie names
Published Jun 19, 2020 · Updated Aug 4, 2024
Cookie prefix forgery in Rack before 2.1.4 and 2.2.0 through 2.2.2 allows remote attackers to influence security decisions via cookies. Rack::Utils.parse_cookies_header percent-decodes cookie names and collapses an encoded name with its literal equivalent, allowing the attacker-controlled first value to win. Exploitation requires an application that trusts __Host- or __Secure- cookie prefixes and an attacker able to set arbitrary cookies sent to it; the consequence is acceptance of an insecure or cross-origin request.
Summary
What happened
Cookie prefix forgery in Rack before 2.1.4 and 2.2.0 through 2.2.2 allows remote attackers to influence security decisions via cookies. Rack::Utils.parse_cookies_header percent-decodes cookie names and collapses an encoded name with its literal equivalent, allowing the attacker-controlled first value to win. Exploitation requires an application that trusts __Host- or __Secure- cookie prefixes and an attacker able to set arbitrary cookies sent to it; the consequence is acceptance of an insecure or cross-origin request.
The record
- CVE
- CVE-2020-8184
- Published
- Jun 19, 2020
- Updated
- Aug 4, 2024
- Vendor
- Rack
- Product
- Rack
- Classifications
- CWE-784, CWE-20
- Attack vector
- network
- Privileges
- unauthenticated
Timeline
How it unfolded
- Jun 19, 2020CVE publishedPublication date reported by the CVE source.
- Aug 4, 2024Record updatedLatest update available in the CVE record.
Exploitability
Present is not the same as exploitable
Compare your product and version with the public record. A matching version still requires validation against your environment.
Is a vulnerable build present?
Compare these published version ranges with your installed build and any vendor patches.
- Affected versionversion=rack >= 2.2.3, rack >= 2.1.4
What conditions does exploitation require?
What is affected?
Attacks
What attackers are doing with it
Daily unique IPs observed by Shadowserver honeypots for known exploited vulnerabilities (KEVs). Missing observations do not establish an absence of attacks.
Weakness, pattern, technique
Public exploit references
- HackerOne report 895727proof of concept · unverified
Labels summarize the accepted research assessment. They do not indicate a test against your environment.
Technologies
Your stack
See the directory against your own environment.
Your stack
Check the software in your environment
Book a demo to see how Hinoki identifies affected software and validates exploitability in your environment.
Book a demo