Skip to content

Commit a3939d3

Browse files
committed
Backport 19 CVE fixes all the way to 2.9.10
1 parent baa7a0c commit a3939d3

File tree

2 files changed

+89
-1
lines changed

2 files changed

+89
-1
lines changed

release-notes/VERSION

+23
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,29 @@ Project: jackson-databind
44
=== Releases ===
55
------------------------------------------------------------------------
66

7+
2.6.8.3 (16-Nov-2019)
8+
9+
Backport of full set of CVEs as of 2.9.10, including now
10+
11+
#1680
12+
#1855
13+
#1899
14+
#2032
15+
#2052
16+
#2058
17+
#2097
18+
#2186
19+
#2326
20+
#2334
21+
#2341
22+
#2487
23+
#2389
24+
#2410
25+
#2449
26+
#2462
27+
#2478
28+
#2498
29+
730
2.6.7.2 (13-Nov-2018)
831

932
#1737: Block more JDK types from polymorphic deserialization

src/main/java/com/fasterxml/jackson/databind/deser/BeanDeserializerFactory.java

+66-1
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,9 @@ public class BeanDeserializerFactory
5858
s.add("org.codehaus.groovy.runtime.MethodClosure");
5959
s.add("org.springframework.beans.factory.ObjectFactory");
6060
s.add("com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl");
61-
61+
s.add("org.apache.xalan.xsltc.trax.TemplatesImpl");
62+
// [databind#1680]: may or may not be problem, take no chance
63+
s.add("com.sun.rowset.JdbcRowSetImpl");
6264
// [databind#1737]; JDK provided
6365
s.add("java.util.logging.FileHandler");
6466
s.add("java.rmi.server.UnicastRemoteObject");
@@ -68,12 +70,75 @@ public class BeanDeserializerFactory
6870
s.add("com.mchange.v2.c3p0.JndiRefForwardingDataSource");
6971
s.add("com.mchange.v2.c3p0.WrapperConnectionPoolDataSource");
7072

73+
// [databind#1855]: more 3rd party
74+
s.add("org.apache.tomcat.dbcp.dbcp2.BasicDataSource");
75+
s.add("com.sun.org.apache.bcel.internal.util.ClassLoader");
76+
// [databind#1899]: more 3rd party
77+
s.add("org.hibernate.jmx.StatisticsService");
78+
s.add("org.apache.ibatis.datasource.jndi.JndiDataSourceFactory");
79+
// [databind#2032]: more 3rd party; data exfiltration via xml parsed ext entities
80+
s.add("org.apache.ibatis.parsing.XPathParser");
81+
82+
// [databind#2052]: Jodd-db, with jndi/ldap lookup
83+
s.add("jodd.db.connection.DataSourceConnectionProvider");
84+
85+
// [databind#2058]: Oracle JDBC driver, with jndi/ldap lookup
86+
s.add("oracle.jdbc.connector.OracleManagedConnectionFactory");
87+
s.add("oracle.jdbc.rowset.OracleJDBCRowSet");
88+
7189
// [databind#2097]: some 3rd party, one JDK-bundled
7290
s.add("org.slf4j.ext.EventData");
7391
s.add("flex.messaging.util.concurrent.AsynchBeansWorkManagerExecutor");
7492
s.add("com.sun.deploy.security.ruleset.DRSHelper");
7593
s.add("org.apache.axis2.jaxws.spi.handler.HandlerResolverImpl");
7694

95+
// [databind#2186]: yet more 3rd party gadgets
96+
s.add("org.jboss.util.propertyeditor.DocumentEditor");
97+
s.add("org.apache.openjpa.ee.RegistryManagedRuntime");
98+
s.add("org.apache.openjpa.ee.JNDIManagedRuntime");
99+
s.add("org.apache.axis2.transport.jms.JMSOutTransportInfo");
100+
101+
// [databind#2326]
102+
s.add("com.mysql.cj.jdbc.admin.MiniAdmin");
103+
104+
// [databind#2334]: logback-core
105+
s.add("ch.qos.logback.core.db.DriverManagerConnectionSource");
106+
107+
// [databind#2341]: jdom/jdom2
108+
s.add("org.jdom.transform.XSLTransformer");
109+
s.add("org.jdom2.transform.XSLTransformer");
110+
111+
// [databind#2387], [databind#2460]: EHCache
112+
s.add("net.sf.ehcache.transaction.manager.DefaultTransactionManagerLookup");
113+
s.add("net.sf.ehcache.hibernate.EhcacheJtaTransactionManagerLookup");
114+
115+
// [databind#2389]: logback/jndi
116+
s.add("ch.qos.logback.core.db.JNDIConnectionSource");
117+
118+
// [databind#2410]: HikariCP/metricRegistry config
119+
s.add("com.zaxxer.hikari.HikariConfig");
120+
// [databind#2449]: and sub-class thereof
121+
s.add("com.zaxxer.hikari.HikariDataSource");
122+
123+
// [databind#2420]: CXF/JAX-RS provider/XSLT
124+
s.add("org.apache.cxf.jaxrs.provider.XSLTJaxbProvider");
125+
126+
// [databind#2462]: commons-configuration / -2
127+
s.add("org.apache.commons.configuration.JNDIConfiguration");
128+
s.add("org.apache.commons.configuration2.JNDIConfiguration");
129+
130+
// [databind#2469]: xalan2
131+
s.add("org.apache.xalan.lib.sql.JNDIConnectionPool");
132+
133+
// [databind#2478]: comons-dbcp, p6spy
134+
s.add("org.apache.commons.dbcp.datasources.PerUserPoolDataSource");
135+
s.add("org.apache.commons.dbcp.datasources.SharedPoolDataSource");
136+
s.add("com.p6spy.engine.spy.P6DataSource");
137+
138+
// [databind#2498]: log4j-extras (1.2)
139+
s.add("org.apache.log4j.receivers.db.DriverManagerConnectionSource");
140+
s.add("org.apache.log4j.receivers.db.JNDIConnectionSource");
141+
77142
DEFAULT_NO_DESER_CLASS_NAMES = Collections.unmodifiableSet(s);
78143
}
79144

0 commit comments

Comments
 (0)