GitHub Advisoryadvisory · Maven

GHSA-9fxm-vc8v-hj55 jackson-databind's renamed @JsonIgnore'd setters can deserialize via private fields

MEDIUM Published 2026-06-23 Modified 2026-07-20 Official page ↗
Aliases
CVE-2026-54516
Ecosystem
Maven
Packages
com.fasterxml.jackson.core:jackson-databind, tools.jackson.core:jackson-databind
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Weaknesses
CWE-915
Reviewed
2026-06-23

Affected packages

• Maven com.fasterxml.jackson.core:jackson-databind: >= 2.21.0, < 2.21.4 → fixed in 2.21.4 • Maven com.fasterxml.jackson.core:jackson-databind: >= 3.0.0, < 3.1.4 → fixed in 3.1.4 • Maven tools.jackson.core:jackson-databind: >= 3.0.0, < 3.1.4 → fixed in 3.1.4

Description

Summary `POJOPropertiesCollector._renameProperties()` allows a property with `@JsonProperty("renamed")` on the getter and `@JsonIgnore` on the setter to be renamed rather than dropped. With `MapperFeature.INFER_PROPERTY_MUTATORS` enabled (default), the private backing field is retained; during deserialization `BeanDeserializerFactory.addBeanProps()` sees `hasField()==true`, builds a `FieldProperty`, and makes the backing field writable. An attacker supplying the renamed JSON key writes the backing field directly, bypassing the `@JsonIgnore` on the setter. Impact POJOs combining a renamed getter with an ignored setter (a read-only-over-the-wire pattern) have that field silently set from attacker input (property tampering / mass assignment). Not a general gadget; no RCE. Affected / Patched (verified via `git tag --contains`) • 2.21 line: `>= 2.21.0, fixed in 2.21.4 (backport `c3d56dd`, #5968) • 3.x line: `>= 3.0.0, fixed in 3.1.4 (#5967, `e88cb17`) Severity / CWE Maintainer: minor. Reporter: HIGH. CWE-915. Credits Omkhar Arasaratnam (@omkhar) - finder.

Related

Alias · CVE (1)

  • CVE-2026-54516 jackson-databind contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor. vulnerability

Weakness · CWE (1)

  • CWE-915 Improperly Controlled Modification of Dynamically-Determined Object Attributes weakness

References