Vulnerabilidad en un "tf.map_fn" en TensorFlow (CVE-2021-37679)
Gravedad CVSS v3.1:
ALTA
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
12/08/2021
Última modificación:
19/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, es posible anidar un "tf.map_fn" dentro de otra llamada "tf.map_fn". Sin embargo, si el tensor de entrada es un "RaggedTensor" y no se proporciona una firma de función, el código asume que la salida es un tensor completamente especificado y llena el búfer de salida con contenido no inicializado de la pila. Las salidas "t" y" z" deben ser idénticas, sin embargo, este no es el caso. La última fila de "t" contiene datos de la pila que se pueden usar para filtrar otra información de la memoria. El error radica en la conversión de un tensor "Variant" a un" RaggedTensor". La [implementación] (https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/core/kernels/ragged_tensor_from_variant_op. cc # L177-L190) no comprueba que todas las formas internas coincidan y esto da como resultado las dimensiones adicionales. La misma implementación puede resultar en la pérdida de datos, si se modifica el tensor de entrada. Hemos solucionado el problema en GitHub commit 4e2565483d0ffcadc719bd44893fb7f609bb5f12. 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 aún se encuentran en el rango admitido.
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



