CVE-2021-37644
Last modified
CVE-2021-37644 is a medium-severity vulnerability rated 5.5/10 on the CVSS scale. TensorFlow is an end-to-end open source platform for machine learning. In affected versions providing a negative element to `num_elements` list argument of `tf.raw_ops.TensorListReserve` causes the runtime to abort the process due to reallocating a `std::vector` to have a negative number of elements. EPSS estimates a 0.15% chance of exploitation in the next 30 days.
Description
TensorFlow is an end-to-end open source platform for machine learning. In affected versions providing a negative element to `num_elements` list argument of `tf.raw_ops.TensorListReserve` causes the runtime to abort the process due to reallocating a `std::vector` to have a negative number of elements. The [implementation](https://github.com/tensorflow/tensorflow/blob/8d72537c6abf5a44103b57b9c2e22c14f5f49698/tensorflow/core/kernels/list_kernels.cc#L312) calls `std::vector.resize()` with the new size controlled by input given by the user, without checking that this input is valid. We have patched the issue in GitHub commit 8a6e874437670045e6c7dc6154c7412b4a2135e2. 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.
Metrics
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness Enumeration
Affected Software
| Vendor | Product | Versions | Update |
|---|---|---|---|
| Tensorflow | >= 2.3.0, < 2.3.4 | — | |
| Tensorflow | >= 2.4.0, < 2.4.3 | — | |
| Tensorflow | 2.5.0 | — | |
| Tensorflow | 2.6.0 | Rc0 |
References
- https://github.com/tensorflow/tensorflow/commit/8a6e874437670045e6c7dc6154c7412b4a2135e2Patch, Third Party Advisory
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-27j5-4p9v-pp67Third Party Advisory
- https://github.com/tensorflow/tensorflow/commit/8a6e874437670045e6c7dc6154c7412b4a2135e2Patch, Third Party Advisory
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-27j5-4p9v-pp67Third Party Advisory
Timeline
- Published
- Last Modified
- Status
- Modified
Frequently Asked Questions
What is CVE-2021-37644?
How severe is CVE-2021-37644?
How do I fix CVE-2021-37644?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2021
- CVE-2021-37639TensorFlow is an end-to-end open source platform for machine…7.8
- CVE-2021-3764A memory leak flaw was found in the Linux kernel's ccp_run_a…5.5
- CVE-2021-37640TensorFlow is an end-to-end open source platform for machine…5.5
- CVE-2021-37641TensorFlow is an end-to-end open source platform for machine…7.1
- CVE-2021-37642TensorFlow is an end-to-end open source platform for machine…5.5
- CVE-2021-37643TensorFlow is an end-to-end open source platform for machine…7.1
- CVE-2021-37645TensorFlow is an end-to-end open source platform for machine…5.5
- CVE-2021-37646TensorFlow is an end-to-end open source platform for machine…5.5
- CVE-2021-37647TensorFlow is an end-to-end open source platform for machine…5.5
- CVE-2021-37648TensorFlow is an end-to-end open source platform for machine…7.8
- CVE-2021-37649TensorFlow is an end-to-end open source platform for machine…5.5
- CVE-2021-3765validator.js is vulnerable to Inefficient Regular Expression…7.5
Are you affected by CVE-2021-37644?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
