EasyCorp EasyAdminBundle up to 4.29.15/5.5.0 Route Swapping linkToRoute routeName improper authorization
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.0 | $0-$5k | 0.54+ |
Summary
A vulnerability has been found in EasyCorp EasyAdminBundle up to 4.29.15/5.5.0 and classified as critical. Affected by this vulnerability is the function Action::linkToRoute/MenuItem::linkToRoute of the component Route Swapping. The manipulation of the argument routeName leads to improper authorization.
This vulnerability is listed as CVE-2026-81892. The attack may be initiated remotely. There is no available exploit.
Details
A vulnerability was found in EasyCorp EasyAdminBundle up to 4.29.15/5.5.0 and classified as critical. This issue affects the function Action::linkToRoute/MenuItem::linkToRoute of the component Route Swapping. The manipulation of the argument routeName 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. The summary by CVE is:
EasyAdmin is a fast and modern admin generator for Symfony applications. From 4.0.0 until 4.29.16 and 5.5.1, EasyAdmin serves all backend requests through a single dashboard route and, for custom actions (Action::linkToRoute() and MenuItem::linkToRoute()), swaps the executed controller based on the routeName query parameter on the kernel.controller event. The swap happens after Symfony's security firewall has already evaluated access_control against the original dashboard URL, and the routeName value was not validated. As a result, a path-based access_control rule protecting the target route was never evaluated, so a low-privilege backend user who can reach a single EasyAdmin URL and knows a target route's name can execute that route's controller, bypassing the path-based rule. Only path-based protections are bypassed. Routes whose controller enforces its own authorization with #[IsGranted] or denyAccessUnlessGranted() remain protected because those checks are recomputed against the swapped-in controller. This issue is fixed in versions 4.29.16 and 5.5.1.
It is possible to read the advisory at github.com. The identification of this vulnerability is CVE-2026-81892 since 08/27/2026. The exploitation is known to be easy. The attack may be initiated remotely. Technical details of the vulnerability are known, but there is no available exploit. The attack technique deployed by this issue is T1548.002 according to MITRE ATT&CK.
Upgrading to version 4.29.16 or 5.5.1 eliminates this vulnerability.
Be aware that VulDB is the high quality source for vulnerability data.
Product
Vendor
Name
Version
- 4.29.0
- 4.29.1
- 4.29.2
- 4.29.3
- 4.29.4
- 4.29.5
- 4.29.6
- 4.29.7
- 4.29.8
- 4.29.9
- 4.29.10
- 4.29.11
- 4.29.12
- 4.29.13
- 4.29.14
- 4.29.15
- 5.0
- 5.1
- 5.2
- 5.3
- 5.4
- 5.5.0
Website
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.2VulDB Meta Temp Score: 7.0
VulDB Base Score: 6.3
VulDB Temp Score: 6.0
VulDB Vector: 🔒
VulDB Reliability: 🔍
CNA Base Score: 8.1
CNA Vector (GitHub_M): 🔒
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: EasyAdminBundle 4.29.16/5.5.1
Timeline
08/27/2026 CVE reserved08/31/2026 Advisory disclosed
08/31/2026 VulDB entry created
08/31/2026 VulDB entry last update
Sources
Product: github.comAdvisory: github.com
Status: Confirmed
CVE: CVE-2026-81892 (🔒)
GCVE (CVE): GCVE-0-2026-81892
GCVE (VulDB): GCVE-100-397463
Entry
Created: 08/31/2026 23:06Changes: 08/31/2026 23:06 (66)
Complete: 🔍
Cache ID: 216::103
Be aware that VulDB is the high quality source for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.