Security readout for executives and security teams
Plain-English summary
This affects PHP applications using laminas-diactoros before 2.11.1. Untrusted X-Forwarded headers may change the request URL seen by the application, potentially poisoning generated links or enabling XSS when absolute URLs are reflected to users.
Executive priority
Prioritize remediation for internet-facing PHP applications using affected versions. This is not evidenced as actively exploited here, but it can undermine user trust, links, and web content integrity without authentication.
Technical view
Diactoros could derive host, scheme, or port for Laminas\Diactoros\Uri from X-Forwarded-* headers. In exposed or improperly proxied deployments, attacker-controlled headers can influence request URI construction. The vendor added request filtering in 2.11.1 and planned safer defaults for 3.0.
Likely exposure
Exposure is most likely in public PHP services using laminas-diactoros below 2.11.1, especially when not behind a trusted proxy or reachable through untrusted proxies. Risk rises where applications generate absolute links from request data.
Exploitation context
The bundle does not show active exploitation, and KEV is false. The weakness is network reachable and needs no authentication per CVSS, but real impact depends on application behavior around generated URLs, links, and reflected output.
Researcher notes
Treat this as deployment-sensitive. Version alone is not the whole exposure picture: proxy trust boundaries, request-filter configuration, and application use of Uri values determine exploitability and impact.
Mitigation direction
- Upgrade laminas-diactoros to 2.11.1 or later.
- Use NoOpRequestFilter unless X-Forwarded headers are explicitly trusted.
- Strip or reject X-Forwarded-* headers at the web server when not needed.
- Allow forwarded headers only from trusted load balancers or proxies.
- Review absolute URL generation for unsafe request-derived values.
Validation and detection
- Check composer.lock for laminas-diactoros versions below 2.11.1.
- Inspect ServerRequestFactory::fromGlobals() usage for a configured request filter.
- Review proxy and web server rules for X-Forwarded-* handling.
- In staging, confirm generated URLs ignore untrusted forwarded headers.
- Identify pages or emails that build fully-qualified URLs from request state.
Public sources used
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
CWE-444: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
Open ATT&CK lookupCWE-79: User-session and phishing behavior lookup
Client-side and session-facing weaknesses should be reviewed alongside initial-access and user-execution behaviors. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
Open ATT&CK lookupCVE-2022-31109 mapping review
Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.
Open ATT&CK lookup- Severity
- High
- CVSS
- 7.2 (3.1)
- Known Exploited
- No
- Published
Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
CNA and ADP enrichment extracted from CVE v5
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
CVSS vector scores
1 official scoreWe collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N3.92.7Primary CVE scoreVulnerability scoring details
Base CVSS 3.1 score
7.2HighVector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
Source materials
- CVE List V5 sourceCVE List V5
- https://portswigger.net/web-security/host-headerCVE reference · x_refsource_MISC
- https://github.com/laminas/laminas-diactoros/security/advisories/GHSA-8274-h5jp-97vrCVE reference · x_refsource_CONFIRM
- https://github.com/laminas/laminas-diactoros/commit/25b11d422c2e5dad868f68619888763b30f91e2dCVE reference · x_refsource_MISC
Products and packages named in the record
CWE details
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')
Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.
Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.
