Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. tensorflow-cpu
  4. ›
  5. CVE-2020-15200

CVE-2020-15200: Segfault in Tensorflow

September 25, 2020 (updated October 28, 2024)

The RaggedCountSparseOutput implementation does not validate that the input arguments form a valid ragged tensor. In particular, there is no validation that the values in the splits tensor generate a valid partitioning of the values tensor. Thus, the following code sets up conditions to cause a heap buffer overflow:

auto per_batch_counts = BatchedMap<W>(num_batches);
int batch_idx = 0;
for (int idx = 0; idx < num_values; ++idx) {
while (idx >= splits_values(batch_idx)) {
batch_idx++;
}
const auto& value = values_values(idx);
if (value >= 0 && (maxlength_ <= 0 || value < maxlength_)) {
per_batch_counts[batch_idx - 1][value] = 1;
}
}

A BatchedMap is equivalent to a vector where each element is a hashmap. However, if the first element of splits_values is not 0, batch_idx will never be 1, hence there will be no hashmap at index 0 in per_batch_counts. Trying to access that in the user code results in a segmentation fault.

References

  • github.com/advisories/GHSA-x7rp-74x2-mjf3
  • github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2020-280.yaml
  • github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2020-315.yaml
  • github.com/pypa/advisory-database/tree/main/vulns/tensorflow/PYSEC-2020-123.yaml
  • github.com/tensorflow/tensorflow
  • github.com/tensorflow/tensorflow/commit/3cbb917b4714766030b28eba9fb41bb97ce9ee02
  • github.com/tensorflow/tensorflow/releases/tag/v2.3.1
  • github.com/tensorflow/tensorflow/security/advisories/GHSA-x7rp-74x2-mjf3
  • nvd.nist.gov/vuln/detail/CVE-2020-15200

Code Behaviors & Features

Detect and mitigate CVE-2020-15200 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions starting from 2.3.0 before 2.3.1, version 2.3.0

Fixed versions

  • 2.3.1

Solution

Upgrade to version 2.3.1 or above.

Impact 5.9 MEDIUM

CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H

Learn more about CVSS

Weakness

  • CWE-122: Heap-based Buffer Overflow
  • CWE-20: Improper Input Validation
  • CWE-787: Out-of-bounds Write

Source file

pypi/tensorflow-cpu/CVE-2020-15200.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:15:42 +0000.