CVE-2021-37674: TensorFlow Denial of Service Vulnerability
Summary
CVE-2021-37674: Incomplete validation in MaxPoolGrad in TensorFlow. Affects tensorflow across 3 version ranges.
>= 2.3.0, < 2.3.4
>= 2.4.0, < 2.4.3
>= 2.5.0, < 2.5.1
Fixed in 2.3.4, 2.4.3 or 2.5.1, depending on the release line you run. How to fix ↓
Also tracked for
- tensorflow · PyPI
- tensorflow · PyPI
- tensorflow-cpu · PyPI
- tensorflow-gpu · PyPI
The same CVE-2021-37674 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.
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.
No signup required · Results in about 60 seconds
Background
TensorFlow is an end-to-end open source platform for machine learning. It provides a comprehensive ecosystem of tools, libraries, and resources for developing and deploying machine learning models. TensorFlow is widely used in various industries and research domains for tasks such as image recognition, natural language processing, and recommendation systems. However, a vulnerability has been identified in TensorFlow that can lead to a denial of service attack.
Vulnerability Detail
The vulnerability, identified as CVE-2021-37674, allows an attacker to trigger a denial of service by exploiting a segmentation fault in the tf.raw_ops.MaxPoolGrad function. This is caused by missing validation in the orig_input and orig_output tensors. The implementation of the function lacks proper validation checks, which can be exploited to crash the application. The fixes for a previous related vulnerability, CVE-2021-29579, were incomplete, leaving the system still vulnerable. The issue has been patched in the latest GitHub commit 136b51f10903e044308cf77117c0ed9871350475 and will be included in TensorFlow 2.6.0. The fix will also be backported to TensorFlow 2.5.1, TensorFlow 2.4.3, and TensorFlow 2.3.4, as these versions are also affected.
How To Fix
Fixed versions by release line
The minimum fixed version depends on the release line you run.
-
>= 2.3.0, < 2.3.42.3.4 -
>= 2.4.0, < 2.4.32.4.3 -
>= 2.5.0, < 2.5.12.5.1
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 provided patches or update to the latest version of TensorFlow as soon as possible.
Conclusion
The identified vulnerability in TensorFlow can lead to a denial of service attack. It is crucial to update TensorFlow to the latest version or apply the provided patches to mitigate the risk. Failure to address this vulnerability may result in system crashes and unresponsiveness. For further support and assistance in vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for tensorflow →
FAQ
TensorFlow is an open source platform for machine learning that provides a comprehensive set of tools and resources for developing and deploying machine learning models.
This vulnerability allows an attacker to trigger a denial of service attack, potentially causing the TensorFlow application to crash and become unresponsive.
To fix this vulnerability, update TensorFlow to the latest version or apply the provided patches for the affected versions.
There are no known workarounds for this vulnerability. It is recommended to update TensorFlow to the patched versions.
For more information, refer to the official TensorFlow documentation and the GitHub commit 136b51f10903e044308cf77117c0ed9871350475.
References
Related vulnerabilities
Recent vulnerabilities recorded for tensorflow.