CVE-2021-29550 (CNNVD-202105-924)
中文标题:
Google TensorFlow 数字错误漏洞
英文标题:
Division by 0 in `FractionalAvgPool`
漏洞描述
中文描述:
Google TensorFlow是美国谷歌(Google)公司的一套用于机器学习的端到端开源平台。 TensorFlow 2.4.2,2.3.3,2.2.3,2.1.4存在数字错误漏洞,攻击者可利用该漏洞可以导致tf.raw_ops.FractionalAvgPool中的运行时除零错误和拒绝服务。
英文描述:
TensorFlow is an end-to-end open source platform for machine learning. An attacker can cause a runtime division by zero error and denial of service in `tf.raw_ops.FractionalAvgPool`. This is because the implementation(https://github.com/tensorflow/tensorflow/blob/acc8ee69f5f46f92a3f1f11230f49c6ac266f10c/tensorflow/core/kernels/fractional_avg_pool_op.cc#L85-L89) computes a divisor quantity by dividing two user controlled values. The user controls the values of `input_size[i]` and `pooling_ratio_[i]` (via the `value.shape()` and `pooling_ratio` arguments). If the value in `input_size[i]` is smaller than the `pooling_ratio_[i]`, then the floor operation results in `output_size[i]` being 0. The `DCHECK_GT` line is a no-op outside of debug mode, so in released versions of TF this does not trigger. Later, these computed values are used as arguments(https://github.com/tensorflow/tensorflow/blob/acc8ee69f5f46f92a3f1f11230f49c6ac266f10c/tensorflow/core/kernels/fractional_avg_pool_op.cc#L96-L99) to `GeneratePoolingSequence`(https://github.com/tensorflow/tensorflow/blob/acc8ee69f5f46f92a3f1f11230f49c6ac266f10c/tensorflow/core/kernels/fractional_pool_common.cc#L100-L108). There, the first computation is a division in a modulo operation. Since `output_length` can be 0, this results in runtime crashing. The fix will be included in TensorFlow 2.5.0. We will also cherrypick this commit on TensorFlow 2.4.2, TensorFlow 2.3.3, TensorFlow 2.2.3 and TensorFlow 2.1.4, as these are also affected and still in supported range.
CWE类型:
标签:
受影响产品
| 厂商 | 产品 | 版本 | 版本范围 | 平台 | CPE |
|---|---|---|---|---|---|
| tensorflow | tensorflow | < 2.1.4 | - | - |
cpe:2.3:a:tensorflow:tensorflow:<_2.1.4:*:*:*:*:*:*:*
|
| tensorflow | tensorflow | >= 2.2.0, < 2.2.3 | - | - |
cpe:2.3:a:tensorflow:tensorflow:>=_2.2.0,_<_2.2.3:*:*:*:*:*:*:*
|
| tensorflow | tensorflow | >= 2.3.0, < 2.3.3 | - | - |
cpe:2.3:a:tensorflow:tensorflow:>=_2.3.0,_<_2.3.3:*:*:*:*:*:*:*
|
| tensorflow | tensorflow | >= 2.4.0, < 2.4.2 | - | - |
cpe:2.3:a:tensorflow:tensorflow:>=_2.4.0,_<_2.4.2:*:*:*:*:*:*:*
|
| tensorflow | * | - | - |
cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:*
|
解决方案
中文解决方案:
英文解决方案:
临时解决方案:
CVSS评分详情
3.1 (cna)
LOWCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L
时间信息
利用信息
数据源详情
| 数据源 | 记录ID | 版本 | 提取时间 |
|---|---|---|---|
| CVE | cve_CVE-2021-29550 |
2025-11-11 15:20:55 | 2025-11-11 07:36:48 |
| NVD | nvd_CVE-2021-29550 |
2025-11-11 14:57:37 | 2025-11-11 07:45:07 |
| CNNVD | cnnvd_CNNVD-202105-924 |
2025-11-11 15:10:38 | 2025-11-11 07:56:45 |
版本与语言
安全公告
变更历史
查看详细变更
- vulnerability_type: 未提取 -> 数字错误
- cnnvd_id: 未提取 -> CNNVD-202105-924
- data_sources: ['cve', 'nvd'] -> ['cnnvd', 'cve', 'nvd']
查看详细变更
- affected_products_count: 4 -> 5
- data_sources: ['cve'] -> ['cve', 'nvd']