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

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.

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)