CVE-2024-38820: Spring Framework DataBinder Case Sensitive Match Exception Vulnerability

Summary

16/05/2025
Yes i
Low
3.1

CVE-2025-22233: Spring Framework DataBinder Case Sensitive Match Exception. Affects org.springframework:spring-context across 4 version ranges.

< 5.3.39 >= 6.0.0, <= 6.0.23 >= 6.1.0, < 6.1.20 >= 6.2.0, < 6.2.7

Fixed in 5.3.39, 6.1.20 or 6.2.7, depending on the release line you run. How to fix ↓

Also tracked for

The same CVE-2025-22233 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Sponsored Devnack Mobile apps built by Devnack Design, build and launch iOS and Android apps with a senior product team. From idea to store release Start a project

Background

The Spring Framework is a powerful framework for building Java applications, providing comprehensive infrastructure support for developing Java applications. It offers features such as dependency injection, transaction management, and aspect-oriented programming. However, certain versions of the Spring Framework are vulnerable to a case-sensitive match exception in the DataBinder, which can lead to security issues if not addressed.

Vulnerability Detail

CVE-2024-38820 arises from the Spring Framework's DataBinder, which fails to properly enforce disallowedFields checks in a case-sensitive manner. This vulnerability allows attackers to bypass restrictions on request parameter names, potentially leading to unauthorized data binding and manipulation. The affected versions include Spring Framework 6.2.0 to 6.2.6, 6.1.0 to 6.1.19, 6.0.0 to 6.0.27, and 5.3.0 to 5.3.42, with older unsupported versions also being at risk. The CVSS score for this vulnerability is 3.1, indicating a low severity level.

How To Fix

Latest published version: 7.1.0-RC1 as of 23 Oct 2026

Upgrading to it may include breaking changes; the versions below are the minimum fixed release for this vulnerability.

If you can't move to the latest

The minimum fixed version depends on the release line you run.

  • < 5.3.39 5.3.39
  • >= 6.1.0, < 6.1.20 6.1.20
  • >= 6.2.0, < 6.2.7 6.2.7

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Workaround

As a temporary measure, consider using a dedicated model object with properties specifically for data binding or utilize constructor binding to explicitly declare what to bind. Additionally, prefer using allowedFields over disallowedFields for setting binding.

Conclusion

CVE-2024-38820 presents a case-sensitive match exception vulnerability in the Spring Framework's DataBinder, affecting several versions. Users are advised to upgrade to the patched versions to mitigate potential security risks. Utilizing Vulert can help monitor and alert for such vulnerabilities in real-time.

See every vulnerability recorded for org.springframework:spring-context →

Share this vulnerability

FAQ

CVE-2024-38820 is a vulnerability in the Spring Framework's DataBinder that allows for case-sensitive bypass of disallowedFields checks.

Affected versions include Spring Framework 6.2.0 to 6.2.6, 6.1.0 to 6.1.19, 6.0.0 to 6.0.27, and 5.3.0 to 5.3.42.

You can use Vulert's playground at Vulert Scanner to check if your application is affected by this vulnerability without needing to sign up.

The CVSS score for CVE-2024-38820 is 3.1, indicating a low severity level.

Upgrade to the fixed versions of the Spring Framework as specified in the 'how to fix' section.

Related vulnerabilities

Recent vulnerabilities recorded for org.springframework:spring-context.

How To Fix

Latest published version: 7.1.0-RC1 as of 23 Oct 2026

Upgrading to it may include breaking changes; the versions below are the minimum fixed release for this vulnerability.

If you can't move to the latest

The minimum fixed version depends on the release line you run.

  • < 5.3.39 5.3.39
  • >= 6.1.0, < 6.1.20 6.1.20
  • >= 6.2.0, < 6.2.7 6.2.7

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback