CVE-2024-38810
Medium · 6.5CVSS
6.5
EPSS
0.5%
Published
Aug 20, 2024
CISA due date
—
Cloudanix analysis
A bug in a popular security library can let outsiders see information they should not have access to.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Data Exposure
- Component
- Library
- Class
- Authorization Bypass
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Missing authorization check in @AuthorizeReturnObject processing allows security annotations to be bypassed, exposing return values without enforcing intended access controls.
Why it matters to the business
Attackers may obtain sensitive data that should have been protected by authorization rules, increasing risk of information disclosure across applications using the affected Spring Security versions.
How an attack unfolds
An unauthenticated attacker sends a request to an endpoint protected by @AuthorizeReturnObject; due to the authorization bypass in 6.3.0 and 6.3.1, the annotation is rendered ineffective and the protected object is returned in the response.
How to fix it
Upgrade Spring Security to a version containing commit 8fb44fe67980ef33dddb9ba3799d86edaf060fb8 or later; avoid versions 6.3.0 and 6.3.1.
How to confirm the fix worked
Confirm the Spring Security jar version is newer than 6.3.1 and contains the referenced commit; review application code for continued use of @AuthorizeReturnObject and test authorization behavior on affected endpoints.
Typical attack path
- Identify application endpoints that use @AuthorizeReturnObject for post-authorization checks
- Craft and send a network request to the target endpoint without required credentials or roles
- Receive the unauthorized object or data in the response due to bypassed checks
How to detect it
Review application logs for requests to protected endpoints that return objects without evidence of prior authorization success; correlate with absence of expected role or permission checks in access logs.
What your security team should do
- Immediately upgrade all Spring Security 6.3.0/6.3.1 deployments to the fixed version
- Audit applications for use of @AuthorizeReturnObject and verify authorization logic post-upgrade
- Monitor for any unexpected data exposure in logs until remediation is complete
The record
Missing Authorization When Using @AuthorizeReturnObject in Spring Security 6.3.0 and 6.3.1 allows attacker to render security annotations inaffective.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Maven | org.springframework.security:spring-security-core | 6.3.0 | 6.3.2 |
| maven | org.springframework.security/spring-security-core | 6.3.0 | 6.3.2 |
Related vulnerabilities
- GHSA-vqxh-445g-37fc Spring Security has a broken timing attack mitigation implemented in… Also affects org.springframework.security:spring-security-core
- CVE-2025-22234 The fix applied in CVE-2025-22228 inadvertently broke the timing attack mitigation… Also affects org.springframework.security:spring-security-core
- CVE-2025-41248 The Spring Security annotation detection mechanism may not correctly resolve annotations… Also affects org.springframework.security:spring-security-core
- CVE-2025-41232 Spring Security Aspects may not correctly locate method security annotations on private… Also affects org.springframework.security:spring-security-core
- CVE-2025-22223 Spring Security 6.4.0 - 6.4.3 may not correctly locate method security annotations on… Also affects org.springframework.security:spring-security-core
- CVE-2024-38827 The usage of String.toLowerCase() and String.toUpperCase() has some Locale dependent… Also affects org.springframework.security:spring-security-core
- CVE-2024-22257 In Spring Security, versions 5.7.x prior to 5.7.12, 5.8.x prior to 5.8.11, versions 6.0.x… Also affects org.springframework.security:spring-security-core
- CVE-2024-22234 In Spring Security, versions 6.1.x prior to 6.1.7 and versions 6.2.x prior to 6.2.2, an… Also affects org.springframework.security:spring-security-core