CVE-2026-54513 PUBLISHED

jackson-databind: Array subtype allowlist bypass in BasicPolymorphicTypeValidator (allowIfSubTypeIsArray)

Assigner: GitHub_M
Reserved: 15.06.2026 Published: 23.06.2026 Updated: 24.06.2026

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.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS Score: 8.1

Product Status

Vendor FasterXML
Product jackson-databind
Versions
  • Version >= 2.10.0, < 2.18.8 is affected
  • Version >= 2.19.0, < 2.21.4 is affected
  • Version >= 3.0.0, < 3.1.4 is affected

References

Problem Types

  • CWE-184: Incomplete List of Disallowed Inputs CWE