Vulnerability Note VU#804060
Cookies set via HTTP requests may be used to bypass HTTPS and reveal private information
RFC 6265 (previously RFC 2965) established HTTP State Management, also known as "cookies". In most web browser implementations of RFC 6265, cookies set via HTTP requests may allow a remote attacker to bypass HTTPS and reveal private session information.
HTTP cookies have long been known to lead to potential security issues when managing HTTP state. For example, in RFC 6265, Section 8.6:
Cookies do not provide integrity guarantees for sibling domains (and their subdomains). For example, consider foo.example.com and bar.example.com. The foo.example.com server can set a cookie with a Domain attribute of "example.com" (possibly overwriting an existing "example.com" cookie set by bar.example.com), and the user agent will include that cookie in HTTP requests to bar.example.com. In the worst case, bar.example.com will be unable to distinguish this cookie from a cookie it set itself. The foo.example.com server might be able to leverage this ability to mount an attack against bar.example.com.
as well as in RFC 6265, Section 8.5:
Cookies do not provide isolation by scheme. Although most commonly used with the http and https schemes, the cookies for a given host might also be available to other schemes, such as ftp and gopher.
According to the researchers:
Since RFC 6265 does not specify any mechanism to provide isolation and integrity guarantees, web browser implementations do not always authenticate the domain setting a cookie. A malicious attacker can utilize this to set a cookie that is later used via an HTTPS connection instead of the cookie set by the actual site; for example, an attacker may set cookies for example.com that override the real cookie for www.example.com when the victim is loading HTTPS content. By exploiting other weaknesses in the server, the attacker-controlled cookie may be used to obtain private information. Note that typical Same Origin Policy (RFC 6454) does not apply to cookies and so does not mitigate this attack.
For more details on how an HTTPS session may be compromised by this attack, please see the research paper by Zheng, et. al., published at USENIX Security 2015.
Some web browser vendors have noted previous attempts at more secure cookie management have been foiled due to the lack of a widely implemented standard.
The IETF HTTP State Management Mechanism (httpstate) Working Group that drafted RFC 6265 was concluded in April 2011.
A remote attacker may be able to obtain private information from a victim's HTTPS session.
A complete solution may include future updates to RFC 6265 and/or RFC 6454 to enable safer handling of cookies via an updated same origin policy for cookies.
Deploy HSTS on top-level domain
Vendor Information (Learn More)
|Vendor||Status||Date Notified||Date Updated|
|Apple||Affected||19 May 2015||28 Oct 2015|
|Affected||19 May 2015||31 Aug 2015|
|Microsoft Corporation||Affected||19 May 2015||16 Sep 2015|
|Mozilla||Affected||19 May 2015||31 Aug 2015|
|Opera||Affected||19 May 2015||16 Sep 2015|
|Vivaldi||Affected||17 Aug 2015||16 Sep 2015|
CVSS Metrics (Learn More)
Thanks to Jian Jiang, Nicholas Weaver, et. al., for disclosing this vulnerability at USENIX Security 2015.
This document was written by Garret Wassermann.
- CVE IDs: Unknown
- Date Public: 13 Aug 2015
- Date First Published: 24 Sep 2015
- Date Last Updated: 28 Oct 2015
- Document Revision: 87
If you have feedback, comments, or additional information about this vulnerability, please send us email.