Read the docs
TI-2026-42696 Aliases CVE-2026-59882GHSA-c2w2-prh8-qm98

guzzlehttp/psr7: Host Confusion via Weak URI Host Validation

Priority LOW 29CWE-436Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
—
Confidentiality · integrity · availability
Low · Low · None
Fix status
Fixed

Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub.

Summary

guzzlehttp/psr7 is a PSR-7 HTTP message library implementation in PHP. Prior to 2.12.3, Uri::assertValidHost() does not reject URI host components containing authority delimiters, embedded ports, or malformed IPv6 brackets, allowing Uri::getHost() to disagree with the URI authority used for security or routing decisions. This issue is fixed in version 2.12.3.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00317 24th percentileScored 2026-11-07
Fix Fixed psr7 (guzzle): 2.12.3guzzlehttp/psr7 (Packagist): 2.12.3

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
guzzlepsr7before 2.12.32.12.3Patch availableCNA
—guzzlehttp/psr7 (Packagist)before 2.12.32.12.3Patch availableGHSA-c2w2-prh8-qm98
  • psr7 Vendorguzzle Affected before 2.12.3 Fixed in 2.12.3 Patch available CNA
  • guzzlehttp/psr7 (Packagist) Vendor— Affected before 2.12.3 Fixed in 2.12.3 Patch available GHSA-c2w2-prh8-qm98

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:guzzlephp:psr-7:*:*:*:*:*:*:*:*before 2.12.3Vulnerableguzzle
  • cpe:2.3:a:guzzlephp:psr-7:*:*:*:*:*:*:*:* Versions before 2.12.3 Vulnerable ·guzzle

Remediation

  • Fix · CNA psr7 (guzzle) Fixed in 2.12.3
  • Fix · GHSA-c2w2-prh8-qm98 guzzlehttp/psr7 (Packagist) Fixed in 2.12.3 Advisory →

Vendor assessments

Red Hat

Red Hat's page for this CVE →

Not affected: 1 product
  • Red Hat

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-59882
  2. 2026-10-03 Alias added: GHSA-c2w2-prh8-qm98

References

  • TI-2022-08589 Improper Input Validation in guzzlehttp/psr7 CVSS 3.1HIGH 7.5
  • TI-2023-13898 Laminas Diactoros vulnerable to HTTP Multiline Header Termination CVSS 3.1HIGH 7.5
  • TI-2023-13625 Improper header name validation in guzzlehttp/psr7 CVSS 3.1HIGH 7.5
  • TI-2026-36415 guzzlehttp/psr7 has CRLF Injection via URI Host Component CVSS 3.1MEDIUM 5.3
  • TI-2026-36252 guzzlehttp/psr7 has Host Confusion via Authority Reinterpretation CVSS 3.1MEDIUM 5.3
  • TI-2026-40255 guzzlehttp/psr7: CRLF Injection in HTTP Start-Line Serialization CVSS 3.1MEDIUM 4.8

Sources