Heap buffer overflow in `UnsortedSegmentSum` in TensorFlow
Impact
A heap buffer overflow in UnsortedSegmentSum can be produced when the Index template argument is int32. In this case data_size and num_segments fields are truncated from int64 to int32 and can produce negative numbers, resulting in accessing out of bounds heap memory.
This is unlikely to be exploitable and was detected and fixed internally. We are making the security advisory only to notify users that it is better to update to TensorFlow 1.15 or 2.0 or later as these versions already have this fixed.
Patches
Patched by db4f9717c41bccc3ce10099ab61996b246099892 and released in all official releases after 1.15 and 2.0.
For more information
Please consult SECURITY.md for more information regarding the security model and how to contact us with issues and questions.
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| Python (PyPI) | tensorflow | < 1.15.0 | 1.15.0 |
| Python (PyPI) | tensorflow-cpu | < 1.15.0 | 1.15.0 |
| Python (PyPI) | tensorflow-gpu | < 1.15.0 | 1.15.0 |
References
- https://github.com/tensorflow/tensorflow/commit/db4f9717c41bccc3ce10099ab61996b246099892
- https://github.com/tensorflow/tensorflow/blob/master/tensorflow/security/advisory/tfsa-2019-002.md
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-844w-j86r-4x2j
- https://nvd.nist.gov/vuln/detail/CVE-2019-16778
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2019-227.yaml
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2019-234.yaml
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow/PYSEC-2019-209.yaml
- https://github.com/tensorflow/tensorflow
- CVSS vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:N/I:N/A:L- Weakness (CWE)
CWE-122, CWE-681- Platform
- Python (PyPI)
- Package
tensorflow, tensorflow-cpu, tensorflow-gpu- Disclosed
- 16.12.2019
- Updated
- 11.10.2026 13:19
Sources and licenses
OSV / GitHub Advisory Database - PYSEC-2019-209 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - PYSEC-2019-227 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - PYSEC-2019-234 - PyPA Advisory Database; CC BY 4.0
OSV / GitHub Advisory Database - GHSA-844w-j86r-4x2j - CC BY 4.0
Vulnerability history: tensorflow
All published vulnerabilities of this package (Python (PyPI)), newest first. Shows whether this is a one-off slip or a package that needs watching.
- Total entries
- 433
- First → latest
- 04.2019 07.2024
- Without a fix
- 0
- Exploited in attacks
- 0
Severity breakdown
- Critical 6
- High 112
- Medium 210
- Low 105
Disclosures per year
- 2019: 7
- 2020: 35
- 2021: 200
- 2022: 169
- 2023: 21
- 2024: 1
- 2025: 0
- 2026: 0
-
Heap buffer overflow in `UnsortedSegmentSum` in TensorFlow this entry
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.