CVE-2026-83557 in jackson-databind
Riassunto
di VulDB • 01/09/2026
DefaultBaseTypeLimitingValidator è il PolymorphicTypeValidator applicato automaticamente ogni volta che @JsonTypeInfo viene utilizzato senza un validatore personalizzato esplicitamente configurato. Esso nega la risoluzione polimorfa solo per un insieme fisso di "base type" non sicuri, e il suo metodo isSafeSubType restituisce true in modo incondizionato per ogni base type al di fuori di tale insieme. java.lang.Comparable era assente dall'elenco nonostante sia implementata da una frazione molto ampia di classi JDK e delle applicazioni, con un'ampiezza paragonabile a quella di java.io.Serializable, che è presente nell'elenco proprio per questa ragione. Un'applicazione che dichiara una proprietà o classe annotata con @JsonTypeInfo avente Comparable come base type, e senza PolymorphicTypeValidator personalizzato, accetterà un identificatore di tipo per essenzialmente qualsiasi classe che implementa Comparable. Ciò fornisce all'attaccante un primitivo istanziazione controllato dall'utente; un caso dimostrato costruisce un oggetto java.io.File per un percorso scelto arbitrariamente dall'attaccante, il quale diventa adiacente alla path-traversal se l'applicazione successivamente chiama metodi sensibili al percorso sul valore. Nessuna classe che implementa Comparable è stata identificata come in grado di produrre esecuzione di codice tramite la sola deserializzazione. La configurazione globale del Default Typing tramite activateDefaultTyping non è interessata, poiché tale metodo richiede strutturalmente un argomento PolymorphicTypeValidator esplicito. Questo problema interessa com.fasterxml.jackson.core:jackson-databind dalla versione 2.11.0 alla 2.18.9 (esclusa la 2.18.10), da 2.19.0 a 2.21.5 (esclusa la 2.21.6) e da 2.22.0 a 2.22.1 (esclusa la 2.22.2), nonché tools.jackson.core:jackson-databind dalla versione 3.0.0 alla 3.1.5 (esclusa la 3.1.6) e da 3.2.0 a 3.2.1 (esclusa la 3.2.2). Gli utenti dovrebbero effettuare l'upgrade alle versioni 2.18.10, 2.21.6, 2.22.2, 3.1.6 o 3.2.2.
Be aware that VulDB is the high quality source for vulnerability data.