脆弱性の一覧へ戻る
編集部の見出し:jackson-databind(Java の JSON 変換ライブラリ。型の検証をすり抜けて、攻撃者が選んだクラスを作らせられる)
NVD の情報
jackson-databind validates the outer class of a class-name type ID but accepts attacker-selected classes inside its generic arguments, even when those classes violate the declared type or would be rejected as direct type IDs. This bypasses the generic-argument validation added for CVE-2026-54512 (GHSA-j3rv-43j4-c7qm), of which this is an incomplete fix. DatabindContext._resolveAndValidateGeneric() checks the outer class against the declared base type and then passes each argument from the type ID to _validateTypeParameter(), which validates the argument against the outer base type rather than enforcing its corresponding declared generic binding. It also invokes validators with arguments that have not passed the subtype check those validators expect. Under the default DefaultBaseTypeLimitingValidator this accepts an unrelated class inside a generic subtype even when the same class is rejected as a direct type ID. Where an allowIfBaseType(...) rule approves the outer type, Jackson substitutes LaissezFaireSubTypeValidator, so the configured validator no longer restricts the embedded arguments. The element type of a plain array type ID such as [Lpkg.Gadget; is likewise left unvalidated once the array's base type is approved. Affected paths include annotation-based class-name polymorphism with a default Jackson 3.x JsonMapper, configured default typing in both Jackson 2.x and 3.x, and integrations that expose that default typing. The default-validator case requires no application-authored validator: with @JsonTypeInfo(use = Id.CLASS), a direct gadget type ID is rejected as "Not a subtype", while a type ID naming a generic wrapper around the same gadget is accepted and deserialized, including attacker-supplied bean properties. Where class-name default typing permits Map, a property declared as Map<String,String> accepts HashMap<FileSystemXmlApplicationContext,String>; map-key discovery then passes the attacker-controlled JSON property name to the selected class's one-string constructor. With Spring on the classpath and attacker-controlled XML the application can load, that constructor loads the XML and invokes ProcessBuilder.start() under the application account, giving arbitrary command execution. This issue affects com.fasterxml.jackson.core:jackson-databind from 2.10.0 and tools.jackson.core:jackson-databind from 3.0.0. Releases before 2.10.0 are not affected, because PolymorphicTypeValidator was introduced in jackson-databind 2.10.0.
- 公開日
- 2026-10-28
- 最終更新(NVD)
- 2026-10-28
- NVD の状態
- Awaiting Analysis
- 脆弱性の種類
- CWE-502
深刻度(CVSS)
- 9.8 CriticalCVSS 3.1/副/評価:36c7be3b-2937-45df-85ea-ca7133ea542c
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
悪用の状況
CISA KEV には掲載されていません(掲載されていないことは、悪用されていないことの証明ではありません)。
EPSS:今後30日に悪用される推定確率 1.20%(全体の上位 31.9%、評価日 2026-10-30)
解消方法
- 解消方法の情報なし
「NVD の条件から推定」は、NVD が影響ありとする版の上限から読み取ったもので、修正版とは限りません。「解消方法の情報なし」は、修正が無いという意味ではありません。必ずベンダーの公告で確認してください。
編集部の記載(レポート掲載時)
レポートの編集部がベンダー公告などから転記した内容です。検証済みの値ではないため、必ず出典で確認してください。
2026-10-28 のレポートjackson-databind(Java の JSON 変換ライブラリ。型の検証をすり抜けて、攻撃者が選んだクラスを作らせられる)
参照(NVD)
NVD から取得:2026-10-30T18:01:22.692Z/EPSS 評価日:2026-10-30
This product uses the NVD API but is not endorsed or certified by the NVD.
悪用の確認情報は CISA Known Exploited Vulnerabilities Catalog(NVD 経由で取得)によります。EPSS は FIRST(www.first.org/epss)によります。