Vulnerabilidad en la función MakeEdge en TensorFlow (CVE-2020-26271)
Gravedad CVSS v3.1:
BAJA
Tipo:
CWE-125
Lectura fuera de límites
Fecha de publicación:
10/12/2020
Última modificación:
14/12/2020
Descripción
En las versiones afectadas de TensorFlow en determinados casos, cargar un modelo guardado puede resultar en el acceso a la memoria no inicializada mientras se construye el gráfico de computación. La función MakeEdge crea un perímetro entre un tensor de salida del nodo src (dado por output_index) y la ranura de entrada del nodo dst (dado por input_index). Esto solo es posible si los tipos de tensores en ambos lados coinciden, por lo que la función comienza obteniendo los valores de DataType correspondientes y comparándolos para la igualdad. Sin embargo, no se comprueba que los índices apunten al interior de las matrices en las que indexan. Por lo tanto, esto puede resultar en un acceso a datos fuera de límites de los correspondientes arreglos asignados a la pila. En la mayoría de los escenarios, esto puede manifestarse como un acceso a los datos no inicializados, pero si el índice apunta lejos de los límites de las matrices, esto se puede usar para filtrar direcciones de la biblioteca. Esto es corregido en las versiones 1.15.5, 2.0.4, 2.1.3, 2.2.2, 2.3.2 y 2.4.0.
Impacto
Puntuación base 3.x
3.30
Gravedad 3.x
BAJA
Puntuación base 2.0
2.10
Gravedad 2.0
BAJA
Productos y versiones vulnerables
CPE | Desde | Hasta |
---|---|---|
cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* | 1.15.5 (excluyendo) | |
cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* | 2.0.0 (incluyendo) | 2.0.4 (excluyendo) |
cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* | 2.1.0 (incluyendo) | 2.1.3 (excluyendo) |
cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* | 2.2.0 (incluyendo) | 2.2.2 (excluyendo) |
cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* | 2.3.0 (incluyendo) | 2.3.2 (excluyendo) |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página