What’s Vulnerable › Vulnerabilities
CVE-2021-29561: CHECK-fail in `LoadAndRemapMatrix`
- Severity: medium (CVSS 5.5 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-617
Description
TensorFlow is an end-to-end open source platform for machine learning. An attacker can cause a denial of service by exploiting a `CHECK`-failure coming from `tf.raw_ops.LoadAndRemapMatrix`. This is because the implementation(https://github.com/tensorflow/tensorflow/blob/d94227d43aa125ad8b54115c03cece54f6a1977b/tensorflow/core/kernels/ragged_tensor_to_tensor_op.cc#L219-L222) assumes that the `ckpt_path` is always a valid scalar. However, an attacker can send any other tensor as the first argument of `LoadAndRemapMatrix`. This would cause the rank `CHECK` in `scalar<T>()()` to trigger and terminate the process. 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/77dd114513d7796e1e2b8aece214a380af26fbf4
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-gvm4-h8j3-rjrq
- https://github.com/tensorflow/tensorflow/commit/77dd114513d7796e1e2b8aece214a380af26fbf4
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-gvm4-h8j3-rjrq
Get alerted when CVE-2021-29561 or the next vulnerability affects your stack