CVE-2019-14893: Infoleak
A flaw was discovered in FasterXML jackson-databind in all versions before 2.9.10 and 2.10.0, where it would permit polymorphic deserialization of malicious objects using the xalan JNDI gadget when used in conjunction with polymorphic type handling methods such as enableDefaultTyping() or when @JsonTypeInfo is using Id.CLASS or Id.MINIMALCLASS or in any other way which ObjectMapper.readValue might instantiate objects from unsafe sources. An attacker could use this flaw to execute arbitrary code.
Other sources
A flaw was found in jackson-databind before 2.9.10. New serialization gadgets were found regarding a class of the xalan package which may help in exploiting deserialization issues.
Upstream issue:
https://github.com/FasterXML/jackson-databind/issues/2469
Upstream patch:
https://github.com/FasterXML/jackson-databind/commit/998efd708284778f29d83d7962a9bd935c228317
References:
https://medium.com/@cowtowncoder/on-jackson-cves-dont-panic-here-is-what-you-need-to-know-54cd0d6e8062
— Red Hat
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
redhat/eap7-apache-cxfto a version that resolves this vulnerability.Fixed in 0:3.2.11-1.redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-glassfish-jsfto a version that resolves this vulnerability.Fixed in 0:2.3.5-6.SP3_redhat_00004.1.el6ea - Upgrade
Upgrade
redhat/eap7-hal-consoleto a version that resolves this vulnerability.Fixed in 0:3.0.19-1.Final_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-hibernateto a version that resolves this vulnerability.Fixed in 0:5.3.14-1.Final_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-hibernate-validatorto a version that resolves this vulnerability.Fixed in 0:6.0.18-1.Final_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-jackson-annotationsto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el6ea - Upgrade
Upgrade
redhat/eap7-jackson-coreto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el6ea - Upgrade
Upgrade
redhat/eap7-jackson-databindto a version that resolves this vulnerability.Fixed in 0:2.9.10.1-1.redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-jackson-dataformats-binaryto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el6ea - Upgrade
Upgrade
redhat/eap7-jackson-dataformats-textto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el6ea - Upgrade
Upgrade
redhat/eap7-jackson-jaxrs-providersto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el6ea - Upgrade
Upgrade
redhat/eap7-jackson-modules-baseto a version that resolves this vulnerability.Fixed in 0:2.9.10-2.redhat_00003.1.el6ea - Upgrade
Upgrade
redhat/eap7-jackson-modules-java8to a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el6ea - Upgrade
Upgrade
redhat/eap7-jberetto a version that resolves this vulnerability.Fixed in 0:1.3.5-1.Final_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-jboss-ejb-clientto a version that resolves this vulnerability.Fixed in 0:4.0.27-1.Final_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-jboss-server-migrationto a version that resolves this vulnerability.Fixed in 0:1.3.1-7.Final_redhat_00007.1.el6ea - Upgrade
Upgrade
redhat/eap7-jboss-xnio-baseto a version that resolves this vulnerability.Fixed in 0:3.7.6-3.SP2_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-nettyto a version that resolves this vulnerability.Fixed in 0:4.1.42-1.Final_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-picketlink-bindingsto a version that resolves this vulnerability.Fixed in 0:2.5.5-21.SP12_redhat_00010.1.el6ea - Upgrade
Upgrade
redhat/eap7-undertowto a version that resolves this vulnerability.Fixed in 0:2.0.28-2.SP1_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-undertow-jastowto a version that resolves this vulnerability.Fixed in 0:2.0.8-1.Final_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-weld-coreto a version that resolves this vulnerability.Fixed in 0:3.0.6-3.Final_redhat_00003.1.el6ea - Upgrade
Upgrade
redhat/eap7-wildflyto a version that resolves this vulnerability.Fixed in 0:7.2.6-5.GA_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-wildfly-http-clientto a version that resolves this vulnerability.Fixed in 0:1.0.18-2.Final_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-wildfly-transaction-clientto a version that resolves this vulnerability.Fixed in 0:1.1.8-1.Final_redhat_00001.1.el6ea - Upgrade
Upgrade
redhat/eap7-apache-cxfto a version that resolves this vulnerability.Fixed in 0:3.2.11-1.redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-glassfish-jsfto a version that resolves this vulnerability.Fixed in 0:2.3.5-6.SP3_redhat_00004.1.el7ea - Upgrade
Upgrade
redhat/eap7-hal-consoleto a version that resolves this vulnerability.Fixed in 0:3.0.19-1.Final_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-hibernateto a version that resolves this vulnerability.Fixed in 0:5.3.14-1.Final_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-hibernate-validatorto a version that resolves this vulnerability.Fixed in 0:6.0.18-1.Final_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-jackson-annotationsto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el7ea - Upgrade
Upgrade
redhat/eap7-jackson-coreto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el7ea - Upgrade
Upgrade
redhat/eap7-jackson-databindto a version that resolves this vulnerability.Fixed in 0:2.9.10.1-1.redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-jackson-dataformats-binaryto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el7ea - Upgrade
Upgrade
redhat/eap7-jackson-dataformats-textto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el7ea - Upgrade
Upgrade
redhat/eap7-jackson-jaxrs-providersto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el7ea - Upgrade
Upgrade
redhat/eap7-jackson-modules-baseto a version that resolves this vulnerability.Fixed in 0:2.9.10-2.redhat_00003.1.el7ea - Upgrade
Upgrade
redhat/eap7-jackson-modules-java8to a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el7ea - Upgrade
Upgrade
redhat/eap7-jberetto a version that resolves this vulnerability.Fixed in 0:1.3.5-1.Final_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-jboss-ejb-clientto a version that resolves this vulnerability.Fixed in 0:4.0.27-1.Final_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-jboss-server-migrationto a version that resolves this vulnerability.Fixed in 0:1.3.1-7.Final_redhat_00007.1.el7ea - Upgrade
Upgrade
redhat/eap7-jboss-xnio-baseto a version that resolves this vulnerability.Fixed in 0:3.7.6-3.SP2_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-nettyto a version that resolves this vulnerability.Fixed in 0:4.1.42-1.Final_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-picketlink-bindingsto a version that resolves this vulnerability.Fixed in 0:2.5.5-21.SP12_redhat_00010.1.el7ea - Upgrade
Upgrade
redhat/eap7-undertowto a version that resolves this vulnerability.Fixed in 0:2.0.28-2.SP1_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-undertow-jastowto a version that resolves this vulnerability.Fixed in 0:2.0.8-1.Final_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-weld-coreto a version that resolves this vulnerability.Fixed in 0:3.0.6-3.Final_redhat_00003.1.el7ea - Upgrade
Upgrade
redhat/eap7-wildflyto a version that resolves this vulnerability.Fixed in 0:7.2.6-5.GA_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-wildfly-http-clientto a version that resolves this vulnerability.Fixed in 0:1.0.18-2.Final_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-wildfly-transaction-clientto a version that resolves this vulnerability.Fixed in 0:1.1.8-1.Final_redhat_00001.1.el7ea - Upgrade
Upgrade
redhat/eap7-apache-cxfto a version that resolves this vulnerability.Fixed in 0:3.2.11-1.redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-glassfish-jsfto a version that resolves this vulnerability.Fixed in 0:2.3.5-6.SP3_redhat_00004.1.el8ea - Upgrade
Upgrade
redhat/eap7-hal-consoleto a version that resolves this vulnerability.Fixed in 0:3.0.19-1.Final_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-hibernateto a version that resolves this vulnerability.Fixed in 0:5.3.14-1.Final_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-hibernate-validatorto a version that resolves this vulnerability.Fixed in 0:6.0.18-1.Final_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-jackson-annotationsto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el8ea - Upgrade
Upgrade
redhat/eap7-jackson-coreto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el8ea - Upgrade
Upgrade
redhat/eap7-jackson-databindto a version that resolves this vulnerability.Fixed in 0:2.9.10.1-1.redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-jackson-dataformats-binaryto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el8ea - Upgrade
Upgrade
redhat/eap7-jackson-dataformats-textto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el8ea - Upgrade
Upgrade
redhat/eap7-jackson-jaxrs-providersto a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el8ea - Upgrade
Upgrade
redhat/eap7-jackson-modules-baseto a version that resolves this vulnerability.Fixed in 0:2.9.10-2.redhat_00003.1.el8ea - Upgrade
Upgrade
redhat/eap7-jackson-modules-java8to a version that resolves this vulnerability.Fixed in 0:2.9.10-1.redhat_00003.1.el8ea - Upgrade
Upgrade
redhat/eap7-jberetto a version that resolves this vulnerability.Fixed in 0:1.3.5-1.Final_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-jboss-ejb-clientto a version that resolves this vulnerability.Fixed in 0:4.0.27-1.Final_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-jboss-server-migrationto a version that resolves this vulnerability.Fixed in 0:1.3.1-7.Final_redhat_00007.1.el8ea - Upgrade
Upgrade
redhat/eap7-jboss-xnio-baseto a version that resolves this vulnerability.Fixed in 0:3.7.6-3.SP2_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-nettyto a version that resolves this vulnerability.Fixed in 0:4.1.42-1.Final_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-picketlink-bindingsto a version that resolves this vulnerability.Fixed in 0:2.5.5-21.SP12_redhat_00010.1.el8ea - Upgrade
Upgrade
redhat/eap7-undertowto a version that resolves this vulnerability.Fixed in 0:2.0.28-2.SP1_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-undertow-jastowto a version that resolves this vulnerability.Fixed in 0:2.0.8-1.Final_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-weld-coreto a version that resolves this vulnerability.Fixed in 0:3.0.6-3.Final_redhat_00003.1.el8ea - Upgrade
Upgrade
redhat/eap7-wildflyto a version that resolves this vulnerability.Fixed in 0:7.2.6-5.GA_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-wildfly-http-clientto a version that resolves this vulnerability.Fixed in 0:1.0.18-2.Final_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/eap7-wildfly-transaction-clientto a version that resolves this vulnerability.Fixed in 0:1.1.8-1.Final_redhat_00001.1.el8ea - Upgrade
Upgrade
redhat/jackson-databindto a version that resolves this vulnerability.Fixed in 2.9.10 - Upgrade
Upgrade
redhat/jackson-databindto a version that resolves this vulnerability.Fixed in 2.10.0 - Upgrade
Upgrade
FasterXML jackson-databindto a version that resolves this vulnerability.Fixed in 2.9.10 - Upgrade
Upgrade
FasterXML jackson-databindto a version that resolves this vulnerability.Fixed in 2.10.0 - Configuration
Do not use polymorphic type handling such as ObjectMapper.enableDefaultTyping() when deserializing data from sources you do not control.
Jackson ObjectMapper (jackson-databind) enableDefaultTyping() = do not enable - Configuration
Avoid configuring @JsonTypeInfo to use id.CLASS or id.MINIMAL_CLASS for polymorphic deserialization, especially when the input may come from unsafe sources.
Jackson @JsonTypeInfo use of @JsonTypeInfo with id.CLASS or id.MINIMAL_CLASS = avoid
Event History
Parent advisories
This vulnerability appears in the following advisories.
Frequently Asked Questions
What is the severity of CVE-2019-14893?
CVE-2019-14893 is considered a critical severity vulnerability affecting FasterXML jackson-databind versions prior to 2.9.10 and 2.10.0.
How do I fix CVE-2019-14893?
To remediate CVE-2019-14893, upgrade FasterXML jackson-databind to version 2.9.10 or later or 2.10.0 or later.
Which applications are affected by CVE-2019-14893?
CVE-2019-14893 affects applications that use vulnerable versions of FasterXML jackson-databind and employ polymorphic type handling.
What attacks are possible due to CVE-2019-14893?
CVE-2019-14893 could allow an attacker to exploit polymorphic deserialization vulnerabilities, potentially leading to remote code execution.
Are there any known exploits for CVE-2019-14893?
Yes, CVE-2019-14893 has known exploits that leverage polymorphic deserialization using the xalan JNDI gadget.