Skip to content

[Snyk] Security upgrade com.fasterxml.jackson.core:jackson-databind from 2.13.4 to 2.18.8 - #1295

Open
md-khadeer wants to merge 1 commit into
masterfrom
snyk-fix-c6b68faf91f73c9c44730f9850f1ea5b
Open

[Snyk] Security upgrade com.fasterxml.jackson.core:jackson-databind from 2.13.4 to 2.18.8#1295
md-khadeer wants to merge 1 commit into
masterfrom
snyk-fix-c6b68faf91f73c9c44730f9850f1ea5b

Conversation

@md-khadeer

Copy link
Copy Markdown

snyk-top-banner

Snyk has created this PR to fix 1 vulnerabilities in the maven dependencies of this project.

Snyk changed the following file(s):

  • parent/pom.xml

Vulnerabilities that will be fixed with an upgrade:

Issue Score Upgrade
critical severity Deserialization of Untrusted Data
SNYK-JAVA-COMFASTERXMLJACKSONCORE-17440598
  735   com.fasterxml.jackson.core:jackson-databind:
2.13.4 -> 2.18.8
No Path Found Proof of Concept

Breaking Change Risk

Merge Risk: Medium

Notice: This assessment is enhanced by AI.


Important

  • Check the changes in this PR to ensure they won't cause issues with your project.
  • Max score is 1000. Note that the real score may have changed since the PR was raised.
  • This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic


Learn how to fix vulnerabilities with free interactive lessons:

🦉 Learn about vulnerability in an interactive lesson of Snyk Learn.

@md-khadeer

Copy link
Copy Markdown
Author

Merge Risk: Medium

This upgrade from version 2.13.4 to 2.18.8 spans multiple minor releases and introduces several behavioral changes and a new processing limit that require verification.

Key Changes:

  • Java Version: Starting with version 2.14, jackson-core requires Java 8 as a minimum, which was already the case for jackson-databind. [5, 6]
  • Annotation Behavior (2.14): The handling of conflicting @JsonIgnore and @JsonProperty annotations has changed. In v2.14 and later, @JsonIgnore is given precedence, which may cause fields that were previously included in serialization to now be excluded. [6]
  • Processing Limits (2.15): To mitigate potential DoS attacks, version 2.15 introduced processing limits. Notably, a default maximum length for String values was added, which could throw exceptions when processing very large JSON documents. [8, 12]
  • Stricter Number Parsing (2.17): Parsing of numeric values from strings has become stricter. For example, strings with leading zeros (like "07") are no longer automatically coerced into numbers. [15]
  • Kotlin Module Changes (2.16): For Kotlin users, MissingKotlinParameterException has been removed and replaced by its parent class, MismatchedInputException. This is a breaking API change for any code explicitly catching the more specific exception. [17]

Recommendation:

Given the number of subtle behavioral changes, thorough regression testing is highly recommended. Pay close attention to:

  • Models that use a mix of @JsonIgnore and @JsonProperty annotations.
  • Deserialization of large JSON payloads to ensure they do not exceed the new default processing limits.
  • Code that relies on lenient parsing of numbers from strings.
  • Kotlin-based error handling for missing parameters.

Notice 🤖: This content was augmented using artificial intelligence. AI-generated content may contain errors and should be reviewed for accuracy before use.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants