CVE-2024-50341
Low · 3.1CVSS
3.1
EPSS
0.3%
Published
Nov 6, 2024
CISA due date
—
Cloudanix analysis
A programming shortcut for logging users in inside Symfony applications can skip important security checks, letting some people sign in when they should be blocked.
- Exploitation
- Remote Authenticated
- Attacker needs
- Low Privilege
- Complexity
- High
- Impact
- Privilege Gain
- Component
- Web Framework
- Class
- Authorization Bypass
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The configured user_checker on a firewall is bypassed during programmatic authentication via the Security::login method, allowing logins that should have been rejected by custom user validation logic.
Why it matters to the business
Attackers or malicious insiders can obtain authenticated sessions for accounts that should be blocked by existing user checks, increasing the risk of unauthorized access across Symfony applications.
How an attack unfolds
An attacker invokes the Security::login method directly in application code or via a vulnerable endpoint to authenticate a user account; because the firewall's user_checker is never invoked, any pre-login validation (account status, custom bans, etc.) is skipped and the session is created anyway.
How to fix it
Upgrade symfony/security-bundle (and the symfony/symfony monorepo) to versions 6.4.10, 7.0.10, or 7.1.3 or later; the patch ensuring user_checker execution is included in commit 938c0728518f9df199477d90ee43838359f81a7a. No workarounds exist.
How to confirm the fix worked
After upgrade, confirm the Symfony version meets or exceeds the fixed releases and exercise the Security::login path while verifying that the user_checker is now invoked (via custom logging or unit tests).
Typical attack path
- Identify an application endpoint or code path that can trigger Security::login with attacker-controlled credentials
- Supply a user identity that would normally be rejected by the configured user_checker
- Call the login method; the missing checker invocation results in a valid authenticated session
- Use the resulting session to access protected resources
How to detect it
Review application logs and authentication flow traces for Security::login invocations that do not produce corresponding user_checker activity; compare timestamps of login events against any custom checker audit logs.
What your security team should do
- Immediately upgrade all Symfony installations to the fixed versions listed above
- Audit application code for any direct use of Security::login and ensure it is covered by the updated bundle
- Review firewall configurations to confirm user_checker definitions remain effective post-upgrade
- Monitor EPSS and KEV updates; although currently low, re-evaluate if exploit maturity changes
The record
symfony/security-bundle is a module for the Symphony PHP framework which provides a tight integration of the Security component into the Symfony full-stack framework. The custom `user_checker` defined on a firewall is not called when Login Programmaticaly with the `Security::login` method, leading to unwanted login. As of versions 6.4.10, 7.0.10 and 7.1.3 the `Security::login` method now ensure to call the configured `user_checker`. All users are advised to upgrade. There are no known workarounds for this vulnerability.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Packagist | symfony/security-bundle | 6.2.0 | 6.4.10 |
| Packagist | symfony/security-bundle | 7.0.0 | 7.0.10 |
| Packagist | symfony/security-bundle | 7.1.0 | 7.1.3 |
| Packagist | symfony/symfony | 6.2.0 | 6.4.10 |
| Packagist | symfony/symfony | 7.0.0 | 7.0.10 |
| Packagist | symfony/symfony | 7.1.0 | 7.1.3 |
| Debian:13 | symfony | 0 | 6.4.10+dfsg-1 |
| Ubuntu:20.04:LTS | symfony | 0 | No fix |
| Ubuntu:22.04:LTS | symfony | 0 | No fix |
| Ubuntu:24.04:LTS | symfony | 0 | No fix |
| Ubuntu:24.10 | symfony | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | symfony | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | symfony | 0 | No fix |
| Ubuntu:Pro:24.04:LTS | symfony | 0 | 6.4.5+dfsg-3ubuntu3+esm1 |
| packagist | symfony/security-bundle | 6.2.0 | 6.4.10 |
| packagist | symfony/security-bundle | 7.0.0 | 7.0.10 |
| packagist | symfony/security-bundle | 7.1.0 | 7.1.3 |
| packagist | symfony/symfony | 6.2.0 | 6.4.10 |
| packagist | symfony/symfony | 7.0.0 | 7.0.10 |
| packagist | symfony/symfony | 7.1.0 | 7.1.3 |
Related vulnerabilities
- CVE-2026-24739 Symfony is a PHP framework for web and console applications and a set of reusable PHP… Also affects symfony/symfony
- CVE-2025-64500 Symfony's incorrect parsing of PATH_INFO can lead to limited authorization bypass Also affects symfony/symfony
- CVE-2024-50343 symfony/validator is a module for the Symphony PHP framework which provides tools to… Also affects symfony/symfony
- CVE-2024-50340 symfony/runtime is a module for the Symphony PHP framework which enables decoupling PHP… Also affects symfony/symfony
- CVE-2024-50342 Symfony allows internal address and port enumeration by NoPrivateNetworkHttpClient Also affects symfony/symfony
- CVE-2024-36611 In Symfony v7.07, a security vulnerability was identified in the FormLoginAuthenticator… Also affects symfony
- CVE-2024-51996 Symphony process is a module for the Symphony PHP framework which executes commands in… Also affects symfony
- CVE-2024-50345 Symfony vulnerable to open redirect via browser-sanitized URLs Also affects symfony