CVE-2021-29590: TensorFlow-GPU - Out-of-Bounds Read in Minimum and Maximum TFLite Operators

tensorflow-gpu Updated 02 Oct 2025

Summary

14/05/2021
Yes i
Unrated
Not published

CVE-2021-29590: TensorFlow is an end-to-end open source platform for machine learning. Affects tensorflow-gpu across 5 version ranges.

< 2.1.4 >= 2.2.0, < 2.2.3 >= 2.3.0, < 2.3.3 >= 2.4.0, < 2.4.2 < 953f28dca13c92839ba389c055587cfe6c723578

Fixed in 4 releases; the minimum fixed version depends on the release line you run. How to fix ↓

Also tracked for

The same CVE-2021-29590 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Sponsored Devnack Your last release was probably never penetration tested Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

TensorFlow is an end-to-end open source platform for machine learning. It provides a comprehensive ecosystem of tools, libraries, and community resources that enable researchers and developers to build and deploy machine learning models. TensorFlow-GPU is a variant of TensorFlow that utilizes GPU acceleration for faster computation. It is widely used in various industries and research domains for training and inference of machine learning models.

Vulnerability Detail

The Minimum and Maximum TFLite operators in TensorFlow-GPU are susceptible to an out-of-bounds read vulnerability. When either of the two input tensor arguments is empty, the broadcasting implementation of these operators allows reading data outside the bounds of heap allocated objects. This occurs because the implementation indexes into both tensors with the same index but fails to validate whether the index is within bounds. As a result, an attacker could potentially exploit this vulnerability to read sensitive data or cause a denial-of-service condition.

How To Fix

Latest published version: 2.12.0 as of 22 Oct 2026

pip install --upgrade "tensorflow-gpu==2.12.0"

Upgrading to it may include breaking changes; the versions below are the minimum fixed release for this vulnerability.

If you can't move to the latest

The minimum fixed version depends on the release line you run.

  • < 2.1.4 2.1.4
    pip install --upgrade "tensorflow-gpu==2.1.4"
  • >= 2.2.0, < 2.2.3 2.2.3
    pip install --upgrade "tensorflow-gpu==2.2.3"
  • >= 2.3.0, < 2.3.3 2.3.3
    pip install --upgrade "tensorflow-gpu==2.3.3"
  • >= 2.4.0, < 2.4.2 2.4.2
    pip install --upgrade "tensorflow-gpu==2.4.2"

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Workaround

There is no known workaround for this vulnerability. It is recommended to apply the fix by updating to the patched versions of TensorFlow-GPU.

Conclusion

The Minimum and Maximum TFLite operators in TensorFlow-GPU are vulnerable to an out-of-bounds read issue when either of the input tensors is empty. This could potentially lead to unauthorized data access or denial-of-service attacks. It is crucial for users of TensorFlow-GPU to update their installations to the fixed versions mentioned above to mitigate this vulnerability. For further assistance or support in vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for tensorflow-gpu →

Share this vulnerability

FAQ

TensorFlow-GPU is a variant of TensorFlow that utilizes GPU acceleration for faster computation. It is widely used in various industries and research domains for training and inference of machine learning models.

The Minimum and Maximum TFLite operators are operations in TensorFlow-GPU that compute the element-wise minimum and maximum of two input tensors, respectively.

The vulnerability occurs when either of the two input tensor arguments is empty. The broadcasting implementation of these operators fails to validate the index used for indexing into both tensors, allowing data to be read outside the bounds of heap allocated objects.

The vulnerability could potentially be exploited by an attacker to read sensitive data or cause a denial-of-service condition.

To fix this vulnerability, users should update their TensorFlow-GPU installation to one of the fixed versions: TensorFlow 2.5.0, TensorFlow 2.4.2, TensorFlow 2.3.3, TensorFlow 2.2.3, or TensorFlow 2.1.4.

Related vulnerabilities

Recent vulnerabilities recorded for tensorflow-gpu.

How To Fix

Latest published version: 2.12.0 as of 22 Oct 2026

pip install --upgrade "tensorflow-gpu==2.12.0"

Upgrading to it may include breaking changes; the versions below are the minimum fixed release for this vulnerability.

If you can't move to the latest

The minimum fixed version depends on the release line you run.

  • < 2.1.4 2.1.4
    pip install --upgrade "tensorflow-gpu==2.1.4"
  • >= 2.2.0, < 2.2.3 2.2.3
    pip install --upgrade "tensorflow-gpu==2.2.3"
  • >= 2.3.0, < 2.3.3 2.3.3
    pip install --upgrade "tensorflow-gpu==2.3.3"
  • >= 2.4.0, < 2.4.2 2.4.2
    pip install --upgrade "tensorflow-gpu==2.4.2"

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback