CVE-2026-110879: jackson-databind: PolymorphicTypeValidator bypass via generic type arguments and array element types allows arbitrary class instantiation (incomplete fix for CV
Noroxi değerlendirmesi
Öncelik: İzleyin (aksiyon skoru 39/100)
- İzlediğimiz kaynaklarda (CISA KEV, Exploit-DB, Metasploit, Nuclei, GitHub) herkese açık istismar kodu ya da sahada sömürü kaydı yok.
- Önümüzdeki 30 günde sömürülme olasılığı %1,1 (FIRST EPSS); kayıtların %68 kadarından yüksek.
- İnternetten erişebilen herkes tetikleyebilir. Hesap ya da parola gerekmez. Kullanıcının bir şey yapması gerekmez. Özel bir koşul gerekmez; tekrarlanabilir.
- Düzeltilmiş sürüm: FasterXML jackson-databind 2.18.12, 2.21.8, 2.22.4.
Şimdilik düşük öncelik. FasterXML jackson-databind 2.18.12, 2.21.8, 2.22.4 ya da daha yeni sürüme yükseltin.
Kaydın verisinden otomatik üretilir: CVSS (NVD ve CNA), CISA KEV ve SSVC, FIRST EPSS, istismar kaynakları, düzeltme sürümleri. Nasıl hesaplıyoruz
Birincil kaynaklar: NVD · CVE.org · FIRST EPSS
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.
- Yayın
- 28 Eki 2026
- Güncelleme
- 28 Eki 2026
- EPSS
- %1,1 · 68. yüzdelik
- CWE
- CWE-502
Rapor araçları
Aksiyon skoru
39
İzleyin
Şimdilik düşük öncelik.
- CVSS
- 39 / 40 · 9.8 / 10
- CISA KEV
- 0 / 30 · Listede değil
- EPSS
- 0 / 30 · %1,1
CNA ile NVD puanı
- NVD
- —
- CNA · HeroDevs
- 9,8
- NVD henüz kendi puanını vermedi; gösterilen puan CNA’nın.
Kaydı açan otoritenin puanı ile NVD’nin bağımsız puanı. İki puan arasındaki fark ciddiyetin tartışmalı olduğunu gösterir.
Bu kayıt değişirse haber alın
- KEV'de değil: sahada sömürü kaydı yok
- Herkese açık istismar kodu kaydı yok
- Düzeltme yayımlandı
Bunlardan biri değişirse günlük e-posta özetinde haber veririz.
WordPress siteniz mi var? WP Lens ile ücretsiz tarayın
Noroxi analizi
Sizin ortamınızda ne anlama geliyor?
Yukarıdaki değerlendirme kaydın verisinden otomatik üretilir; ortamınızı bilmez. Bu açığın sizde gerçekten sömürülebilir olup olmadığını ve hangi önlemin yeteceğini ekibimiz sizin sistemlerinizde doğrular.
Bu ürünü kullanıyoruz, yardım isteyinEtkilenen sistemler
Sürümünüz etkileniyor mu?
Ürünü seçip kullandığınız sürümü yazın. Bu kaydın sürüm aralıklarıyla tarayıcınızda karşılaştırılır; sürüm hiçbir yere gönderilmez.
—
Üreticinin bildirdiği sürümler
Kaydı açan otorite (HeroDevs) tarafından bildirilen etkilenen sürüm aralıkları. NVD'nin CPE analizinden bağımsızdır ve genellikle ondan önce gelir.
FasterXML jackson-databind
- 2.18.12, 2.21.8, 2.22.4, 3.1.8, 3.2.4etkilenmez
- 2.10.0 ve sonrası · 2.18.12 öncesietkilenir · maven
- 2.19.0 ve sonrası · 2.21.8 öncesietkilenir · maven
- 2.22.0 ve sonrası · 2.22.4 öncesietkilenir · maven
- 3.0.0 ve sonrası · 3.1.8 öncesietkilenir · maven
- 3.2.0 ve sonrası · 3.2.4 öncesietkilenir · maven
Paket düzeyi etkilenme
OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.
| Ekosistem | Paket | Etkilenen aralık | Düzeltme |
|---|---|---|---|
| Debian:12 | jackson-databind | 0 itibarıyla | — |
| Debian:14 | jackson-databind | 2.22.4-1 öncesi | 2.22.4-1 |
| Maven | com.fasterxml.jackson.core:jackson-databind | 2.10.0 itibarıyla · 2.18.8 öncesi | 2.18.8 |
| Maven | com.fasterxml.jackson.core:jackson-databind | 2.19.0 itibarıyla · 2.21.4 öncesi | 2.21.4 |
| Maven | com.fasterxml.jackson.core:jackson-databind | 3.0.0 itibarıyla · 3.1.4 öncesi | 3.1.4 |
| Maven | tools.jackson.core:jackson-databind | 3.0.0 itibarıyla · 3.1.4 öncesi | 3.1.4 |
Aynı üründe
fasterxml: tüm kayıtlarAynı birincil ürünün en yüksek skorlu diğer kayıtları.
- CVE-2017-17485FasterXML jackson-databind through 2.8.10 and 2.9.x through 2.9.3 allows unauthenticated remote code execution because of an incomplete fix 54Planlayın
- CVE-2017-7525A deserialization flaw was discovered in the jackson-databind, versions before 2.6.7.1, 2.7.9.1 and 2.8.9, which could allow an unauthentica50Planlayın
- CVE-2020-8840FasterXML jackson-databind 2.0.0 through 2.9.10.2 lacks certain xbean-reflect/JNDI blocking, as demonstrated by org.apache.xbean.propertyedi47Planlayın
Bu üründe bundan önce ve sonra yayımlananlar
- ← ÖncekiCVE-2026-6849711 Eyl 2026 · jackson-databind: unbounded numeric parse in Duration and XMLGregorianCalendar deserialization allows CPU denial of service30İzleyin
- ← ÖncekiCVE-2026-9177622 Eyl 2026 · jackson-databind: unbounded growth of the type id cache in TypeDeserializerBase retains every unknown raw type ID30İzleyin
- ← ÖncekiCVE-2026-9177722 Eyl 2026 · jackson-databind: quadratic forward-reference completion in Collection and Map deserializers30İzleyin
Düzeltme
Hangi sürüme geçmeli
Üretici, paket deposu ve Microsoft kayıtlarından derlenen düzeltme sürümleri. Yükseltmeden önce üreticinin notunu doğrulayın.
| Ürün / paket | Düzeltilmiş sürüm | Kaynak |
|---|---|---|
| FasterXML jackson-databind | 2.18.12 | Üretici (CNA) |
| FasterXML jackson-databind | 2.21.8 | Üretici (CNA) |
| FasterXML jackson-databind | 2.22.4 | Üretici (CNA) |
| FasterXML jackson-databind | 3.1.8 | Üretici (CNA) |
| FasterXML jackson-databind | 3.2.4 | Üretici (CNA) |
| debian:jackson-databind | 2.22.4-1 · Debian:14 | Paket deposu (OSV) |
| Maven:com.fasterxml.jackson.core:jackson-databind | 2.18.8 | Paket deposu (OSV) |
| Maven:com.fasterxml.jackson.core:jackson-databind | 2.21.4 | Paket deposu (OSV) |
| Maven:com.fasterxml.jackson.core:jackson-databind | 3.1.4 | Paket deposu (OSV) |
| Maven:tools.jackson.core:jackson-databind | 3.1.4 | Paket deposu (OSV) |
İstismar durumu
Bilinen kamuya açık istismar yok
Şu an kamuya açık bir istismar görülmedi. Bu, güvende olduğunuz anlamına gelmez; yalnızca eşiğin biraz daha yüksek olduğunu gösterir.
Araştırma bağlamı
Pentester ve araştırmacı için: saldırı profili, puan anlaşmazlığı, zaman çizelgesi, yama commit’leri, kredi, varyant ve zincir adayları, bug bounty kapsamı. Hepsi mevcut veriden türetilir; istismar kodu içermez.
Zaman çizelgesi
Yayından bugüne: kavram kanıtı, Metasploit modülü, CISA KEV ve düzeltme kaydı. Tarihler kaynakların bildirdiği tarihlerdir.
- Yayın
- Düzeltme kaydıaynı gün
- Bugün2 Kas 2026+6 gün
FIRST EPSS günlük puanı; yalnızca 0,01 ve üstü değişimler kaydedilir (adım grafiği).
Yama ve commit bağlantıları
Referanslardaki commit, PR ve diff adresleri. Patch-diff ve varyant avı için başlangıç noktası; istismar değil, düzeltmedir.
Referanslarda commit ya da PR bağlantısı yok.
Kredi
Tüm araştırmacılarCNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıklayın, aynı araştırmacının diğer kayıtlarını görün.
- martinfrancoisbulan
- AdamKorczbildiren
- cowtowncoder (Tatu Saloranta)düzeltme geliştirici
Varyant adayları
Aynı üründe aynı zafiyet sınıfı, 18 ay içinde. Yama kök nedeni kapatmadıysa kardeş hata burada olur.
- CVE-2026-8355757 gün araylajackson-databind omits java.lang.Comparable from DefaultBaseTypeLimitingValidator's unsafe base types22İzleyin
Zincir adayları
Aynı üründe kimlik doğrulama atlatma ile yetki isteyen bir açık kısa aralıkla yayımlanmış: birlikte kimlik doğrulamasız bir yola dönüşebilir.
—
Bug bounty kapsamı
Bilinen herkese açık program yok.
Kaynak: bounty-targets-data (HackerOne, Bugcrowd, Intigriti, YesWeHack herkese açık listeleri).
Teknik detay
Saldırı koşulları
- İnternetten erişebilen herkes tetikleyebilir.
- Hesap ya da parola gerekmez.
- Kullanıcının bir şey yapması gerekmez.
- Özel bir koşul gerekmez; tekrarlanabilir.
Başarılı olursa
- Gizlilik
- yüksek · veriler okunabilir
- Bütünlük
- yüksek · veri ya da yapılandırma değiştirilebilir
- Erişilebilirlik
- yüksek · hizmet durdurulabilir
- Saldırı vektörü
- Ağ
- Karmaşıklık
- Düşük
- Gereken yetki
- Yok
- Kullanıcı etkileşimi
- Gerekmez
- Kapsam
- Değişmez
- Gizlilik etkisi
- Yüksek
- Bütünlük etkisi
- Yüksek
- Erişilebilirlik etkisi
- Yüksek
Zayıflık sınıfı (CWE)
CWE-502 · Deserialization of Untrusted DataCVSS vektörü
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
nvd-secondary
Kök neden
Ağdan gelen veri, kaynağı doğrulanmadan dilin yerel nesne biçimine çözümleniyor. Çözümleme sırasında nesnenin içindeki kod yolları tetiklenebilir.
Hatanın kod karşılığı
CWE-502 sınıfının tamamıBu zafiyet sınıfının temsili örneği. Üreticinin kaynak kodu değildir; hatalı kalıbı ve düzeltmesini gösterir.
Hatalı
payload = sock.recv(65536)
job = pickle.loads(payload)Düzeltilmiş
payload = sock.recv(65536)
if not hmac.compare_digest(sign(payload), header_sig):
raise PermissionError("imza geçersiz")
job = JobSchema.validate(json.loads(payload))Saldırı bağlamı
Bu zafiyet sınıfının (CWE) MITRE CAPEC saldırı desenleri ve ATT&CK teknikleri. Tespit kuralı ve tehdit avı için başlangıç noktası.
Saldırı desenleri (CAPEC)
ATT&CK teknikleri
—
Değişiklik günlüğü
- İstismar olgunluğu— → none
- Düzeltme✗ → ✓
Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →
Referanslar
Tüm referansları göster (2 daha)Daha az göster
Üretici bildirimleri ve resmî kayıtlar. İstismar/PoC bağlantıları bilinçli olarak dışarıda bırakıldı.