CVE-2022-23591
Description
Tensorflow is an Open Source Machine Learning Framework. The `GraphDef` format in TensorFlow does not allow self recursive functions. The runtime assumes that this invariant is satisfied. However, a `GraphDef` containing a fragment such as the following can be consumed when loading a `SavedModel`. This would result in a stack overflow during execution as resolving each `NodeDef` means resolving the function itself and its nodes. 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-23591
OS impact
| OS | Version | Status | Fixed in |
|---|---|---|---|
| debian | forky | fixed | 0 |
| debian | sid | fixed | 0 |
Package impact
| Ecosystem | Package | Vulnerable | Fixed |
|---|---|---|---|
| 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-cpu | <2.5.3 | 2.5.3 |
| 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.6.0,<2.6.3 | 2.6.3 |
| PyPI | tensorflow-gpu | <448a16182065bd08a202d9057dd8ca541e67996c||>=2.6.0,<2.6.3 | 448a16182065bd08a202d9057dd8ca541e67996c |
| PyPI | tensorflow-cpu | <448a16182065bd08a202d9057dd8ca541e67996c||>=2.6.0,<2.6.3 | 448a16182065bd08a202d9057dd8ca541e67996c |
References
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-247x-2f9f-5wp7
- https://nvd.nist.gov/vuln/detail/CVE-2022-23591
- https://github.com/tensorflow/tensorflow/commit/448a16182065bd08a202d9057dd8ca541e67996c
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2022-100.yaml
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2022-155.yaml
- https://github.com/tensorflow/tensorflow
- https://security-tracker.debian.org/tracker/CVE-2022-23591
Verify integrity in audit chain (admin only). AS-IS.