CVE-2022-23568
Description
Tensorflow is an Open Source Machine Learning Framework. The implementation of `AddManySparseToTensorsMap` is vulnerable to an integer overflow which results in a `CHECK`-fail when building new `TensorShape` objects (so, an assert failure based denial of service). We are missing some validation on the shapes of the input tensors as well as directly constructing a large `TensorShape` with user-provided dimensions. The fix will be included in TensorFlow 2.8.0. We will also cherrypick this commit on TensorFlow 2.7.1, TensorFlow 2.6.3, and TensorFlow 2.5.3, as these are also affected and still in supported range.
Predictions
Heuristic predictions, AS-IS, for prioritization only.
Mitigations
Vendor advisory: debian — https://security-tracker.debian.org/tracker/CVE-2022-23568
OS impact
| OS | Version | Status | Fixed in |
|---|---|---|---|
| debian | forky | fixed | 0 |
| debian | sid | fixed | 0 |
Package impact
| Ecosystem | Package | Vulnerable | Fixed |
|---|---|---|---|
| PyPI | tensorflow | <2.5.3 | 2.5.3 |
| PyPI | tensorflow | >=2.6.0,<2.6.3 | 2.6.3 |
| PyPI | tensorflow | >=2.7.0,<2.7.1 | 2.7.1 |
| PyPI | tensorflow-cpu | <2.5.3 | 2.5.3 |
| PyPI | tensorflow-cpu | >=2.6.0,<2.6.3 | 2.6.3 |
| PyPI | tensorflow-cpu | >=2.7.0,<2.7.1 | 2.7.1 |
| PyPI | tensorflow-gpu | <2.5.3 | 2.5.3 |
| PyPI | tensorflow-gpu | >=2.6.0,<2.6.3 | 2.6.3 |
| PyPI | tensorflow-gpu | >=2.7.0,<2.7.1 | 2.7.1 |
| PyPI | tensorflow-gpu | <a68f68061e263a88321c104a6c911fe5598050a8||>=2.6.0,<2.6.3 | b51b82fe65ebace4475e3c54eb089c18a4403f1c |
| PyPI | tensorflow-cpu | <a68f68061e263a88321c104a6c911fe5598050a8||>=2.6.0,<2.6.3 | b51b82fe65ebace4475e3c54eb089c18a4403f1c |
References
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-6445-fm66-fvq2
- https://nvd.nist.gov/vuln/detail/CVE-2022-23568
- https://github.com/tensorflow/tensorflow/commit/a68f68061e263a88321c104a6c911fe5598050a8
- https://github.com/tensorflow/tensorflow/commit/b51b82fe65ebace4475e3c54eb089c18a4403f1c
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2022-77.yaml
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2022-132.yaml
- https://github.com/tensorflow/tensorflow
- https://github.com/tensorflow/tensorflow/blob/5100e359aef5c8021f2e71c7b986420b85ce7b3d/tensorflow/core/kernels/sparse_tensors_map_ops.cc
- https://security-tracker.debian.org/tracker/CVE-2022-23568
Verify integrity in audit chain (admin only). AS-IS.