Skip to main content

Guzzle HTTP Client EUVDEUVD-2026-51845

| CVE-2026-67355 HIGH
Insertion of Sensitive Information Into Sent Data (CWE-201)
2026-08-01 VulnCheck GHSA-mjrx-74jh-7xgw
8.2
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Attacker controls child.example.com
  2. Delivery
    Application authenticates to parent host via Guzzle
  3. Exploit
    Parent sets host-only cookie with no Domain attribute
  4. Install
    Guzzle incorrectly widens scope by storing request host in Domain field
  5. C2
    Application makes subsequent request to child subdomain using same CookieJar
  6. Execute
    Guzzle transmits host-only cookie to attacker-controlled child host
  7. Impact
    Attacker captures session token and replays against parent

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Outbound data filtering
Exploitation Conditions

Exploitation requires all four of the following conditions simultaneously: (1) the application must enable Guzzle's built-in cookie support by passing a CookieJar (CookieJar, FileCookieJar, or SessionCookieJar) to the Guzzle client - applications that do not use Guzzle's cookie support are entirely unaffected; (2) the application must reuse the same CookieJar instance across requests to both a parent host (e.g., example.com) and at least one of its subdomains (e.g., child.example.com); (3) the parent host must set a cookie without a Domain attribute or with an empty Domain attribute, making it host-only; (4) the attacker must control or be able to observe traffic to the child subdomain. Exploitation is further limited by the cookie's own restrictions - path must match, Secure cookies are only sent over TLS, and expired cookies are not forwarded. Applications using a separate jar per host or trust boundary, applications that never request a less-trusted subdomain with the same jar, and applications whose servers only set cookies with an explicit non-empty Domain attribute are not affected.

Impact

The CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N) scores 8.2 but the AC:H and AT:P metrics are critical context: exploitation requires a specific, non-default application architecture - a shared CookieJar reused across a trust boundary involving a subdomain the attacker controls or observes. In practice, many Guzzle deployments use per-request or per-session jars, or do not request subdomains from the same jar, which eliminates the attack surface entirely. There is no CISA KEV listing and no public proof-of-concept code, meaning this is not being opportunistically exploited at scale. EPSS data is absent from the provided intelligence. The real-world priority is medium-high for applications that aggregate API calls across multiple subdomains under the same origin using a shared persistent jar - a pattern seen in microservice or multi-tenant architectures. For single-host API clients, practical risk is near zero. The high CVSS score is technically defensible but overstates operational urgency for most deployments.

Exploit ScenarioDerived

An attacker registers or compromises child.example.com. A PHP backend using Guzzle authenticates to example.com, which responds with a host-only Set-Cookie: sid=secret (no Domain attribute). The application later makes a Guzzle request to child.example.com using the same CookieJar - Guzzle forwards the sid=secret cookie to the attacker-controlled host, which captures the session token and replays it against example.com to impersonate the PHP backend. No public proof-of-concept exists at time of analysis.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 01, 2026

Cookie scope leakage in guzzlehttp/guzzle before 7.15.1 allows an attacker controlling a child subdomain to receive host-only session cookies intended exclusively for the parent host. Guzzle's CookieJar incorrectly stores the originating request host in the cookie's Domain field rather than marking it host-only, causing ordinary domain-matching logic to forward the cookie to subdomains - exposing session identifiers and authorization tokens. No public exploit identified at time of analysis, but the CVSS 4.0 score of 8.2 reflects high confidentiality impact when the specific exploitation conditions are met.

RemediationAI

Vendor-released patch: 7.15.1. Upgrade guzzlehttp/guzzle to version 7.15.1 or later via Composer (composer require guzzlehttp/guzzle:^7.15.1). The fix introduces a HostOnly boolean marker in cookie storage and enforces exact-host matching for cookies without a valid Domain attribute; persistent jars (FileCookieJar, SessionCookieJar) now validate this marker on load and reject records missing it. The official advisory is at https://github.com/guzzle/guzzle/security/advisories/GHSA-wm3w-8rrp-j577. For applications that cannot upgrade immediately, use a separate CookieJar instance per host or trust boundary - this eliminates cross-host cookie sharing entirely with no other side effects. Alternatively, avoid enabling Guzzle's built-in cookie support (do not pass a CookieJar to the client) and manage cookies manually if the application does not require subdomain cookie sharing. Note that the workarounds require application-level refactoring and may not be feasible for complex API aggregation layers.

Affected VersionsENISA

guzzle 0 <7.15.1

Affected Packages

