jackson-databind contains the general-purpose data-binding functionality and tree-model for Jackson Data Processor. From 2.10.0 until 2.18.8, 2.21.4, and 3.1.4, BasicPolymorphicTypeValidator.Builder.allowIfSubTypeIsArray() allowlists any array type based only on clazz.isArray(), without validating the array's component (element) type against the configured allowlist. A PTV built with allowIfSubTypeIsArray() plus an explicit concrete-type allowlist therefore still permits EvilType[] even though EvilType is not allowlisted. When Jackson deserializes the elements and no per-element type IDs are present, it instantiates the component type directly with no further PTV check, bypassing the allowlist. This vulnerability is fixed in 2.18.8, 2.21.4, and 3.1.4.
| Vendor | Product | Version(s) | CPE |
|---|---|---|---|
>= 2.10.0, < 2.18.8CPE matchmatch criteria | cpe:2.3:a:fasterxml:jackson-databind:*:*:*:*:*:*:*:* | ||
>= 2.19.0, < 2.21.4CPE matchmatch criteria | cpe:2.3:a:fasterxml:jackson-databind:*:*:*:*:*:*:*:* | ||
>= 3.0.0, < 3.1.4CPE matchmatch criteria | cpe:2.3:a:fasterxml:jackson-databind:*:*:*:*:*:*:*:* |
CVSS version used by this source: 3.1
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
The average CVE in this peer group has 0.0 Twitter, 0.1 Reddit, 0.1 Bluesky, 0.0 Mastodon, and 0.2 GitHub mentions.
No media coverage found for this CVE.
The average CVE in this peer group has 0.1 InfoSec Media, 0.0 Vendor Blog, and 0.0 Security Researcher mentions.