Vulnerabilidad en la vinculación de una referencia a un puntero null en las operaciones de tipo "tf.raw_ops.MatrixSetDiagV*" en TensorFlow (CVE-2021-37658)
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.MatrixSetDiagV*". 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. Se comprueba que este valor es un escalar o un vector, pero no se comprueba el 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 ff8894044dfae5568ecbf2ed514c1a37dc394f1b de GitHub. La corrección será incluida en TensorFlow versión 2.6.0. También seleccionaremos este commit en TensorFlow 2.5.1, TensorFlow 2.4.3 y TensorFlow 2.3.4, ya que estos también están afectados y todavía están en el rango de soporte.
Impacto
Puntuación base 3.x
7.80
Gravedad 3.x
ALTA
Puntuación base 2.0
4.60
Gravedad 2.0
MEDIA
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:*:*:*:*:*:* |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página



