Medium severity · published Sep 25, 2020
CVE-2020-15209
In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, a crafted TFLite model can force a node to have as input a tensor backed by a `nullptr` buffer
5.9
CVSS
0.8%
EPSS
No
On KEV
Description
In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, a crafted TFLite model can force a node to have as input a tensor backed by a `nullptr` buffer. This can be achieved by changing a buffer index in the flatbuffer serialization to convert a read-only tensor to a read-write one. The runtime assumes that these buffers are written to before a possible read, hence they are initialized with `nullptr`. However, by changing the buffer index for a tensor and implicitly converting that tensor to be a read-write one, as there is nothing in the model that writes to it, we get a null pointer dereference. The issue is patched in commit 0b5662bc, and is released in TensorFlow versions 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1.
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
Attack vector
Network
Complexity
High
Privileges
None
User interaction
None
Confidentiality
None
Integrity
None
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.8% · higher than 56% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
LE
Leap · Opensuse
15.2 · source: NVD
TE
Tensorflow · Google
before 1.15.4; 2.0.0 before 2.0.3; 2.1.0 before 2.1.2; 2.2.0 before 2.2.1; 2.3.0 before 2.3.1 · source: NVD
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2020-15209
CVE.org
https://www.cve.org/CVERecord?id=CVE-2020-15209
Mailing List
http://lists.opensuse.org/opensuse-security-announce/2020-10/msg00065.html
Patch
https://github.com/tensorflow/tensorflow/commit/0b5662bc2be13a8c8f044d925d87fb6e56247cd8
Third Party Advisory
https://github.com/tensorflow/tensorflow/releases/tag/v2.3.1
Exploit
https://github.com/tensorflow/tensorflow/security/advisories/GHSA-qh32-6jjc-qprm
More from Tensorflow
9.9
CVE-2020-15196
In Tensorflow version 2.3.0, the `SparseCountSparseOutput` and `RaggedCountSparseOutput` implementations don't validate that the `weights` tensor has the same shape as the data
9.8
CVE-2023-25668
TensorFlow is an open source platform for machine learning
9.8
CVE-2023-25664
TensorFlow is an open source platform for machine learning
9.8
CVE-2022-41900
TensorFlow is an open source platform for machine learning
9.8
CVE-2022-35939
TensorFlow is an open source platform for machine learning
