CVE-2022-35996: Floating point exception in `Conv2D` in TensorFlow
TensorFlow is an open source platform for machine learning. If Conv2D is given empty input and the filter and padding sizes are valid, the output is all-zeros. This causes division-by-zero floating point exceptions that can be used to trigger a denial of service attack. We have patched the issue in GitHub commit 611d80db29dd7b0cfb755772c69d60ae5bca05f9. The fix will be included in TensorFlow 2.10.0. We will also cherrypick this commit on TensorFlow 2.9.1, TensorFlow 2.8.1, and TensorFlow 2.7.2, as these are also affected and still in supported range. There are no known workarounds for this issue.
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2022-35996?
CVE-2022-35996 has been classified with a severity that can lead to denial of service attacks.
How do I fix CVE-2022-35996?
To mitigate CVE-2022-35996, upgrade TensorFlow to a version higher than 2.10-rc3.
Which versions of TensorFlow are affected by CVE-2022-35996?
CVE-2022-35996 affects TensorFlow versions up to 2.10-rc3.
What causes CVE-2022-35996 in TensorFlow?
CVE-2022-35996 occurs when the Conv2D operation receives empty input but valid filter and padding sizes.
Can CVE-2022-35996 lead to application crashes?
Yes, CVE-2022-35996 can trigger division-by-zero floating point exceptions, potentially crashing the application.