Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2020-15211— Out of bounds access in tensorflow-lite

CVSS 4.8 · Medium EPSS 0.34% · P57
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2020-15211

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Out of bounds access in tensorflow-lite
Source: NVD (National Vulnerability Database)
Vulnerability Description
In TensorFlow Lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, saved models in the flatbuffer format use a double indexing scheme: a model has a set of subgraphs, each subgraph has a set of operators and each operator has a set of input/output tensors. The flatbuffer format uses indices for the tensors, indexing into an array of tensors that is owned by the subgraph. This results in a pattern of double array indexing when trying to get the data of each tensor. However, some operators can have some tensors be optional. To handle this scenario, the flatbuffer model uses a negative `-1` value as index for these tensors. This results in special casing during validation at model loading time. Unfortunately, this means that the `-1` index is a valid tensor index for any operator, including those that don't expect optional inputs and including for output tensors. Thus, this allows writing and reading from outside the bounds of heap allocated arrays, although only at a specific offset from the start of these arrays. This results in both read and write gadgets, albeit very limited in scope. The issue is patched in several commits (46d5b0852, 00302787b7, e11f5558, cd31fd0ce, 1970c21, and fff2c83), and is released in TensorFlow versions 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1. A potential workaround would be to add a custom `Verifier` to the model loading code to ensure that only operators which accept optional inputs use the `-1` special value and only for the tensors that they expect to be optional. Since this allow-list type approach is erro-prone, we advise upgrading to the patched code.
Source: NVD (National Vulnerability Database)
CVSS Information
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
Source: NVD (National Vulnerability Database)
Vulnerability Type
跨界内存读
Source: NVD (National Vulnerability Database)
Vulnerability Title
Google TensorFlow 缓冲区错误漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 tensorflow-lite 1.15.4之前版本, 2.0.3版本, 2.1.2版本, 2.2.1版本,2.3.1版本中存在安全漏洞,该漏洞允许攻击者从堆分配的数组的边界之外进行写入和读取。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
tensorflowtensorflow < 1.15.4 -

II. Public POCs for CVE-2020-15211

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2020-15211

登录查看更多情报信息。

Same Patch Batch · tensorflow · 2020-09-25 · 25 CVEs total

CVE-2020-152029.0 CRITICALInteger truncation in Shard API usage
CVE-2020-152059.0 CRITICALData leak in Tensorflow
CVE-2020-152069.0 CRITICALDenial of Service in Tensorflow
CVE-2020-152078.7 HIGHSegfault and data corruption in tensorflow-lite
CVE-2020-151968.5 HIGHHeap buffer overflow in Tensorflow
CVE-2020-151958.5 HIGHHeap buffer overflow in Tensorflow
CVE-2020-152128.1 HIGHOut of bounds access in tensorflow-lite
CVE-2020-152148.1 HIGHOut of bounds write in tensorflow-lite
CVE-2020-152037.5 HIGHDenial of Service in Tensorflow
CVE-2020-152087.4 HIGHData corruption in tensorflow-lite
CVE-2020-151937.1 HIGHMemory corruption in Tensorflow
CVE-2020-152106.5 MEDIUMSegmentation fault in tensorflow-lite
CVE-2020-151976.3 MEDIUMDenial of Service in Tensorflow
CVE-2020-152095.9 MEDIUMNull pointer dereference in tensorflow-lite
CVE-2020-151995.9 MEDIUMDenial of Service in Tensorflow
CVE-2020-152005.9 MEDIUMSegfault in Tensorflow
CVE-2020-151985.4 MEDIUMHeap buffer overflow in Tensorflow
CVE-2020-151905.3 MEDIUMSegfault in Tensorflow
CVE-2020-151915.3 MEDIUMUndefined behavior in Tensorflow
CVE-2020-152045.3 MEDIUMSegfault in Tensorflow

Showing top 20 of 25 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2020-15211

No comments yet


Leave a comment