top of page
perceptive_background_267k.jpg

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. Th…

Published:

3 August 2026 at 00:00:00

Alert date:

4 August 2026 at 00:01:37

Source:

nvd.nist.gov

Click to open the original link from this advisory

Web Technologies, Supply Chain & Dependencies

CVE-2026-69246 affects Guzzle, a popular extensible PHP HTTP client, in versions prior to 7.15.2 and 8.0.1. The vulnerability stems from a divergence between how Guzzle validates request URIs and how the underlying transport (libcurl or StreamHandler) processes them. Specifically, percent-encoded hosts like 127.0.0.%31 are rejected by PHP's filter_var() but decoded by libcurl to 127.0.0.1, enabling SSRF attacks that bypass host-based access controls. This also affects proxy routing logic (no_proxy) and credential stripping in RedirectMiddleware, since both operate on the unresolved literal host string. An attacker who can influence the URI passed to Guzzle can reach internal or restricted hosts that application-level checks were intended to block. Exploitation requires the application to construct request URIs from untrusted input. The issue is fixed in Guzzle versions 7.15.2 and 8.0.1.

Technical details

Mitigation steps:

Affected products:

Guzzle PHP HTTP Client

Related links:

Related CVE's:

Related threat actors:

IOC's:

This article was created with the assistance of AI technology by Perceptive.

© 2025 by Perceptive Security. All rights reserved.

email: info@perceptivesecurity.com

Disclaimer: Deze website toont informatie afkomstig van externe bronnen. Perceptive aanvaardt geen verantwoordelijkheid voor de inhoud, juistheid of volledigheid van deze informatie.

bottom of page