Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en la vinculación de una referencia a un puntero null en las operaciones de tipo "tf.raw_ops.MatrixDiagV*" en TensorFlow (CVE-2021-37657)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-824 Acceso a puntero no inicializado
Fecha de publicación:
12/08/2021
Última modificación:
18/08/2021

Descripción

TensorFlow es una plataforma de código abierto de extremo a extremo para el aprendizaje automático. En las versiones afectadas, un atacante puede causar un comportamiento indefinido por medio de la vinculación de una referencia a un puntero null en todas las operaciones de tipo "tf.raw_ops.MatrixDiagV*". La [implementación](https://github.com/tensorflow/tensorflow/blob/84d053187cb80d975ef2b9684d4b61981bca0c41/tensorflow/core/kernels/linalg/matrix_diag_op.cc) presenta una comprobación incompleta de que el valor de "k" es un tensor válido. Hemos comprobado que este valor es un escalar o un vector, pero no hay ninguna comprobación del número de elementos. Si se trata de un tensor vacío, el código que accede al primer elemento del tensor es erróneo. Hemos parcheado el problema en el commit f2a673bd34f0d64b8e40a551ac78989d16daad09 de GitHub. La corrección será incluida en TensorFlow versión 2.6.0. También seleccionaremos este commit en TensorFlow versión 2.5.1, TensorFlow versión 2.4.3, y TensorFlow versión 2.3.4, ya que estos también están afectados y todavía están en el rango de soporte.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* 2.3.0 (incluyendo) 2.3.4 (excluyendo)
cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* 2.4.0 (incluyendo) 2.4.3 (excluyendo)
cpe:2.3:a:google:tensorflow:2.5.0:*:*:*:*:*:*:*
cpe:2.3:a:google:tensorflow:2.6.0:rc0:*:*:*:*:*:*
cpe:2.3:a:google:tensorflow:2.6.0:rc1:*:*:*:*:*:*
cpe:2.3:a:google:tensorflow:2.6.0:rc2:*:*:*:*:*:*