Read the docs
TI-2026-85934 Aliases CVE-2026-123339

Untrusted forwarded headers in Symfony set host of generated URLs

Priority LOW 12CWE-348Published · Updated

Key facts

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

Attack profile from CVSS 4.0 · CNA. Fix status from CNA.

Summary

Symfony versions before 5.4.56, from 6.0.0 before 6.4.50, from 7.0.0 before 7.4.23, and from 8.0.0 before 8.1.11 trust forwarded headers from 127.0.0.1 during inline fragment rendering (CWE-348). An unauthenticated remote attacker reaching the application from 127.0.0.1, such as through a same-host proxy that forwards client headers, can set the host, scheme and port of absolute URLs generated later in the request.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

Description from the CNA

Improper trust of forwarded headers in RouterListener::onKernelFinishRequest() in Symfony HttpKernel versions prior to 5.4.56, 6.x prior to 6.4.50, 7.x prior to 7.4.23, and 8.x prior to 8.1.11 allows a remote attacker to control the host, scheme, and port of absolute URLs generated for the rest of the request, poisoning links in pages stored by a shared cache and in e-mails sent after the page was rendered.When a page renders an inline fragment (render() in Twig, or an ESI tag rendered inline), SubRequestHandler temporarily adds 127.0.0.1 to the trusted proxies, and RouterListener rebuilds the router context from the main request while that trust is still active, so the X-Forwarded-* and Forwarded headers of a request whose client address is 127.0.0.1 are trusted even though that address is not a configured trusted proxy. From that point on, every absolute URL the router generates for the rest of the main request takes its host, scheme, and port from headers sent by the client, including URLs produced by url() in Twig and by UrlGeneratorInterface::ABSOLUTE_URL. Applications are affected when they are reached over HTTP from 127.0.0.1, for example behind a TLS terminator, reverse proxy, local HTTP cache, or sidecar proxy on the same host, and that proxy passes the client’s forwarded headers along. With the default configuration (framework.trusted_proxies unset), all forwarded headers, including X-Forwarded-Host, are trusted during that window. Applications served through php-fpm, mod_php, or a proxy on another host are not affected. When framework.trusted_hosts is configured, a forwarded host outside the list is rejected, but the scheme and port can still be changed.

Why it matters now

EPSS 0.00233 14th percentileScored 2026-11-07
Fix Fixed No fixed version in the sources yet

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

No affected products listed by the sources yet.

Remediation

Upgrade Symfony to 5.4.56, 6.4.50, 7.4.23 or 8.1.11, the fixed version for each release line.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

Fixed in the same release

Records fixed by the same vendor advisory or release, as the CNA lists them.

  • Release ·

    sensiolabs symfony 5.4.56, 6.4.50 and 2 more versions

    6 records Highest priority Priority LOW 6 LOW

    Other records, highest priority first

    • TI-2026-85971 Symfony YAML parser inefficient parsing enables denial of servicePriority LOW 38
    • TI-2026-85989 Symfony Serializer lets clients turn server files into uploadsPriority LOW 37
    • TI-2026-85987 Symfony DataUriNormalizer reads local files from uppercase data URIsPriority LOW 36

Timeline

  1. 2026-11-06 Threatist record created from CVE-2026-123339

References

  • TI-2019-13616 An issue was discovered in Symfony 3.4.0 through 3.4.34, 4.2.0 through 4.2.11, and 4.3.0… CVSS 3.1CRITICAL 9.8
  • TI-2018-10604 An issue was discovered in Http Foundation in Symfony 2.7.0 through 2.7.48, 2.8.0 through… CVSS 3.1MEDIUM 6.5
  • TI-2019-08131 In Symfony before 2.7.51, 2.8.x before 2.8.50, 3.x before 3.4.26, 4.x before 4.1.12, and… CVSS 3.1CRITICAL 9.8
  • TI-2016-02159 Symfony before 2.8.6 and 3.x before 3.0.6 allows remote attackers to bypass… CVSS 3.0CRITICAL 9.8
  • TI-2019-08459 An issue was discovered in Symfony before 4.2.12 and 4.3.x before 4.3.8. CVSS 3.1CRITICAL 9.8
  • TI-2018-08136 An issue was discovered in the Ldap component in Symfony 2.8.x before 2.8.37, 3.3.x… CVSS 3.0CRITICAL 9.8
See all 107 →

Sources

This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences