Vulnerability · Published May 20, 2022 · Assigned by GitHub_M
CVE-2022-29211Segfault in TensorFlow if `tf.histogram_fixed_width` is called with NaN values
Medium 5.5
In plain English
A medium-severity improper input validation in tensorflow from tensorflow. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 25% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
TensorFlow is an open source platform for machine learning. Prior to versions 2.9.0, 2.8.1, 2.7.2, and 2.6.4, the implementation of `tf.histogram_fixed_width` is vulnerable to a crash when the values array contain `Not a Number` (`NaN`) elements. The implementation assumes that all floating point operations are defined and then converts a floating point result to an integer index. If `values` contains `NaN` then the result of the division is still `NaN` and the cast to `int32` would result in a crash. This only occurs on the CPU implementation. Versions 2.9.0, 2.8.1, 2.7.2, and 2.6.4 contain a patch for this issue.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| PyPI | tensorflow | 2.8.1 | GHSA-xrp2-fhq4-4q3w |
| PyPI | tensorflow | 2.7.2 | GHSA-xrp2-fhq4-4q3w |
| PyPI | tensorflow | 2.6.4 | GHSA-xrp2-fhq4-4q3w |
| PyPI | tensorflow | 2.6.4, 2.7.2, 2.8.1 | PYSEC-2026-3260 |
| PyPI | tensorflow-cpu | 2.6.4, 2.7.2, 2.8.1 | PYSEC-2026-3382 |
| PyPI | tensorflow-cpu | 2.6.4 | GHSA-xrp2-fhq4-4q3w |
| PyPI | tensorflow-cpu | 2.7.2 | GHSA-xrp2-fhq4-4q3w |
| PyPI | tensorflow-cpu | 2.8.1 | GHSA-xrp2-fhq4-4q3w |
| PyPI | tensorflow-gpu | 2.8.1 | GHSA-xrp2-fhq4-4q3w |
| PyPI | tensorflow-gpu | 2.6.4, 2.7.2, 2.8.1 | PYSEC-2026-1048 |
| PyPI | tensorflow-gpu | 2.7.2 | GHSA-xrp2-fhq4-4q3w |
| PyPI | tensorflow-gpu | 2.6.4 | GHSA-xrp2-fhq4-4q3w |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| tensorflow | tensorflow | < 2.6.4>= 2.7.0rc0, < 2.7.2>= 2.8.0rc0, < 2.8.1>= 2.9.0rc0, < 2.9.0 |
Weakness: CWE-20 · Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
References
- https://github.com/tensorflow/tensorflow/releases/tag/v2.6.4 x_refsource_MISC
- https://github.com/tensorflow/tensorflow/releases/tag/v2.7.2 x_refsource_MISC
- https://github.com/tensorflow/tensorflow/releases/tag/v2.8.1 x_refsource_MISC
- https://github.com/tensorflow/tensorflow/releases/tag/v2.9.0 x_refsource_MISC
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-xrp2-fhq4-4q3w x_refsource_CONFIRM
- https://github.com/tensorflow/tensorflow/issues/45770 x_refsource_MISC
- https://github.com/tensorflow/tensorflow/commit/e57fd691c7b0fd00ea3bfe43444f30c1969748b5 x_refsource_MISC
- https://github.com/tensorflow/tensorflow/blob/f3b9bf4c3c0597563b289c0512e98d4ce81f886e/tensorflow/core/kernels/histogram_op.cc x_refsource_MISC
- https://github.com/tensorflow/tensorflow/blob/f3b9bf4c3c0597563b289c0512e98d4ce81f886e/tensorflow/core/kernels/histogram_op.cc#L35-L74 x_refsource_MISC