Vulnerability in guzzlehttp/guzzle (CVE-2026-67354)
Summary
Vulnerability in guzzlehttp/guzzle (CVE-2026-67354). Confidential information can be exposed externally. Exploitable via referer. Mitigation: upgrade to 7.15.1 or later.
Original description
The description as published by the source.
Impact
When the optional referer redirect setting is enabled, affected versions of RedirectMiddleware can copy the fragment from the referring request URI into a generated Referer header. A URI fragment is the part after #. It is handled locally by the client and is not part of the HTTP request target, so the server handling the original request does not receive it. A generated Referer tells the redirect destination which URI led to the request. Guzzle correctly removes user information from that value, but retains the fragment when it follows a redirect to the same scheme, such as HTTPS to HTTPS. For example, an initial URI ending in #secret is sent without the fragment, but the redirect destination can receive a Referer ending in #secret. This behavior affects both the cURL and stream handlers.
An attacker who controls the redirect destination can read the fragment from the incoming header, including through request logs or application code. If the fragment contains a one-time login secret, access token, state value, or other private client data, it is disclosed to a server that was never meant to receive it. Exploitation requires the application to enable allow_redirects.referer, make a request to a URI with a sensitive fragment, and follow a same-scheme redirect to a less-trusted destination.
The referer setting is disabled by default. Applications that leave it disabled, do not put sensitive data in URI fragments, do not follow redirects, or on…
Source: NIST National Vulnerability Database NVD GitHub Advisory
Auto-generated summary
Assembled by SecPulse from the source data (CVSS, CWE, affected versions) using templates — no AI involved. Check the original description and references below for exact details.
A vulnerability tracked as CVE-2026-67354 has been found in guzzlehttp/guzzle.
Attackers can target a specific entry point like referer over the network to misuse the product.
Confidential information can be exposed externally. CVSS score: 5.9/10.
What to do: upgrade guzzlehttp/guzzle to 7.15.1 or later.
If unsure, ask your IT team or search "guzzlehttp/guzzle CVE-2026-67354" on the vendor's site.
CVE-2026-67354 (guzzlehttp/guzzle) — CWE-201 / CVSS v3 5.9
Attack vector: remote (network-reachable) / unauthenticated / no user interaction
Attack surface: referer / RedirectMiddleware / Referer / allow_redirects.referer
Patched: 7.15.1 — apply immediately
Plan: 1) Audit SBOM/dependencies, 2) Stage→prod upgrade, 3) Add WAF/proxy monitoring on affected endpoints, 4) Hunt IOCs in logs.
Refs: see the GHSA / vendor advisory / patched release linked on this page.
A vulnerability (CWE-201) exists in guzzlehttp/guzzle. Attackers reach the vulnerable code path via referer without authentication.
Check the vendor advisory for the affected versions of guzzlehttp/guzzle. Attack surface: referer / RedirectMiddleware / Referer / allow_redirects.referer.
Severity: Medium (CVSS 5.9/10). Confidential information can be exposed externally.
Update to 7.15.1.
Until the patch is applied: disable the affected feature, apply WAF rules, or restrict access via network ACLs.
Search webserver/proxy logs for unusual request patterns matching this CVE's known IOCs. Run grep -r 'guzzlehttp/guzzle' . against your dependency files (package-lock.json, requirements.txt, go.sum) to find affected services.
Response actions
Concrete steps and command examples for SOC/SRE teams to execute in order
-
1Identify exposure identify
grep -r 'guzzlehttp/guzzle' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で
guzzlehttp/guzzleを grep し、稼働しているサービス・バージョンを把握する。 -
2Apply patch patch
Upgrade guzzlehttp/guzzle to 7.15.1ステージング環境で 7.15.1 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。
-
3Post-deployment verification verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。
Affected packages
Fix status by distribution
Fixed packages published by each distribution for this CVE
- Debian DEBIAN-CVE-2026-67354 guzzle
- Ubuntu UBUNTU-CVE-2026-67354 guzzle
References
- web disclosure@vulncheck.com
- web disclosure@vulncheck.com
- web nvd.nist.gov
- web github.com
- web github.com
- web github.com
- web github.com
- web github.com