Vulnerabilidad en "SparseAdd" en TensorFlow (CVE-2021-29609)
Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-476
Desreferencia a puntero nulo (NULL)
Fecha de publicación:
14/05/2021
Última modificación:
20/05/2021
Descripción
TensorFlow es una plataforma de código abierto de extremo a extremo para el aprendizaje automático. Una comprobación incompleta en "SparseAdd" resulta en que los atacantes puedan explotar el comportamiento indefinido (desreferenciar punteros nulls), así como escribir fuera de límites de los datos asignados a la pila. La implementación (https://github.com/tensorflow/tensorflow/blob/656e7673b14acd7835dc778867f84916c6d1cac2/tensorflow/core/kernels/sparse_add_op.cc) presenta un gran conjunto de comprobación para las dos entradas de tensor dispersas (6 tensores en total), pero no comprobar que los tensores no estén vacíos o que la segunda dimensión de "*_indices" coincida con el tamaño de "*_shape" correspondiente. Esto permite a los atacantes enviar triples de tensor que representan tensores dispersos no comprobados para abusar de supuestos de código que no están protegidos por comprobación. La corrección será incluída en TensorFlow versión 2.5.0. También seleccionaremos este commits en TensorFlow 2.4.2, TensorFlow 2.3.3, TensorFlow 2.2.3 y TensorFlow 2.1.4, ya que también están afectadas y aún se encuentran en el rango compatible
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.1.4 (excluyendo) | |
cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* | 2.2.0 (incluyendo) | 2.2.3 (excluyendo) |
cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* | 2.3.0 (incluyendo) | 2.3.3 (excluyendo) |
cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* | 2.4.0 (incluyendo) | 2.4.2 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página