LiveActive security incident?Get immediate response
CVE Record

CVE-2021-29607: Incomplete validation in `SparseSparseMinimum`

TensorFlow is an end-to-end open source platform for machine learning. Incomplete validation in `SparseAdd` results in allowing attackers to exploit undefined behavior (dereferencing null pointers) as well as write outside of bounds of heap allocated data. The implementation(https://github.com/tensorflow/tensorflow/blob/656e7673b14acd7835dc778867f84916c6d1cac2/tensorflow/core/kernels/sparse_sparse_binary_op_shared.cc) has a large set of validation for the two sparse tensor inputs (6 tensors in total), but does not validate that the tensors are not empty or that the second dimension of `*_indices` matches the size of corresponding `*_shape`. This allows attackers to send tensor triples that represent invalid sparse tensors to abuse code assumptions that are not protected by validation. The fix will be included in TensorFlow 2.5.0. We will also cherrypick this commit on TensorFlow 2.4.2, TensorFlow 2.3.3, TensorFlow 2.2.3 and TensorFlow 2.1.4, as these are also affected and still in supported range.

MediumCVSS 5.3Not KEV-listedUpdated
Glexia's TakeAutomated analysismoderate

Security readout for executives and security teams

Plain-English summary

TensorFlow could mishandle malformed sparse tensor inputs because validation missed some invalid sparse-tensor shapes. A low-privileged local attacker able to submit crafted tensor triples could trigger undefined behavior, including crashes and limited memory corruption impact. The main business risk is disruption of ML workloads using affected TensorFlow versions.

Executive priority

Treat as a scheduled security update for ML environments, with higher priority where users can submit tensor data or jobs. The risk is mainly service disruption, with limited integrity impact and no cited active exploitation.

Technical view

The issue is incomplete validation in TensorFlow sparse-sparse binary operation handling, described for `SparseAdd`. The code did not ensure sparse tensors were non-empty or that each `*_indices` second dimension matched the related `*_shape` size. This could cause null pointer dereference or out-of-bounds heap writes.

Likely exposure

Exposure is limited to TensorFlow deployments using affected versions before the fixed releases and processing attacker-controlled sparse tensor triples. CVSS indicates local access, high complexity, low privileges, no user interaction, and high availability impact.

Exploitation context

The source bundle does not show CISA KEV listing or cited active exploitation. Exploitation requires the ability to feed invalid sparse tensors into vulnerable TensorFlow operations; no remote exploitation path is established by the provided sources.

Researcher notes

The bundle title references `SparseSparseMinimum`, while the description discusses `SparseAdd`; avoid over-scoping without checking vendor records. The key validation gaps are empty sparse tensors and mismatched `*_indices` rank versus `*_shape` size.

Mitigation direction

  • Upgrade to TensorFlow 2.5.0 or later where the fix is included.
  • Use patched supported releases: 2.4.2, 2.3.3, 2.2.3, or 2.1.4.
  • Inventory containers, notebooks, services, and training pipelines for affected TensorFlow versions.
  • Limit untrusted sparse tensor inputs until affected TensorFlow installations are patched.
  • Review TensorFlow advisory and commit notes for vendor-specific guidance.

Validation and detection

  • Check installed TensorFlow versions against the affected version ranges in the advisory.
  • Identify workloads that accept user-controlled sparse tensor triples or model inputs.
  • Confirm patched versions are deployed across runtime images and dependency lockfiles.
  • Review sparse TensorFlow operation usage, especially sparse-sparse binary operation paths.
  • Verify remediation through dependency scans and controlled regression testing.
Prepared
Confidence
medium
Sources
5

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · low confidence lookup

CWE-754: Exact CWE lookup

Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2021-29607 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Medium
CVSS
5.3 (3.1)
Known Exploited
No
Published

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

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
0Timeline events
0ADP providers
4Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
5.3CVSS 3.1MediumCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:H14.2Primary CVE score

Vulnerability scoring details

Base CVSS 3.1 score

5.3Medium
CVSS 3.1 vector shape for CVE-2021-29607Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

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

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
tensorflowtensorflow< 2.1.4, >= 2.2.0, < 2.2.3, >= 2.3.0, < 2.3.3, >= 2.4.0, < 2.4.2Listed
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-754 · source CWE mapping

Improper Check for Unusual or Exceptional Conditions

Improper Check for Unusual or Exceptional Conditions represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.