c3p0 is a JDBC driver for extending traditional libraries (DriverManager-based libraries) with JNDI bindable data sources (including data sources), as described in the jdbc3 specification and jdbc2 standard extensions. They implement connections and statement pools.
Security Fix(es):
c3p0 is a JDBC connection pooling library. Prior to version 0.12.0, several ConnectionPoolDataSource implementations had a property called userOverridesAsString, which conceptually represents a Map<String,Map<String,String>> but was maintained as a hex-encoded Java serialized object. An attacker able to reset this property on an existing ConnectionPoolDataSource, or via maliciously crafted Java-serialized objects and javax.naming.Reference instances, could trigger deserialization. Combined with vulnerabilities in its main dependency, mchange-commons-java, which includes code mirroring early JNDI implementations with ungated support for remote factoryClassLocation values, attackers could set c3p0's userOverridesAsString to hex-encoded serialized objects that include objects "indirectly serialized" via JNDI references. Deserialization of those objects and dereferencing of the embedded javax.naming.Reference objects could provoke the download and execution of malicious code from a remote factoryClassLocation, leading to arbitrary code execution on the application's CLASSPATH.(CVE-2026-27830)
{
"severity": "High"
}{
"noarch": [
"c3p0-0.9.5.4-4.oe2403sp1.noarch.rpm",
"c3p0-help-0.9.5.4-4.oe2403sp1.noarch.rpm",
"c3p0-0.9.5.4-4.oe2403sp2.noarch.rpm",
"c3p0-help-0.9.5.4-4.oe2403sp2.noarch.rpm",
"c3p0-0.9.5.4-4.oe2403sp3.noarch.rpm",
"c3p0-help-0.9.5.4-4.oe2403sp3.noarch.rpm",
"c3p0-0.9.5.4-4.oe2403.noarch.rpm",
"c3p0-help-0.9.5.4-4.oe2403.noarch.rpm"
],
"src": [
"c3p0-0.9.5.4-4.oe2403sp1.src.rpm",
"c3p0-0.9.5.4-4.oe2403sp2.src.rpm",
"c3p0-0.9.5.4-4.oe2403sp3.src.rpm",
"c3p0-0.9.5.4-4.oe2403.src.rpm"
]
}