composer guzzlehttp/guzzle fix: 7.15.1
euvd guzzle fix: 7.15.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in composer, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Guzzle is a widely-used PHP HTTP client library (cpe:2.3:a:guzzle:guzzle:*:*:*:*:*:*:*:*). Per RFC 6265, a cookie set without a Domain attribute - or with an empty Domain - is 'host-only' and must be returned solely to the exact originating host. Guzzle's CookieJar violated this by storing the request host string in the Domain field and then applying standard domain suffix-matching rules, effectively promoting a host-only cookie to a domain-scoped cookie. This behavior also propagated through FileCookieJar and SessionCookieJar, meaning persisted and reloaded cookie jars retained the widened scope. CWE-201 (Insertion of Sensitive Information Into Sent Data) captures the root cause: the library transmits sensitive cookie material to a recipient - a child host - that the originating server never authorized to receive it.

Know when Guzzle gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 8.2 HIGH
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.9 MEDIUM

Network vector with high complexity (requires shared jar across trust boundary and attacker-controlled subdomain); no auth needed; confidentiality-only impact; no scope change.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Red Hat 5.9 MEDIUM

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Aug 01, 2026 - 13:01 EUVD
CVE Published
Aug 01, 2026 - 12:22 cve.org
HIGH 8.2

DescriptionCVE.org

guzzlehttp/guzzle versions before 7.15.1 fail to preserve host-only cookie scope, storing the request host in the Domain field instead of marking cookies as host-only. Attackers controlling child hosts can receive host-only cookies intended only for parent hosts, potentially disclosing session identifiers and authorization tokens when the same cookie jar is reused across trust boundaries.

Executive ViewAI

Why It Matters

guzzlehttp/guzzle before 7.15.1 improperly handles cookie scope, leaking session cookies and authentication tokens to attacker-controlled subdomains. Organizations using this HTTP client library face potential compromise of user sessions and API credentials if an attacker can establish a presence on a child domain.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 86% exploitable
Prevalence
High
dominant PHP HTTP client used by Laravel and most major PHP frameworks
Social Media
3
Sightings
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment Vendor CIRCL GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

41
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +41
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Guzzle

View all
CVE-2026-69246 HIGH POC
7.2 Aug 03

Host confusion in GuzzleHttp Guzzle before 7.15.2 and 8.0.1 allows remote attackers who can influence a fetched URI to b

CVE-2026-69245 MEDIUM POC
6.5 Aug 03

Cookie domain scope bypass in Guzzle PHP HTTP client (prior to 7.15.2 and 8.0.1) allows improper cookie sharing via non-

CVE-2026-67354 HIGH
8.2 Aug 01

URI fragment leakage in guzzlehttp/guzzle's RedirectMiddleware (versions before 7.15.1) exposes sensitive client-side da

CVE-2022-29248 HIGH
8.1 May 25

Guzzle is a PHP HTTP client. Rated high severity (CVSS 8.1), this vulnerability is remotely exploitable, no authenticati

CVE-2022-31091 HIGH
7.7 Jun 27

Guzzle, an extensible PHP HTTP client. Rated high severity (CVSS 7.7), this vulnerability is remotely exploitable, low a

CVE-2022-31090 HIGH
7.7 Jun 27

Guzzle, an extensible PHP HTTP client. Rated high severity (CVSS 7.7), this vulnerability is remotely exploitable, low a

CVE-2022-31043 HIGH
7.5 Jun 10

Guzzle is an open source PHP HTTP client. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable, no

CVE-2022-31042 HIGH
7.5 Jun 10

Guzzle is an open source PHP HTTP client. Rated high severity (CVSS 7.5), this vulnerability is remotely exploitable, no

CVE-2026-67353 MEDIUM
6.9 Aug 01

Denial of service in guzzlehttp/guzzle versions before 7.15.1 allows a malicious or compromised upstream server to exhau

CVE-2026-67339 MEDIUM
6.9 Aug 01

Proxy-Authorization header leakage in guzzlehttp/guzzle before 7.14.2 allows origin servers to receive proxy credentials

CVE-2026-59882 MEDIUM
6.5 Jul 08

Host validation bypass in guzzlehttp/psr7 before 2.12.3 enables URI authority confusion attacks against PHP applications

CVE-2026-59883 MEDIUM POC
6.1 Jul 08

Cookie domain suffix-matching bypass in Guzzle PHP HTTP client (prior to 7.12.3) allows cross-host cookie disclosure, co

Vendor StatusVendor

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy