Executive brief
Guzzle, a popular PHP HTTP client library, contains a flaw in how it handles web cookies. When a website sets a 'host-only' cookie intended only for its specific domain, Guzzle incorrectly allows that cookie to be sent to subdomains as well. This could allow an attacker who controls a subdomain to steal sensitive information like session IDs or login tokens from the main site, potentially leading to unauthorized account access.
Technical details
Guzzle versions before 7.15.1 fail to correctly implement host-only cookie semantics in the CookieJar component. When a response cookie is received without a Domain attribute (or an empty one), it should be restricted to the exact originating host. Instead, Guzzle stores the request host in the cookie's Domain field and applies standard domain-matching rules, causing the cookie to be sent to subdomains. An attacker controlling a child host can capture these cookies if the same cookie jar is reused across trust boundaries. The issue is resolved in version 7.15.1, which introduces a HostOnly marker for stored cookies.
Affected products
- guzzlehttp guzzle < 7.15.1
Timeline
- 2026-07-18: advisory: Original advisory GHSA-wm3w-8rrp-j577 published
- 2026-08-01: disclosed: CVE-2026-67355 published
- 2026-08-04: patched: Fix confirmed in version 7.15.1