← volver
CVE-2020-15190

Segfault in Tensorflow

CVSS 5.3 MEDIUMEPSS 0.9%CWE-20CWE-476
En resumen

Una falla en TensorFlow causa que el programa se bloquee cuando la operación Switch procesa ciertos tensores. El programa intenta acceder a un tensor indefinido en lugar de verificar si existe, resultando en un fallo de segmentación.

Detalle técnico

La operación tf.raw_ops.Switch genera dos tensores condicionalmente según una entrada booleana, pero el runtime eager accede a ambos sin validación. Cuando un tensor es indefinido (nullptr), vincular una referencia a él causa undefined behavior y segmentation fault. La vulnerabilidad requiere uso directo de la operación afectada en versiones anteriores a 1.15.4, 2.0.3, 2.1.2, 2.2.1 y 2.3.1.

Resumen generado y traducido por IA a partir de la descripción oficial.
In Tensorflow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, the `tf.raw_ops.Switch` operation takes as input a tensor and a boolean and outputs two tensors. Depending on the boolean value, one of the tensors is exactly the input tensor whereas the other one should be an empty tensor. However, the eager runtime traverses all tensors in the output. Since only one of the tensors is defined, the other one is `nullptr`, hence we are binding a reference to `nullptr`. This is undefined behavior and reported as an error if compiling with `-fsanitize=null`. In this case, this results in a segmentation fault The issue is patched in commit da8558533d925694483d2c136a9220d6d49d843c, and is released in TensorFlow versions 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Productos afectados
tensorflow · tensorflow

¿Quieres saber si tu infraestructura está expuesta a esto?

Hablar con TrueHacking →