7.2

CVE-2026-69246: guzzle

CVSS: 7.2v3.1HighAwaiting analysis
AliasesUBUNTU-CVE-2026-69246DEBIAN-CVE-2026-69246CGA-5pv9-cwq6-2x29
Published 03-08-2026Last modified 04-08-2026

Vulnerability summary

CVE-2026-69246 is a high (CVSS 7.2) vulnerability in guzzle. EPSS estimates a 0.37% chance of exploitation in the next 30 days, higher than 29.6% of scored vulnerabilities.

Overall risk
29/100
0100
Medium · default modelHow is this calculated?
CVSS score
7.2/10
010
High · v3.1 (CVE.org)
EPSS score
0.37%
0%100%
Low · +0.16 pp in 30 days
KEVNot listedIn no KEV catalog
RansomwareNone recordedNo known use recorded
Public exploits0No public exploits recorded

Advisory lineage

Upstream 0 · Downstream 0 · Related 1

Timeline

  1. 03-08-2026
    PublishedVulnerability first disclosed.
  2. 04-08-2026
    Last modifiedVulnerability information updated.

Description

Guzzle is an extensible PHP HTTP client. Prior to 7.15.2 and 8.0.1, Guzzle gives a transport the request URI as text and supplies the Host header separately. The cURL handlers set CURLOPT_URL to the URI exactly as written and push that Host into CURLOPT_HTTPHEADER; StreamHandler does the same through fopen(). libcurl then parses the authority itself, percent-decoding it and, on an IDN-capable build, applying IDNA mapping, and uses the result to resolve, connect, name the TLS peer and address a proxy CONNECT, while the supplied Host suppresses the aligned one libcurl would have generated. For a URI host written as 127.0.0.%31, filter_var() rejects the host as an IP literal, yet libcurl decodes it to 127.0.0.1 and reaches loopback with no DNS lookup while the server receives Host: 127.0.0.%31. An attacker who influences a fetched URI can therefore reach a host the application's checks excluded and read whatever the host exposes of the response. The same divergence moves Guzzle's own decisions onto a spelling the transport does not use: no_proxy selects proxy routing from the literal host, and RedirectMiddleware decides from it whether to strip Authorization and Cookie. Exploitation requires the application to build a request URI from untrusted input and to make a host decision before handing it to Guzzle. This issue is fixed in versions 7.15.2 and 8.0.1.

CVSS metrics

5 scores · 5 sources · 1 version

EPSS trend

Probability

0.37%

Chance of exploitation in the next 30 days

Percentile

30%

Versus all other CVEs

30-day change

+0.16 pp

From 0.21% on 21-09-2026

21-09-202621-10-2026
EPSS score
0.37%

Known exploited

Compare KEV catalogs

Not in any of the 3 tracked catalogs.

Public exploits

0 found

No public exploits indexed.

Weaknesses

CWE · root cause

Affected systems

Chainguard4 products
  • drupal-11.3< 11.3.16-r1
  • moodle< 5.2.2-r0
  • nextcloud-server-31< 31.0.14-r6
  • privatebin< 2.0.5-r2
Debian1 product
  • guzzleAll versions (No fix recorded) | < 7.15.2-1
Guzzle1 product
  • guzzle≥ 8.0.0, < 8.0.1 | < 7.15.2
Ubuntu1 product
  • guzzleAll versions (No fix recorded)

4 vendors · 7 products

References

12 links
Show all 12 references