PT-2021-21773 · Google · Tensorflow

Mihaimaruseac

·

Published

2021-08-12

·

Updated

2024-03-06

·

CVE-2021-37657

CVSS v3.1

7.8

High

VectorAV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Name of the Vulnerable Software and Affected Versions TensorFlow versions prior to 2.6.0 TensorFlow version 2.5.1 TensorFlow version 2.4.3 TensorFlow version 2.3.4
Description TensorFlow is an end-to-end open source platform for machine learning. In affected versions, an attacker can cause undefined behavior via binding a reference to null pointer in all operations of type tf.raw ops.MatrixDiagV*. The implementation has incomplete validation that the value of k is a valid tensor. We have a check that this value is either a scalar or a vector, but there is no check for the number of elements. If this is an empty tensor, then code that accesses the first element of the tensor is wrong.
Recommendations For TensorFlow versions prior to 2.6.0, update to version 2.6.0 or later. For TensorFlow version 2.5.1, apply the patch from GitHub commit f2a673bd34f0d64b8e40a551ac78989d16daad09. For TensorFlow version 2.4.3, apply the patch from GitHub commit f2a673bd34f0d64b8e40a551ac78989d16daad09. For TensorFlow version 2.3.4, apply the patch from GitHub commit f2a673bd34f0d64b8e40a551ac78989d16daad09. As a temporary workaround, consider disabling the tf.raw ops.MatrixDiagV* operations until a patch is available.

Fix

Access of Uninitialized Pointer

Weakness Enumeration

Related Identifiers

BIT-TENSORFLOW-2021-37657
CVE-2021-37657
GHSA-5XWC-MRHX-5G3M
OPENSUSE-SU-2022:10014-1
OPENSUSE-SU-2024:12116-1
PYSEC-2021-279
PYSEC-2021-570
PYSEC-2021-768

Affected Products

Tensorflow