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

Vulnerabilidad en la implementación "tf.raw_ops.QuantizeAndDequantizeV4Grad" en TensorFlow (CVE-2021-37645)

Gravedad CVSS v3.1:
MEDIA
Tipo:
No Disponible / Otro tipo
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, la implementación "tf.raw_ops.QuantizeAndDequantizeV4Grad" es vulnerable a un problema de desbordamiento de enteros causado al convertir un valor entero con signo a uno sin signo y la posterior asignación de memoria basada en este valor. La [implementación](https://github.com/tensorflow/tensorflow/blob/8d72537c6abf5a44103b57b9c2e22c14f5f49698/tensorflow/core/kernels/quantize_and_dequantize_op.cc#L126) usa el valor de "axis" como argumento del tamaño del constructor de "absl::InlinedVector". Pero, el constructor usa un tipo sin signo para el argumento, por lo que la conversión implícita transforma el valor negativo en un entero grande. Hemos parcheado el problema en el commit 96f364a1ca3009f98980021c4b32be5fdcca33a1 de GitHub. La corrección será incluida en TensorFlow versión 2.6.0. También seleccionaremos este commit en TensorFlow 2.5.1, y TensorFlow 2.4.3, ya que estos también están afectados y todavía en el rango de soporte.

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:*:*:*:*:*:*