CVE-2021-29557
critical
CVSS v3
—
CVSS v2
—
VIR risk
9.5
Description
TensorFlow is an end-to-end open source platform for machine learning. An attacker can cause a denial of service via a FPE runtime error in `tf.raw_ops.SparseMatMul`. The division by 0 occurs deep in Eigen code because the `b` tensor is empty. The fix will be included in TensorFlow 2.5.0. We will also cherrypick this commit on TensorFlow 2.4.2, TensorFlow 2.3.3, TensorFlow 2.2.3 and TensorFlow 2.1.4, as these are also affected and still in supported range.
Predictions
Exploit likelihood
20%
Patch ETA
—
Heuristic predictions, AS-IS, for prioritization only.
Mitigations
Vendor advisory: debian — https://security-tracker.debian.org/tracker/CVE-2021-29557
OS impact
| OS | Version | Status | Fixed in |
|---|---|---|---|
| arch | fixed | 2.5.0-1 | |
| debian | forky | fixed | 0 |
| debian | sid | fixed | 0 |
Package impact
| Ecosystem | Package | Vulnerable | Fixed |
|---|---|---|---|
| PyPI | tensorflow | <2.1.4 | 2.1.4 |
| PyPI | tensorflow | >=2.2.0,<2.2.3 | 2.2.3 |
| PyPI | tensorflow | >=2.3.0,<2.3.3 | 2.3.3 |
| PyPI | tensorflow | >=2.4.0,<2.4.2 | 2.4.2 |
| PyPI | tensorflow-cpu | <2.1.4 | 2.1.4 |
| PyPI | tensorflow-cpu | >=2.2.0,<2.2.3 | 2.2.3 |
| PyPI | tensorflow-cpu | >=2.3.0,<2.3.3 | 2.3.3 |
| PyPI | tensorflow-cpu | >=2.4.0,<2.4.2 | 2.4.2 |
| PyPI | tensorflow-gpu | <2.1.4 | 2.1.4 |
| PyPI | tensorflow-gpu | >=2.2.0,<2.2.3 | 2.2.3 |
| PyPI | tensorflow-gpu | >=2.3.0,<2.3.3 | 2.3.3 |
| PyPI | tensorflow-gpu | >=2.4.0,<2.4.2 | 2.4.2 |
| PyPI | tensorflow | <7f283ff806b2031f407db64c4d3edcda8fb9f9f5||>=2.4.0,<2.4.2 | 7f283ff806b2031f407db64c4d3edcda8fb9f9f5 |
| PyPI | tensorflow-cpu | <7f283ff806b2031f407db64c4d3edcda8fb9f9f5||>=2.4.0,<2.4.2 | 7f283ff806b2031f407db64c4d3edcda8fb9f9f5 |
| PyPI | tensorflow-gpu | <7f283ff806b2031f407db64c4d3edcda8fb9f9f5||>=2.4.0,<2.4.2 | 7f283ff806b2031f407db64c4d3edcda8fb9f9f5 |
References
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-xw93-v57j-fcgh
- https://nvd.nist.gov/vuln/detail/CVE-2021-29557
- https://github.com/tensorflow/tensorflow/commit/7f283ff806b2031f407db64c4d3edcda8fb9f9f5
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2021-485.yaml
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2021-683.yaml
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow/PYSEC-2021-194.yaml
- https://github.com/tensorflow/tensorflow
- https://security-tracker.debian.org/tracker/CVE-2021-29557
Verify integrity in audit chain (admin only). AS-IS.