SensioLabs Symfony up to 5.4.55/6.4.49/7.4.22/8.1.10 Routing host/pathinfo improper authorization
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.0 | $0-$5k | 2.00+ |
Summary
A vulnerability was found in SensioLabs Symfony up to 5.4.55/6.4.49/7.4.22/8.1.10. It has been declared as critical. This impacts an unknown function of the component Routing. Such manipulation of the argument host/pathinfo leads to improper authorization. This vulnerability is documented as CVE-2026-118516. The attack can be executed remotely. There is not any exploit available. It is recommended to upgrade the affected component.
Details
A vulnerability, which was classified as critical, has been found in SensioLabs Symfony up to 5.4.55/6.4.49/7.4.22/8.1.10. Affected by this issue is some unknown processing of the component Routing. The manipulation of the argument host/pathinfo with an unknown input leads to a improper authorization vulnerability. Using CWE to declare the problem leads to CWE-285. The product does not perform or incorrectly performs an authorization check when an actor attempts to access a resource or perform an action. Impacted is confidentiality, integrity, and availability. CVE summarizes:
The Symfony Routing components CompiledUrlMatcher and UrlMatcher interpret the host and path information differently, allowing path-based authorization rules to be bypassed in Symfony 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. For routes that define a host, CompiledUrlMatcher matches the string $host.'.'.$pathinfo against the host regular expression followed by the path regular expression, while UrlMatcher matches the host and the path separately. A host placeholder can therefore match /, and consume the beginning of the path, so the request is routed to a controller, while UrlMatcher would find no route. Rules that look at the path, such as access_control entries and firewall patterns, are evaluated against the actual request path, so they do not apply while the controller of the route runs, potentially allowing an unauthenticated request to reach a protected controller. For example, with the route /admin/report/{id}, the host app.{domain} and the rule access_control: [{ path: ^/admin, roles: ROLE_ADMIN }], an anonymous request for /admin/report/1 is sent to the login page. A request with the Host header app and path /x./admin/report/1 instead reaches the controller, with domain="/x". With the required domain: .+, the real hostname works: app.example.com and /x./admin/report/1 match with domain="example.com./x". Applications are affected if they have routes with host placeholders protected by path-based rules. With the default requirement, the Host header must be the host of the route without its last labels, such as app: framework.trusted_hosts blocks that, while a web server that only serves known names may not, for instance, Nginx passing the raw Host header to FastCGI for a request line that carries an absolute URI. If the requirement accepts /, such as .+, a real hostname works, and trusted_hosts does not help.
The advisory is available at github.com. This vulnerability is handled as CVE-2026-118516 since 10/28/2026. The exploitation is known to be easy. The attack may be launched remotely. No form of authentication is required for exploitation. Technical details are known, but there is no available exploit. This vulnerability is assigned to T1548.002 by the MITRE ATT&CK project.
Upgrading to version 5.4.56, 6.4.50, 7.4.23 or 8.1.11 eliminates this vulnerability.
If you want to get best quality of vulnerability data, you may have to visit VulDB.
Product
Type
Vendor
Name
Version
- 5.4.0
- 5.4.1
- 5.4.2
- 5.4.3
- 5.4.4
- 5.4.5
- 5.4.6
- 5.4.7
- 5.4.8
- 5.4.9
- 5.4.10
- 5.4.11
- 5.4.12
- 5.4.13
- 5.4.14
- 5.4.15
- 5.4.16
- 5.4.17
- 5.4.18
- 5.4.19
- 5.4.20
- 5.4.21
- 5.4.22
- 5.4.23
- 5.4.24
- 5.4.25
- 5.4.26
- 5.4.27
- 5.4.28
- 5.4.29
- 5.4.30
- 5.4.31
- 5.4.32
- 5.4.33
- 5.4.34
- 5.4.35
- 5.4.36
- 5.4.37
- 5.4.38
- 5.4.39
- 5.4.40
- 5.4.41
- 5.4.42
- 5.4.43
- 5.4.44
- 5.4.45
- 5.4.46
- 5.4.47
- 5.4.48
- 5.4.49
- 5.4.50
- 5.4.51
- 5.4.52
- 5.4.53
- 5.4.54
- 5.4.55
- 6.4.0
- 6.4.1
- 6.4.2
- 6.4.3
- 6.4.4
- 6.4.5
- 6.4.6
- 6.4.7
- 6.4.8
- 6.4.9
- 6.4.10
- 6.4.11
- 6.4.12
- 6.4.13
- 6.4.14
- 6.4.15
- 6.4.16
- 6.4.17
- 6.4.18
- 6.4.19
- 6.4.20
- 6.4.21
- 6.4.22
- 6.4.23
- 6.4.24
- 6.4.25
- 6.4.26
- 6.4.27
- 6.4.28
- 6.4.29
- 6.4.30
- 6.4.31
- 6.4.32
- 6.4.33
- 6.4.34
- 6.4.35
- 6.4.36
- 6.4.37
- 6.4.38
- 6.4.39
- 6.4.40
- 6.4.41
- 6.4.42
- 6.4.43
- 6.4.44
- 6.4.45
- 6.4.46
- 6.4.47
- 6.4.48
- 6.4.49
- 7.4.0
- 7.4.1
- 7.4.2
- 7.4.3
- 7.4.4
- 7.4.5
- 7.4.6
- 7.4.7
- 7.4.8
- 7.4.9
- 7.4.10
- 7.4.11
- 7.4.12
- 7.4.13
- 7.4.14
- 7.4.15
- 7.4.16
- 7.4.17
- 7.4.18
- 7.4.19
- 7.4.20
- 7.4.21
- 7.4.22
- 8.1.0
- 8.1.1
- 8.1.2
- 8.1.3
- 8.1.4
- 8.1.5
- 8.1.6
- 8.1.7
- 8.1.8
- 8.1.9
- 8.1.10
License
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CNA CVSS-B Score: 🔒
CNA CVSS-BT Score: 🔒
CNA Vector: 🔒
CVSSv3
VulDB Meta Base Score: 7.3VulDB Meta Temp Score: 7.0
VulDB Base Score: 7.3
VulDB Temp Score: 7.0
VulDB Vector: 🔒
VulDB Reliability: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Improper authorizationCWE: CWE-285 / CWE-266
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Yes
Availability: 🔒
Status: Not defined
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Symfony 5.4.56/6.4.50/7.4.23/8.1.11
Timeline
10/28/2026 CVE reserved11/04/2026 Advisory disclosed
11/04/2026 VulDB entry created
11/04/2026 VulDB entry last update
Sources
Advisory: github.comStatus: Confirmed
CNA: Checkmarx
CVE: CVE-2026-118516 (🔒)
GCVE (CVE): GCVE-0-2026-118516
GCVE (VulDB): GCVE-100-431066
Entry
Created: 11/04/2026 13:55Changes: 11/04/2026 13:55 (69)
Complete: 🔍
Cache ID: 216::103
If you want to get best quality of vulnerability data, you may have to visit VulDB.
No comments yet. Languages: en.
Please log in to comment.