Skip to content
CriticalVulnerability

CVE-2020-15202: Tensorflow Shard API integer truncation causes memory corruption

Identifier
CVE-2020-15202
Published
Record updated
View JSON
Affected
  • tensorflow < 1.15.4, fixed in 1.15.4, released September 24, 2020, 1 day before disclosure
  • tensorflow >= 2.0.0, < 2.0.3, fixed in 2.0.3, released September 24, 2020, 1 day before disclosure
  • tensorflow >= 2.1.0, < 2.1.2, fixed in 2.1.2, released September 24, 2020, 1 day before disclosure
  • and 12 more
Known exploitation
Not listed in the CISA Known Exploited Vulnerabilities catalog at the last check.
EPSS
1.3%

Summary

TensorFlow versions before 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1 have an integer truncation flaw in the `Shard` API. Several call sites pass a lambda taking `int` or `int32` arguments where the API expects `int64`, so large parallel workloads truncate the values. Depending on how the lambda uses them, this can cause segfaults, out-of-bounds reads and writes, stack overflows, or data corruption.

Mitigation

Fixed in TensorFlow versions 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1, via commits 27b417360cbd671ef55915e4bb6bb06af8b8a832 and ca8c013b5e97b1373b3bb1c97ea655e69f31a575.