jackson-databind has @JsonView bypass for setterless creator properties
Moderate severity
GitHub Reviewed
Published
Jun 16, 2026
in
FasterXML/jackson-databind
•
Updated Jul 20, 2026
Description
Published by the National Vulnerability Database
Jun 23, 2026
Published to the GitHub Advisory Database
Jun 23, 2026
Reviewed
Jun 23, 2026
Last updated
Jul 20, 2026
Summary
In
BeanDeserializer._deserializeUsingPropertyBased, the active-view (@JsonView) filter was applied only to creator properties; the regular property-buffering branch performed noprop.visibleInView(activeView)check. A change makingSetterlessProperty.isMerging()returntruerouted setterless Collection/Map properties through this unguarded path, so a setterless collection annotated with a restricted@JsonViewis populated from attacker JSON even when the active view excludes it.Impact
View-restricted (e.g. admin-only) setterless collection/map properties can be written from untrusted JSON despite
@JsonViewgating — an access-control / mass-assignment bypass. No RCE or DoS.Affected / Patched (verified via
git tag --contains)>= 2.21.0, < 2.21.4-> fixed in 2.21.4 (backport94c5d21, #5970)>= 3.0.0, < 3.1.4-> fixed in 3.1.4 (#5969,5bf23ed)Severity / CWE
Maintainer: minor. Reporter: HIGH. CWE-863 (Incorrect Authorization); related CWE-1220.
Credits
Omkhar Arasaratnam (@omkhar) - finder.
References