CVE-2026-55767·PHP vulnerability
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.
- Severity
- medium
- Software
- PHP
- Fixed in
- 7.12.1
- Published
- 2026-06-23
Affected versions
Until: 7.12.1
Fixed in: 7.12.1
How to fix this CVE
Update PHP and the Guzzle HTTP client library to version 7.12.1 or later to resolve this cookie handling vulnerability. The fix ensures that cookies with malformed domain attributes are properly rejected, preventing cookie injection attacks across unrelated hosts that share the same cookie jar.
sudo dnf update php php-curlDefensia detects this vulnerability
How to check if you are affected
- Step 1: Check the installed PHP version and Guzzle library: php -v && composer show guzzlehttp/guzzle
- Step 2: Verify Guzzle version is below 7.12.1 by examining vendor/guzzlehttp/guzzle/composer.json or running composer show guzzlehttp/guzzle | grep versions
- Step 3: Search application logs for Set-Cookie headers with empty or whitespace-padded Domain attributes using: grep -i 'Set-Cookie.*Domain=' /var/log/apache2/*.log /var/log/nginx/*.log | grep -E 'Domain=\s*$|Domain=\.+\s*$'
- Step 4: After updating, re-run composer show guzzlehttp/guzzle to confirm version is 7.12.1 or higher
FAQ
What is CVE-2026-55767?
CVE-2026-55767 is a cookie validation flaw in Guzzle's CookieJar that allows malformed domain attributes (empty or dot-only values) to be accepted and stored, enabling attackers to inject cookies that are sent to unrelated hosts when the same jar is reused across multiple requests.
Is CVE-2026-55767 being actively exploited?
No, CVE-2026-55767 is not listed in the CISA Known Exploited Vulnerabilities catalog and no public exploits are currently available.
What versions of PHP are affected by CVE-2026-55767?
All versions of Guzzle below 7.12.1 are affected. The vulnerability exists in the CookieJar component, so any PHP application using Guzzle versions prior to 7.12.1 is at risk.
How do I check if my server is vulnerable to CVE-2026-55767?
Run 'composer show guzzlehttp/guzzle' in your application root directory. If the version shown is below 7.12.1, your application is vulnerable.
Does Defensia detect CVE-2026-55767?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If PHP with Guzzle is installed on a monitored server, CVE-2026-55767 will appear in your dashboard with remediation steps.
Related PHP CVEs
References
- https://github.com/FriendsOfPHP/security-advisories/blob/master/guzzlehttp/guzzle/CVE-2026-55767.yaml
- https://github.com/guzzle/guzzle/commit/7f537cded1912349abf5081258d6db19106d774d
- https://github.com/guzzle/guzzle/pull/3653
- https://github.com/guzzle/guzzle/releases/tag/7.12.1
- https://github.com/guzzle/guzzle/security/advisories/GHSA-cwxw-98qj-8qjx
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2026-55767. Free for 1 server.
Get started free