CVE-2022-36003: TensorFlow Denial of Service Vulnerability in RandomPoissonV2
Summary
CVE-2022-36003: TensorFlow vulnerable to CHECK fail in RandomPoissonV2. Affects tensorflow across 3 version ranges.
< 2.7.2
>= 2.8.0, < 2.8.1
>= 2.9.0, < 2.9.1
Fixed in 2.7.2, 2.8.1 or 2.9.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-36003 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 that enables developers to build and deploy machine learning models efficiently. It provides a comprehensive ecosystem for various tasks, including deep learning and neural networks. However, TensorFlow has been found to have a vulnerability in the RandomPoissonV2 operation, which can lead to a denial of service under specific conditions.
Vulnerability Detail
The vulnerability arises when the RandomPoissonV2 function receives large input shapes and rates, resulting in a CHECK fail. This failure can be exploited to trigger a denial of service attack, causing the application to crash or become unresponsive. The issue is particularly concerning for applications that rely on TensorFlow for real-time processing, as it can disrupt services and affect user experience.
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.7.22.7.2pip install --upgrade "tensorflow==2.7.2" -
>= 2.8.0, < 2.8.12.8.1pip install --upgrade "tensorflow==2.8.1" -
>= 2.9.0, < 2.9.12.9.1pip install --upgrade "tensorflow==2.9.1"
Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →
Workaround
As a temporary workaround, avoid using large input shapes and rates with the RandomPoissonV2 function until you can update to a patched version. Here is an example of how to limit input sizes:
import tensorflow as tf arg_0 = tf.random.uniform(shape=(2,), dtype=tf.int32, maxval=65536) arg_1 = tf.random.uniform(shape=(2, 2), dtype=tf.float32, maxval=None) arg_2 = 0 arg_3 = 0 arg_4 = tf.int32 arg_5 = None tf.raw_ops.RandomPoissonV2(shape=arg_0, rate=arg_1, seed=arg_2, seed2=arg_3, dtype=arg_4, name=arg_5)
Conclusion
The CVE-2022-36003 vulnerability in TensorFlow's RandomPoissonV2 function poses a significant risk of denial of service. It is crucial to update to the patched versions to mitigate this risk and ensure the stability of applications relying on TensorFlow.
See every vulnerability recorded for tensorflow →
FAQ
CVE-2022-36003 is a vulnerability in TensorFlow's RandomPoissonV2 function that can lead to a denial of service.
If your application uses TensorFlow and the RandomPoissonV2 function with large inputs, it may crash or become unresponsive.
TensorFlow versions prior to 2.10.0, including 2.9.0, 2.8.0, and 2.7.0, are affected by this vulnerability.
You can use Vulert to monitor and alert for open-source vulnerabilities in your software. Visit Vulert Scanner to check your application without signup.
As a temporary measure, avoid using large input shapes and rates with the RandomPoissonV2 function until you can update to a patched version.
References
Related vulnerabilities
Recent vulnerabilities recorded for tensorflow.