Junglewise Threat Intelligence

CVE-2021-37690: PYSEC-2021-801 - TensorFlow is an end-to-end open source platform for machine learning. In affected versions when running shape functions, some functions (su

CVE-2021-37690 · Severity: low · CVSS 3.1 · Published 2021-08-13

Technologies: tensorflow-cpu (PyPI), tensorflow-gpu (PyPI), Google TensorFlow, tensorflow (PyPI). Vendors: Google, PyPI.

Executive brief

TensorFlow is an open-source machine learning framework used to build and train neural network models. A use-after-free vulnerability in the shape inference component can cause a segmentation fault, leading to denial of service when processing certain model operations. This affects systems using TensorFlow to perform machine learning inference or training tasks.

Technical details

The vulnerability is a use-after-free (CWE-416) in shape inference functions, specifically when handling ShapeAndType structs produced by functions like MutableHashTableShape. Shape information is owned by an inference context that is freed immediately after use; if upstream code attempts to access this shape data afterward, it triggers a segmentation fault. The ShapeRefiner was cloning normal output shapes to prevent this, but was not applying the same logic to shapes and types. The fix involves cloning output shapes and types to place them under ownership of a longer-lived inference context. Patches are available in TensorFlow 2.6.0 and backported versions 2.5.1, 2.4.3, and 2.3.4.

Affected products

  • Google TensorFlow < 2.3.4, 2.4.0-2.4.2, 2.5.0
  • Google TensorFlow CPU < 2.3.4, 2.4.0-2.4.2, 2.5.0
  • Google TensorFlow GPU < 2.3.4, 2.4.0-2.4.2, 2.5.0

Timeline

  • 2021-08-25: disclosed: Vulnerability published in GitHub Advisory Database
  • 2021-08-13: patched: Fix available in TensorFlow 2.6.0 and backported to 2.3.4, 2.4.3, 2.5.1

References

Related threats