Skip to content
HighVulnerability

CVE-2020-15193: Tensorflow dlpack.to_dlpack uses uninitialized memory when passed a non-tensor

Identifier
CVE-2020-15193
Published
Record updated
View JSON
Affected
  • tensorflow = 2.2.0, fixed in 2.2.1
  • tensorflow = 2.3.0, fixed in 2.3.1
  • tensorflow-cpu = 2.2.0, fixed in 2.2.1
  • and 3 more
Known exploitation
Not listed in the CISA Known Exploited Vulnerabilities catalog at the last check.
EPSS
0.8%

Summary

TensorFlow versions before 2.2.1 and 2.3.1 have a flaw in `dlpack.to_dlpack`. The pybind11 glue code assumes its argument is a tensor, but nothing stops callers from passing a Python object, so a `reinterpret_cast` produces a pointer to uninitialized memory, leading to further memory corruption.

Mitigation

The issue is patched in commit 22e07fb204386768e5bcbea563641ea11f96ceb8 and released in TensorFlow versions 2.2.1 and 2.3.1.