What’s Vulnerable › Vulnerabilities
CVE-2021-29560: Heap buffer overflow in `RaggedTensorToTensor`
- Severity: high (CVSS 7.1 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: yes
- Published: 2021-05-14 · updated 2026-06-17
- Weakness: CWE-125
Description
TensorFlow is an end-to-end open source platform for machine learning. An attacker can cause a heap buffer overflow in `tf.raw_ops.RaggedTensorToTensor`. This is because the implementation(https://github.com/tensorflow/tensorflow/blob/d94227d43aa125ad8b54115c03cece54f6a1977b/tensorflow/core/kernels/ragged_tensor_to_tensor_op.cc#L219-L222) uses the same index to access two arrays in parallel. Since the user controls the shape of the input arguments, an attacker could trigger a heap OOB access when `parent_output_index` is shorter than `row_split`. 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.
Affected products
- tensorflow: before 2.1.4; from 2.2.0 before 2.2.3; from 2.3.0 before 2.3.3; from 2.4.0 before 2.4.2 — fixed in 2.1.4, 2.2.3, 2.3.3, 2.4.2
How to fix
Upgrade to a fixed version: tensorflow 2.1.4, 2.2.3, 2.3.3, 2.4.2. Check the vendor advisory for mitigations.
References
- https://github.com/tensorflow/tensorflow/commit/a84358aa12f0b1518e606095ab9cfddbf597c121
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-8gv3-57p6-g35r
- https://github.com/tensorflow/tensorflow/commit/a84358aa12f0b1518e606095ab9cfddbf597c121
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-8gv3-57p6-g35r
Get alerted when CVE-2021-29560 or the next vulnerability affects your stack