Vulnerability advisory
CVE-2026-55767
Guzzle: Dot-Only Cookie Domains Match All Hosts in guzzlehttp/guzzle
Also known as GHSA-cwxw-98qj-8qjx
- CVSS 3.x
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:N/I:L/A:N
Affected versions
Repository
| Affected commits | Fixed by commit |
|---|---|
| GIT github.com/guzzle/guzzle ↗ | |
| All commits before d34627490fbc03bf5c5d7cfed81f2faa19519425 | d34627490fbc03bf5c5d7cfed81f2faa19519425 |
| Not specified | 7f537cded1912349abf5081258d6db19106d774d |
Also listed as affected (141)
| |
Description
Guzzle is an extensible PHP HTTP client. Prior to 7.12.1, CookieJar incorrectly accepts cookies with a dot-only Domain attribute and whitespace-padded variants. SetCookie::matchesDomain() removes leading dots from the cookie domain, normalizing dot-only values to the empty string; SetCookie::validate() only rejected a strictly empty domain, so these cookies could be stored and the empty normalized domain was treated as matching any request host. An attacker-controlled origin that an application requests with a shared cookie jar can therefore set a cookie that Guzzle later sends to unrelated hosts using the same jar. This may allow cookie injection or session fixation against downstream services, depending on how those services interpret the injected cookie. This vulnerability is fixed in 7.12.1.
References
- Webgithub.com/guzzle/guzzle/releases/tag/7.12.1 ↗
- Advisorygithub.com/CVEProject/cvelistV5/tree/main/cves/2026/55xxx/CVE-2026-55767.json ↗
- Advisorygithub.com/FriendsOfPHP/security-advisories/blob/master/guzzlehttp/guzzle/CVE-2026-55767.yaml ↗
- Advisorygithub.com/guzzle/guzzle/security/advisories/GHSA-cwxw-98qj-8qjx ↗
- Advisorynvd.nist.gov/vuln/detail/CVE-2026-55767 ↗
- Fixgithub.com/guzzle/guzzle/commit/7f537cded1912349abf5081258d6db19106d774d ↗
- Fixgithub.com/guzzle/guzzle/pull/3653 ↗