CVE-2021-37677: google tensorflow Improper Input Validation
Vulnerability summary
CVE-2021-37677 is a medium (CVSS 5.5) Improper Input Validation vulnerability in google tensorflow. EPSS estimates a 0.15% chance of exploitation in the next 30 days, higher than 3.5% of scored vulnerabilities.
Advisory lineage
Upstream 0 · Downstream 1 · Related 1Timeline
- 12-08-2021PublishedVulnerability first disclosed.
- 04-08-2024Last modifiedVulnerability information updated.
Description
TensorFlow is an end-to-end open source platform for machine learning. In affected versions the shape inference code for `tf.raw_ops.Dequantize` has a vulnerability that could trigger a denial of service via a segfault if an attacker provides invalid arguments. The shape inference [implementation](https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/core/ops/array_ops.cc#L2999-L3014) uses `axis` to select between two different values for `minmax_rank` which is then used to retrieve tensor dimensions. However, code assumes that `axis` can be either `-1` or a value greater than `-1`, with no validation for the other values. We have patched the issue in GitHub commit da857cfa0fde8f79ad0afdbc94e88b5d4bbec764. The fix will be included in TensorFlow 2.6.0. We will also cherrypick this commit on TensorFlow 2.5.1, TensorFlow 2.4.3, and TensorFlow 2.3.4, as these are also affected and still in supported range.
CVSS metrics
5 scores · 3 sources · 3 versions- OSV · PypiEcosystem advisory · calculated5.5MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- NVDNIST5.5MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
EPSS trend
Probability
0.15%
Chance of exploitation in the next 30 days
Percentile
4%
Versus all other CVEs
30-day change
0.00 pp
From 0.15% on 18-09-2026
Known exploited
Compare KEV catalogsNot in any of the 3 tracked catalogs.
Public exploits
0 foundNo public exploits indexed.
Weaknesses
CWE · root cause- CWE-20Improper Input ValidationThe product receives input or data, but it does not validate or incorrectly validates that the input has the properties that are required to process the data safely and correctly.
- CWE-1284Improper Validation of Specified Quantity in InputThe product receives input that is expected to specify a quantity (such as size or length), but it does not validate or incorrectly validates that the quantity has the required properties.
Affected systems
PyPI3 products
- tensorflow< 2.3.4 | ≥ 2.5.0, < 2.5.1 | < da857cfa0fde8f79ad0afdbc94e88b5d4bbec764 | ≥ 2.4.0, < 2.4.3
- tensorflow-cpu< 2.3.4 | ≥ 2.5.0, < 2.5.1 | < da857cfa0fde8f79ad0afdbc94e88b5d4bbec764 | ≥ 2.4.0, < 2.4.3
- tensorflow-gpu< 2.3.4 | ≥ 2.5.0, < 2.5.1 | < da857cfa0fde8f79ad0afdbc94e88b5d4bbec764 | ≥ 2.4.0, < 2.4.3
Google1 product
- tensorflow≥ 2.3.0, < 2.3.4 | ≥ 2.4.0, < 2.4.3 | 2.5.0 | 2.6.0:rc0 | 2.6.0:rc1 | 2.6.0:rc2
Tensorflow1 product
- tensorflow≥ 2.5.0, < 2.5.1 | ≥ 2.4.0, < 2.4.3 | < 2.3.4
3 vendors · 5 products
References
7 links- github.com/tensorflow/tensorflow/security/advisories/GHSA-qfpc-5pjr-mh26X Refsource CONFIRMWEBAdvisoryVendor Advisory
- github.com/tensorflow/tensorflow/commit/da857cfa0fde8f79ad0afdbc94e88b5d4bbec764X Refsource MISCWEBFIXPatch