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

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2021-37665— Incomplete validation in MKL requantization in TensorFlow

Quick assessment

Affected
tensorflow tensorflow
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 Google TensorFlow 中存在输入验证错误漏洞,该漏洞源于产品 requantization 的 MKL 实现未对空指针做有效验证,攻击者可通过解引用空指针访问堆分配数组之外的数据。以下产品及版本收到影响:TensorFlow 2.5.1、TensorFlow 2.4.3 和 TensorFlow 2.3.4。

CVSS 7.8 · High EPSS 0.18% · P7

Possible ATT&CK Techniques 1 AI

T1190 · Exploit Public-Facing Application
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2021-37665

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
Incomplete validation in MKL requantization in TensorFlow
Source: CVE Program / CVE List V5
Vulnerability Description
TensorFlow is an end-to-end open source platform for machine learning. In affected versions due to incomplete validation in MKL implementation of requantization, an attacker can trigger undefined behavior via binding a reference to a null pointer or can access data outside the bounds of heap allocated arrays. The [implementation](https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/core/kernels/mkl/mkl_requantization_range_per_channel_op.cc) does not validate the dimensions of the `input` tensor. A similar issue occurs in `MklRequantizePerChannelOp`. The [implementation](https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/core/kernels/mkl/mkl_requantize_per_channel_op.cc) does not perform full validation for all the input arguments. We have patched the issue in GitHub commit 9e62869465573cb2d9b5053f1fa02a81fce21d69 and in the Github commit 203214568f5bc237603dbab6e1fd389f1572f5c9. The fix will be included in TensorFlow 2.6.0. We will also cherrypick this commit on TensorFlow 2.5.1, TensorFlow 2.4.3, and TensorFlow 2.3.4, as these are also affected and still in supported range.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
输入验证不恰当
Source: CVE Program / CVE List V5
Vulnerability Title
Google TensorFlow 输入验证错误漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 Google TensorFlow 中存在输入验证错误漏洞,该漏洞源于产品 requantization 的 MKL 实现未对空指针做有效验证,攻击者可通过解引用空指针访问堆分配数组之外的数据。以下产品及版本收到影响:TensorFlow 2.5.1、TensorFlow 2.4.3 和 TensorFlow 2.3.4。
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

Vendor Product Affected Versions CPE Subscribe
tensorflow tensorflow >= 2.5.0, < 2.5.1 -

II. Public POCs for CVE-2021-37665

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2021-37665

请登录查看更多情报信息。

Patches & Fixes for CVE-2021-37665 (2)

Vendor Advisories for CVE-2021-37665 (1)

Same Patch Batch · tensorflow · 2021-08-12 · 58 CVEs total

CVE-2021-37678 9.3 CRITICAL Arbitrary code execution due to YAML deserialization
CVE-2021-37639 8.4 HIGH Null pointer dereference and heap OOB read in TensorFlow
CVE-2021-37689 7.8 HIGH Null pointer dereference in TensorFlow Lite MLIR optimizations
CVE-2021-37663 7.8 HIGH Incomplete validation in `QuantizeV2` in TensorFlow
CVE-2021-37681 7.8 HIGH Null pointer exception in TensorFlow Lite
CVE-2021-37648 7.8 HIGH Incorrect validation of `SaveV2` inputs in TensorFlow
CVE-2021-37688 7.8 HIGH Null pointer dereference in TensorFlow Lite
CVE-2021-37676 7.8 HIGH Reference binding to nullptr in shape inference in TensorFlow
CVE-2021-37671 7.8 HIGH Reference binding to nullptr in map operations in TensorFlow
CVE-2021-37666 7.8 HIGH Reference binding to nullptr in `RaggedTensorToVariant` in TensorFlow
CVE-2021-37667 7.8 HIGH Reference binding to nullptr in unicode encoding in TensorFlow
CVE-2021-37652 7.8 HIGH Use after free in boosted trees creation in TensorFlow
CVE-2021-37650 7.8 HIGH Segfault and heap buffer overflow in `{Experimental,}DatasetToTFRecord` in TensorFlow
CVE-2021-37637 7.7 HIGH Null pointer dereference in `CompressElement` in TensorFlow
CVE-2021-37643 7.7 HIGH Null pointer dereference in `MatrixDiagPartOp` in TensorFlow
CVE-2021-37647 7.7 HIGH Null pointer dereference in `SparseTensorSliceDataset` in TensorFlow
CVE-2021-37638 7.7 HIGH Null pointer dereference in `RaggedTensorToTensor` in TensorFlow
CVE-2021-37649 7.7 HIGH Null pointer dereference in `UncompressElement` in TensorFlow
CVE-2021-37659 7.3 HIGH Out of bounds read via null pointer dereference in TensorFlow
CVE-2021-37664 7.3 HIGH Heap OOB in boosted trees in TensorFlow

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

IV. Related Vulnerabilities

V. Comments for CVE-2021-37665

No comments yet


Leave a comment