Patchfirst
CVE-2020-15208 High · 7.4 EPSS 0.9%

Data corruption in tensorflow-lite

tensorflow · tensorflow

Official description · CVE.org

In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, when determining the common dimension size of two tensors, TFLite uses a `DCHECK` which is no-op outside of debug compilation modes. Since the function always returns the dimension of the first tensor, malicious attackers can craft cases where this is larger than that of the second tensor. In turn, this would result in reads/writes outside of bounds since the interpreter will wrongly assume that there is enough data in both tensors. The issue is patched in commit 8ee24e7949a203d234489f9da2c5bf45a7d5157d, and is released in TensorFlow versions 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1.

Breakdown
17.1 / 100
Exploited
Not confirmed
Reports
0
Tactics
3/15

How an attack unfolds

Based on mappings. Select a step to see the evidence.
  1. What they do

Disclosed on 25 Sep 2020. No public exploit code or confirmed exploitation is recorded.

techniques

2 , grouped by in kill-chain order 2

ExecutionTA0002

Hijack Execution Flow T1574 also Stealth
MITRE CTID mapping of the CVE · primary impact

ImpactTA0040

MITRE CTID mapping of the CVE · primary impact

Detection

0 rules for this CVE · 11 general rules for its techniques

Rules for this CVE

0 that reference CVE-2020-15208 directly.

CVE-specific rules are not available in this build. Search SigmaHQ ↗

General rules for this CVE’s techniques

These detect the technique in general, not this specific vulnerability.

Sigma rules © SigmaHQ, Detection Rule License 1.1; linked, not reproduced.

Am I affected? What do I upgrade to?

From GitHub Security Advisories and OSV

3 packages in 1 ecosystem. Main package: tensorflow.

Upgrade to 2.3.1 or later

Fixes this CVE and 2 other known vulnerabilities in this package (CVE-2020-15199, CVE-2020-15211).

pippip install "tensorflow>=2.3.1"

The first fix for CVE-2020-15208.

Affected versions, by release line

If you runUpgrade to
2.3.0 up to 2.3.12.3.1
2.2.0 up to 2.2.1

Still affected on this line by CVE-2020-15199 (fixed in 2.3.1, a newer line).

2.2.1
2.1.0 up to 2.1.2

Still affected on this line by CVE-2020-15199 (fixed in 2.3.1, a newer line).

2.1.2
2.0.0 up to 2.0.3

Still affected on this line by CVE-2020-15199 (fixed in 2.3.1, a newer line).

2.0.3
All versions before 1.15.4

Still affected on this line by CVE-2020-15199 (fixed in 2.3.1, a newer line).

1.15.4

“Up to” means the second version is the fix and is not affected.

Other packages that bundle this code (2)

Forks, repackagings and products that include the affected code. Each has its own fixed version.

  • PyPItensorflow-cpu
    Affected: 2.3.0 up to 2.3.1; 2.2.0 up to 2.2.1; 2.1.0 up to 2.1.2; 2.0.0 up to 2.0.3; All versions before 1.15.4Upgrade to 2.3.1 or later (older lines: 2.2.1, 2.1.2, 2.0.3, 1.15.4)
  • PyPItensorflow-gpu
    Affected: 2.3.0 up to 2.3.1; 2.2.0 up to 2.2.1; 2.1.0 up to 2.1.2; 2.0.0 up to 2.0.3; All versions before 1.15.4Upgrade to 2.3.1 or later (older lines: 2.2.1, 2.1.2, 2.0.3, 1.15.4)

Check your lockfile against all CVEs

What security researchers reported

Not named in any threat report yet

References

4 links, grouped by NVD tag
↑ ↓ chooseEnter openEsc close