GitHub Advisoryadvisory · Maven
GHSA-3pjw-73gf-8qr5 jackson-databind: @JsonIgnore on a Record property is bypassed with a PropertyNamingStrategy
MEDIUM
Official page ↗
- Aliases
- CVE-2026-59888
- 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:L/I:L/A:N
- Weaknesses
- CWE-915
- Reviewed
- 2026-07-21
Affected packages
• Maven com.fasterxml.jackson.core:jackson-databind: >= 2.15.0, < 2.18.8 → fixed in 2.18.8
• Maven com.fasterxml.jackson.core:jackson-databind: >= 2.19.0, < 2.21.4 → fixed in 2.21.4
• Maven tools.jackson.core:jackson-databind: >= 3.0.0, < 3.1.4 → fixed in 3.1.4
Description
Summary
For Java Records, `POJOPropertiesCollector._removeUnwantedIgnorals()` records a `@JsonIgnore`-annotated component under its original implicit name before `_renameUsing()` applies the `PropertyNamingStrategy`. After the rename, `_ignoredPropertyNames` still holds only the pre-rename name, so `_ignorableProps` is built from the stale key. The renamed JSON key passes `IgnorePropertiesUtil.shouldIgnore()` and is assigned to the Record's constructor parameter, defeating the `@JsonIgnore`.
Impact
A Record using a naming strategy that relies on `@JsonIgnore` to keep an internal/privileged component out of deserialization can have that component set from the wire via its renamed key (e.g. a role/flag controlled by an untrusted client).
Affected / Patched (verified via `git tag --contains`)
• 2.15-2.18 line: `>= 2.15.0, fixed in 2.18.8 (backport `c7c6783`)
• 2.19-2.21 line: `>= 2.19.0, fixed in 2.21.4
• 3.x line: `>= 3.0.0, fixed in 3.1.4 (#5974, `baa2cdf`)
Severity / CWE
Maintainer: minor. Reporter: Moderate. CWE-915; related CWE-345.
Credits
Omkhar Arasaratnam (@omkhar) - finder.
Related
Alias · CVE (1)
- CVE-2026-59888 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
- https://github.com/FasterXML/jackson-databind/security/advisories/GHSA-3pjw-73gf-8qr5 web
- https://nvd.nist.gov/vuln/detail/CVE-2026-59888 advisory
- https://github.com/FasterXML/jackson-databind/pull/5974 web
- https://github.com/FasterXML/jackson-databind/commit/baa2cdf5ca2b2717fbb88d91955d69d8651df3e4 web
- https://github.com/FasterXML/jackson-databind/commit/c7c678360624da5bc7eed2152789fa522880db9d web
- https://github.com/FasterXML/jackson-databind package