CVE-2022-29204: Denial of Service Vulnerability in TensorFlow
Summary
CVE-2022-29204: Missing validation causes denial of service via Conv3DBackpropFilterV2. Affects tensorflow across 3 version ranges.
< 2.6.4
>= 2.7.0, < 2.7.2
>= 2.8.0, < 2.8.1
Fixed in 2.6.4, 2.7.2 or 2.8.1, depending on the release line you run. How to fix ↓
Also tracked for
- tensorflow-cpu · PyPI
- tensorflow-gpu · PyPI
- tensorflow · Bitnami
The same CVE-2022-29204 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 open-source machine learning framework widely used for developing and deploying machine learning models. It provides a comprehensive ecosystem of tools, libraries, and resources for building and training neural networks. TensorFlow is vulnerable to a denial of service attack due to a missing validation in the Conv3DBackpropFilterV2 function. This vulnerability can be exploited by an attacker to cause a CHECK-failure, resulting in a denial of service condition.
Vulnerability Detail
The vulnerability lies in the implementation of the tf.raw_ops.UnsortedSegmentJoin function in TensorFlow. This function does not properly validate the num_segments input argument, which is used to allocate the output tensor. As a result, a negative value for num_segments can trigger a CHECK-failure, leading to a denial of service attack. An attacker can exploit this vulnerability by providing a negative value for num_segments when calling the tf.strings.unsorted_segment_join function.
How To Fix
Latest published version: 2.21.0 as of 22 Oct 2026
pip install --upgrade "tensorflow==2.21.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.6.42.6.4pip install --upgrade "tensorflow==2.6.4" -
>= 2.7.0, < 2.7.22.7.2pip install --upgrade "tensorflow==2.7.2" -
>= 2.8.0, < 2.8.12.8.1pip install --upgrade "tensorflow==2.8.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 update to the patched versions of TensorFlow as soon as possible.
Conclusion
In conclusion, TensorFlow is vulnerable to a denial of service attack due to a missing validation in the Conv3DBackpropFilterV2 function. This vulnerability can be mitigated by updating to the patched versions of TensorFlow. It is important to keep your software up to date to ensure the security and stability of your machine learning applications. For further support on vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for tensorflow →
FAQ
The vulnerability allows an attacker to trigger a denial of service condition in TensorFlow, potentially disrupting the availability of the affected system.
You can use the Vulert Playground (https://vulert.com/scanner) to check if your application is affected by this vulnerability. Simply provide your Pipfile.lock and the playground will analyze it for open-source vulnerabilities, including this one.
There are no known public exploits for this vulnerability at the time of writing. However, it is important to update to the patched versions of TensorFlow to mitigate the risk.
Yes, this vulnerability can be exploited remotely if the affected TensorFlow installation is exposed to the internet.
There is no evidence of this vulnerability being actively exploited in the wild. However, it is still recommended to update to the patched versions of TensorFlow to ensure the security of your system.
References
Related vulnerabilities
Recent vulnerabilities recorded for tensorflow.