CVE-2026-27830

Yüksek

Açıklama

Bir JDBC bağlantı havuzu kütüphanesi olan c3p0, kötü niyetle oluşturulmuş Java serileştirilmiş nesneler ve `javax.naming.Reference` örnekleri aracılığıyla saldırılara karşı savunmasızdır. Çeşitli c3p0 `ConnectionPoolDataSource` uygulamaları, kavramsal olarak bir `Map<String,Map<String,String>>` temsil eden `userOverridesAsString` adlı bir özelliğe sahiptir. v0.12.0 öncesinde bu özellik, hex ile kodlanmış serileştirilmiş bir nesne olarak tutulmaktaydı. Mevcut bir `ConnectionPoolDataSource` üzerinde bu özelliği sıfırlayabilen veya kötü niyetle oluşturulmuş serileştirilmiş nesneler ya da `javax.naming.Reference` örneklerini kullanabilen herhangi bir saldırgan, uygulamanın `CLASSPATH` dizininde beklenmedik kodlar çalıştırabilir. Bu güvenlik açığının tehlikesi, c3p0'ın ana bağımlılığı olan mchange-commons-java'daki açıklarla ciddi şekilde artmıştır. Bu kütüphane, uzak `factoryClassLocation` değerleri için denetimsiz destek de dahil olmak üzere, JNDI işlevselliğinin erken uygulamalarını yansıtan kodlar içermektedir. Saldırganlar, JNDI referansları aracılığıyla "dolaylı olarak serileştirilmiş" nesneler içeren hex kodlu serileştirilmiş c3p0 `userOverridesAsString` nesneleri ayarlayabilirler. Bu nesnelerin serisizleştirilmesi ve gömülü `javax.naming.Reference` nesnelerinin çözümlenmesi, uzak bir `factoryClassLocation` üzerinden kötü amaçlı kodun indirilmesini ve çalıştırılmasını tetikleyebilir. c3p0'ın zafiyetlerinin yarattığı risk mchange-commons-java'daki açıklarla şiddetlenmiş olsa da, JNDI arayüzleri üzerinden açığa çıkabilecek nesneler için yazılabilir bir Java-Bean özelliği formatı olarak Java serileştirilmiş nesne hex yapısının kullanılması, tek başına ciddi bir kırılganlığı temsil etmektedir. c3p0 `ConnectionPoolDataSource` sınıflarının `userOverridesAsString` özelliği, potansiyel olarak tehlikeli Java nesne serisizleştirmesine güvenmek yerine, güvenli bir CSV tabanlı format kullanacak şekilde yeniden uygulanmıştır. c3p0-0.12.0+ ve üzeri sürümler, uzak `factoryClassLocation` değerlerine verilen desteği varsayılan olarak kısıtlayıcı değerlere sahip yapılandırma parametreleriyle denetleyen mchange-commons-java 0.4.0+ sürümüne bağımlıdır. c3p0 ayrıca, beklenmedik ve potansiyel olarak uzak JNDI adlarının enjekte edilmesini önlemek için yeni mchange-commons-java `com.mchange.v2.naming.nameGuardClassName` özelliğini zorunlu kılar. 0.12.0 öncesindeki c3p0 sürümleri için desteklenen bir geçici çözüm bulunmamaktadır.

ÖnemYüksek
CVSS8.0
İstismar olasılığı—
ÜrünCom.mchange:c3p0
Yayın26 Şub 2026
İlk görülme26 Şub 2026

Nasıl düzeltilir

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
com.mchange:c3p0Mavenv < 0.12.00.12.0

Sürümünüzü kontrol edin

Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.

Intelligence 360 paketinde

Attack Surface Management

Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.

CVE-2026-27830 · Com.mchange:c3p0 · Dark Radar