Memory leak in Tensorflow
Medium4.3CVE-2020-15192 · Published Sep 25, 2020 · updated Jul 8, 2026
Affected versions
| Package | Affected | Fixed in |
|---|---|---|
| tensorflow PyPI | >= 2.2.0, < 2.2.1 | 2.2.1 |
| >= 2.3.0, < 2.3.1 | 2.3.1 |
Details and references
### Impact If a user passes a list of strings to `dlpack.to_dlpack` there is a memory leak following an expected validation failure: https://github.com/tensorflow/tensorflow/blob/0e68f4d3295eb0281a517c3662f6698992b7b2cf/tensorflow/c/eager/dlpack.cc#L100-L104 The allocated memory is from https://github.com/tensorflow/tensorflow/blob/0e68f4d3295eb0281a517c3662f6698992b7b2cf/tensorflow/c/eager/dlpack.cc#L256 The issue occurs because the `status` argument during validation failures is not properly checked: https://github.com/tensorflow/tensorflow/blob/0e68f4d3295eb0281a517c3662f6698992b7b2cf/tensorflow/c/eager/dlpack.cc#L265-L267 Since each of the above methods can return an error status, the `status` value must be checked before continuing. ### Patches We have patched the issue in 22e07fb204386768e5bcbea563641ea11f96ceb8 and will release a patch release for all affected versions. We recommend users to upgrade to TensorFlow 2.2.1 or 2.3.1. ### For more information Please consult [our security guide](https://github.com/tensorflow/tensorflow/blob/master/SECURITY.md) for more information regarding the security model and how to contact us with issues and questions. ### Attribution This vulnerability has been discovered during variant analysis of [GHSA-rjjg-hgv6-h69v](https://github.com/tensorflow/tensorflow/security/advisories/GHSA-rjjg-hgv6-h69v).
- CVSS 3.1
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L
- Severity from
- GitHub (reviewed advisory)
- Weakness
- CWE-20
- Also known as
- BIT-tensorflow-2020-15192, CVE-2020-15192, PYSEC-2020-115, PYSEC-2020-272, PYSEC-2020-307
- github.com/tensorflow/tensorflow/security/advisories/GHSA-8fxw-76px-3rxv
- nvd.nist.gov/vuln/detail/CVE-2020-15192
- github.com/tensorflow/tensorflow/commit/22e07fb204386768e5bcbea563641ea11f96ceb8
- github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2020-272.yaml
- github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2020-307.yaml
- github.com/pypa/advisory-database/tree/main/vulns/tensorflow/PYSEC-2020-115.yaml
- github.com/tensorflow/tensorflow
- github.com/tensorflow/tensorflow/releases/tag/v2.3.1
- lists.opensuse.org/opensuse-security-announce/2020-10/msg00065.html
More TensorFlow advisories
All TensorFlow| Date | Advisory | Severity | Fixed in |
|---|---|---|---|
| Sep 252020 | Segfault in Tensorflow CVE-2020-15190Medium5.3fixed in 1.15.4, 2.0.3, 2.1.2, 2.2.1 | Medium5.3 | 1.15.4, 2.0.3, 2.1.2, 2.2.1 |
| Sep 252020 | Denial of Service in Tensorflow CVE-2020-15194Medium5.3fixed in 1.15.4, 2.0.3, 2.1.2, 2.2.1 | Medium5.3 | 1.15.4, 2.0.3, 2.1.2, 2.2.1 |
| Sep 252020 | Heap buffer overflow in Tensorflow CVE-2020-15196Medium8.5fixed in 2.3.1 | Medium8.5 | 2.3.1 |
| Sep 252020 | Heap buffer overflow in Tensorflow CVE-2020-15198Medium5.4fixed in 2.3.1 | Medium5.4 | 2.3.1 |
| Sep 252020 | Denial of Service in Tensorflow CVE-2020-15199High5.9fixed in 2.3.1 | High5.9 | 2.3.1 |
| Sep 252020 | Undefined behavior in Tensorflow CVE-2020-15191Medium5.3fixed in 2.2.1, 2.3.1 | Medium5.3 | 2.2.1, 2.3.1 |