Highlights
Deserialization: 1 prior fix. Scrutinize any change in this area.
com.mchange.v2.c3p0: most-fixed (1 issue). Treat as high-risk during review.
3 high-severity fixes in this history; regressions here are high-impact.
Recurring patterns
The bug types that recur here, drawn from past fixes, not open vulnerabilities.
Deserialization of Untrusted Data: Standard Java serialization of DataSource objects allowed attackers to execute arbitrary code via deserialization gadgets. Developers must ensure the custom SecurelyStringifiable representation is enforced and that standard Java serialization endpoints remain disabled.
Deserialization: Using permissive object factories like JavaBeanObjectFactory during JNDI reference-to-object conversions enabled remote code execution. Maintaining a strict class allowlist in ReferenceableUtils is vital to block unauthorized factory instantiations.
SQL Injection: The connection pool manager accepted unvalidated table names during automatic test table initialization, which could be abused for SQL injection. Dynamic database parameters must always be sanitized against valid Java/SQL identifier rules.