Advisory Database
  • Advisories
  • Dependency Scanning
  1. maven
  2. ›
  3. org.springframework.security/spring-security-core
  4. ›
  5. CVE-2017-4995

CVE-2017-4995: Deserialization of Untrusted Data

November 27, 2017 (updated November 13, 2019)

When configured to enable default typing, Jackson contained a deserialization vulnerability that could lead to arbitrary code execution. which means that (through the previous exploit) arbitrary code could be executed if all of the following is true: (1) Spring Security’s Jackson support is being leveraged by invoking SecurityJackson2Modules.getModules(ClassLoader) or SecurityJackson2Modules.enableDefaultTyping(ObjectMapper); (2) Jackson is used to deserialize data that is not trusted (Spring Security does not perform deserialization using Jackson, so this is an explicit choice of the user); and (3) there is an unknown (Jackson is not excluding it already) deserialization gadget that allows code execution present on the classpath. Jackson provides a exclusion approach to protecting against this type of attack, but Spring Security should be proactive against blocking unknown deserialization gadgets when Spring Security enables default typing.

References

  • www.cve.mitre.org/cgi-bin/cvename.cgi?name=2017-4995
  • nvd.nist.gov/vuln/detail/CVE-2017-4995
  • pivotal.io/security/cve-2017-4995

Code Behaviors & Features

Detect and mitigate CVE-2017-4995 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →

Affected versions

All versions starting from 4.2 up to 4.2.2, version 5.0.0.M1

Fixed versions

  • 4.2.3
  • 5.0.0.M2

Solution

Upgrade to versions 4.2.3, 5.0.0.M2 or above.

Impact 8.1 HIGH

CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

Learn more about CVSS

Weakness

  • CWE-502: Deserialization of Untrusted Data

Source file

maven/org.springframework.security/spring-security-core/CVE-2017-4995.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Wed, 14 May 2025 12:15:56 +0000.