Description
jackson-databind contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor. From 2.21.0 until 2.21.4 and 3.1.4, in BeanDeserializer._deserializeUsingPropertyBased, the active-view (@JsonView) filter was applied only to creator properties; the regular property-buffering branch performed no prop.visibleInView(activeView) check. A change making SetterlessProperty.isMerging() return true routed setterless Collection/Map properties through this unguarded path, so a setterless collection annotated with a restricted @JsonView is populated from attacker JSON even when the active view excludes it. This vulnerability is fixed in 2.21.4 and 3.1.4.
CVSS breakdown
CVSS 3.1
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
None
Affected products
- FasterXML / jackson-databind>= 2.21.0, < 2.21.4 – >= 2.21.0, < 2.21.4
- FasterXML / jackson-databind>= 3.0.0, < 3.1.4 – >= 3.0.0, < 3.1.4
References
- VENDOR_ADVISORYhttps://github.com/FasterXML/jackson-databind/security/advisories/GHSA-5hh8-q8hv-fr38
- PATCHhttps://github.com/FasterXML/jackson-databind/pull/5969
- PATCHhttps://github.com/FasterXML/jackson-databind/pull/5970
- PATCHhttps://github.com/FasterXML/jackson-databind/commit/5bf23edb4221f7dd2ec8e71ff6d26c61640f261d
- PATCHhttps://github.com/FasterXML/jackson-databind/commit/94c5d215b3af1505098c686405d9641f041a9962