LiveActive security incident?Get immediate response
CVE Record

CVE-2021-29590: Heap OOB read in TFLite's implementation of `Minimum` or `Maximum`

TensorFlow is an end-to-end open source platform for machine learning. The implementations of the `Minimum` and `Maximum` TFLite operators can be used to read data outside of bounds of heap allocated objects, if any of the two input tensor arguments are empty. This is because the broadcasting implementation(https://github.com/tensorflow/tensorflow/blob/0d45ea1ca641b21b73bcf9c00e0179cda284e7e7/tensorflow/lite/kernels/internal/reference/maximum_minimum.h#L52-L56) indexes in both tensors with the same index but does not validate that the index is within bounds. 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.

LowCVSS 2.5Not KEV-listedUpdated
Glexia's TakeAutomated analysislow

Security readout for executives and security teams

Plain-English summary

CVE-2021-29590 is a low-severity TensorFlow Lite bug. Under specific conditions, the Minimum or Maximum operators can read past a heap allocation when an input tensor is empty. The sourced impact is limited to availability, not data theft or tampering.

Executive priority

Treat this as routine patch management unless your product processes untrusted ML inputs with affected TensorFlow Lite builds. The business risk is low, but embedded or bundled ML components can be missed in normal dependency inventories.

Technical view

TFLite Minimum and Maximum broadcasting indexed both tensors with the same index without confirming bounds when either input tensor was empty. This created a CWE-125 heap out-of-bounds read. Affected TensorFlow ranges include versions before patched 2.1.4, 2.2.3, 2.3.3, and 2.4.2 releases.

Likely exposure

Exposure is most likely where applications use affected TensorFlow Lite versions and process attacker-influenced models or tensor inputs. The CVSS vector is local, high complexity, low privileges required, no user interaction, and availability-only impact.

Exploitation context

The source bundle does not show active exploitation, and KEV is false. Exploitation evidence is incomplete beyond the vendor advisory and fix commit. Any real risk depends on whether untrusted inputs can reach the affected TFLite operators.

Researcher notes

The advisory ties the issue to empty tensor handling in TFLite Minimum and Maximum broadcasting. CVSS 2.5 indicates local, high-complexity exploitation with availability impact only. Do not assume broader TensorFlow operator exposure without confirming affected TFLite code paths.

Mitigation direction

  • Upgrade TensorFlow to 2.5.0 or a patched supported maintenance release.
  • Use TensorFlow 2.4.2, 2.3.3, 2.2.3, or 2.1.4 where applicable.
  • Check vendor guidance if running unsupported TensorFlow versions older than these branches.
  • Limit untrusted model or tensor input processing until affected deployments are patched.

Validation and detection

  • Inventory applications and embedded components using TensorFlow Lite.
  • Identify TensorFlow versions matching the listed affected ranges.
  • Review whether Minimum or Maximum TFLite operators process attacker-influenced inputs.
  • Confirm patched versions are deployed in build manifests and runtime artifacts.
Prepared
Confidence
high
Sources
4

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-125: 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-29590 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
Low
CVSS
2.5 (3.1)
Known Exploited
No
Published

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

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
3Source 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
2.5CVSS 3.1LowCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L11.4Primary CVE score

Vulnerability scoring details

Base CVSS 3.1 score

2.5Low
CVSS 3.1 vector shape for CVE-2021-29590Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

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

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-125 · source CWE mapping

Out-of-bounds Read

Out-of-bounds Read represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.