CVE Vulnerabilities

CVE-2020-36179

Deserialization of Untrusted Data

Published: Jan 07, 2021 | 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
LOW
root.io logo minimus.io logo echo.ai logo

FasterXML jackson-databind 2.x before 2.9.10.8 mishandles the interaction between serialization gadgets and typing, related to oadd.org.apache.commons.dbcp.cpdsadapter.DriverAdapterCPDS.

Weakness

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

Affected Software

NameVendorStart VersionEnd Version
Cloud_backupNetapp- (including)- (including)
Service_level_managerNetapp- (including)- (including)
OpenShift Logging 5.0RedHatopenshift-logging/elasticsearch6-rhel8:v5.0.3-1*
Red Hat OpenShift Container Platform 4.6RedHatopenshift4/ose-logging-elasticsearch6:v4.6.0-202104161407.p0*
Jackson-databindUbuntubionic*
Jackson-databindUbuntufocal*
Jackson-databindUbuntugroovy*
Jackson-databindUbuntuhirsute*
Jackson-databindUbuntuimpish*
Jackson-databindUbuntukinetic*
Jackson-databindUbuntulunar*
Jackson-databindUbuntumantic*
Jackson-databindUbuntuoracular*
Jackson-databindUbuntuplucky*
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