Out-of-bounds write in TensorFlow - CVE-2020-15208

 

Out-of-bounds write in TensorFlow - CVE-2020-15208

Published: September 25, 2020 / Updated: October 2, 2020


Vulnerability identifier: #VU47284
CSH Severity: High
CVSSv4.0: CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/U:Amber
CVE-ID: CVE-2020-15208
CWE-ID: CWE-787
Exploitation vector: Remote access
Exploit availability: No public exploit available
Vulnerable software:
TensorFlow
Software vendor:
TensorFlow

Description

The vulnerability allows a remote non-authenticated attacker to execute arbitrary code.

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.


Remediation

Install update from vendor's website.

External links