CVE-2024-22234: Broken Access Control in Spring Security With Direct Use of isFullyAuthenticated
In Spring Security, versions 6.1.x prior to 6.1.7 and versions 6.2.x prior to 6.2.2, an application is vulnerable to broken access control when it directly uses the AuthenticationTrustResolver.isFullyAuthenticated(Authentication) method.
Specifically, an application is vulnerable if:
The application uses AuthenticationTrustResolver.isFullyAuthenticated(Authentication) directly and a null authentication parameter is passed to it resulting in an erroneous true return value.
An application is not vulnerable if any of the following is true:
The application does not use AuthenticationTrustResolver.isFullyAuthenticated(Authentication) directly. The application does not pass null to AuthenticationTrustResolver.isFullyAuthenticated The application only uses isFullyAuthenticated via Method Security https://docs.spring.io/spring-security/reference/servlet/authorization/method-security.html or HTTP Request Security https://docs.spring.io/spring-security/reference/servlet/authorization/authorize-http-requests.html
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
maven/org.springframework.security:spring-security-coreto a version that resolves this vulnerability.Fixed in 6.2.2 - Upgrade
Upgrade
maven/org.springframework.security:spring-security-coreto a version that resolves this vulnerability.Fixed in 6.1.7 - Upgrade
Upgrade
redhat/spring-securityto a version that resolves this vulnerability.Fixed in 6.1.7 - Upgrade
Upgrade
redhat/spring-securityto a version that resolves this vulnerability.Fixed in 6.2.2 - Upgrade
Upgrade
Spring Securityto a version that resolves this vulnerability.Fixed in 6.1.7 - Upgrade
Upgrade
Spring Securityto a version that resolves this vulnerability.Fixed in 6.2.2
Event History
Frequently Asked Questions
What is the severity of CVE-2024-22234?
CVE-2024-22234 has a high severity rating due to its potential for broken access control.
How do I fix CVE-2024-22234?
To mitigate CVE-2024-22234, upgrade Spring Security to version 6.1.7 or 6.2.2.
What versions are affected by CVE-2024-22234?
CVE-2024-22234 affects Spring Security versions 6.1.x prior to 6.1.7 and 6.2.x prior to 6.2.2.
What does CVE-2024-22234 exploit in Spring Security?
CVE-2024-22234 exploits broken access control when using the AuthenticationTrustResolver.isFullyAuthenticated(Authentication) method.
Is there a workaround for CVE-2024-22234 until I can upgrade?
Currently, there are no documented workarounds for CVE-2024-22234, so updating to a remedial version is essential.