CVE Vulnerabilities

CVE-2020-14060

Deserialization of Untrusted Data

Published: Jun 14, 2020 | Modified: Nov 21, 2024
CVSS 3.x
8.1
HIGH
Source:
NVD
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.x
6.8 MEDIUM
AV:N/AC:M/Au:N/C:P/I:P/A:P
RedHat/V2
RedHat/V3
8.1 IMPORTANT
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Ubuntu
MEDIUM
root.io logo minimus.io logo echo.ai logo

FasterXML jackson-databind 2.x before 2.9.10.5 mishandles the interaction between serialization gadgets and typing, related to oadd.org.apache.xalan.lib.sql.JNDIConnectionPool (aka apache/drill).

Weakness

The product deserializes untrusted data without sufficiently ensuring that the resulting data will be valid.

Affected Software

NameVendorStart VersionEnd Version
Jackson-databindFasterxml2.9.0 (including)2.9.10.5 (excluding)
Red Hat Decision Manager 7RedHatjackson-databind*
Red Hat Fuse 7.7.0RedHatjackson-databind*
Red Hat Process Automation 7RedHatjackson-databind*
Red Hat Satellite 6.6 for RHEL 7RedHatcandlepin-0:2.6.16-1.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHatforeman-0:1.22.0.39-2.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHatsatellite-0:6.6.3-1.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHattfm-rubygem-fog-ovirt-0:1.2.3-1.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHattfm-rubygem-foreman_rh_cloud-0:0.9.4.1-2.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHattfm-rubygem-katello-0:3.12.0.41-1.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHattfm-rubygem-runcible-0:2.13.0-1.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHatcandlepin-0:2.6.16-1.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHatforeman-0:1.22.0.39-2.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHatsatellite-0:6.6.3-1.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHattfm-rubygem-fog-ovirt-0:1.2.3-1.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHattfm-rubygem-foreman_rh_cloud-0:0.9.4.1-2.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHattfm-rubygem-katello-0:3.12.0.41-1.el7sat*
Red Hat Satellite 6.6 for RHEL 7RedHattfm-rubygem-runcible-0:2.13.0-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHatcandlepin-0:2.9.28-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHatforeman-0:1.24.1.24-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHatforeman-installer-1:1.24.1.21-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHatpulp-rpm-0:2.21.0.6-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHatsatellite-0:6.7.2-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-fog-vsphere-0:3.2.1.1-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-foreman_remote_execution-0:2.0.10.1-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-foreman_rh_cloud-0:1.0.9-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-foreman-tasks-0:0.17.5.6-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman-0:0.19.6.5-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-katello-0:3.14.0.25-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHatcandlepin-0:2.9.28-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHatforeman-0:1.24.1.24-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHatforeman-installer-1:1.24.1.21-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHatpulp-rpm-0:2.21.0.6-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHatsatellite-0:6.7.2-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-fog-vsphere-0:3.2.1.1-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-foreman_remote_execution-0:2.0.10.1-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-foreman_rh_cloud-0:1.0.9-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-foreman-tasks-0:0.17.5.6-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-hammer_cli_foreman-0:0.19.6.5-1.el7sat*
Red Hat Satellite 6.7 for RHEL 7RedHattfm-rubygem-katello-0:3.14.0.25-1.el7sat*
Jackson-databindUbuntubionic*
Jackson-databindUbuntueoan*
Jackson-databindUbuntuesm-apps/xenial*
Jackson-databindUbuntufocal*
Jackson-databindUbuntutrusty*
Jackson-databindUbuntutrusty/esm*
Jackson-databindUbuntuxenial*

Potential Mitigations

  • Make fields transient to protect them from deserialization.
  • An attempt to serialize and then deserialize a class containing transient fields will result in NULLs where the transient data should be. This is an excellent way to prevent time, environment-based, or sensitive variables from being carried over and used improperly.

References