CVEvulnerability
CVE-2021-29518
7.8 HIGH
Official page ↗
- Status
- Modified
- Published
- 2021-05-14
- Last modified
- 2026-06-17
- Assigner
- [email protected]
- CVSS 3.1 ([email protected])
- 2.5 LOW — CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L
- CVSS 3.1 ([email protected])
- 7.8 HIGH — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- CVSS 2.0 ([email protected])
- 4.6 MEDIUM — AV:L/AC:L/Au:N/C:P/I:P/A:P
- Weaknesses
- CWE-476
Description
TensorFlow is an end-to-end open source platform for machine learning. In eager mode (default in TF 2.0 and later), session operations are invalid. However, users could still call the raw ops associated with them and trigger a null pointer dereference. The implementation(https://github.com/tensorflow/tensorflow/blob/eebb96c2830d48597d055d247c0e9aebaea94cd5/tensorflow/core/kernels/session_ops.cc#L104) dereferences the session state pointer without checking if it is valid. Thus, in eager mode, `ctx->session_state()` is nullptr and the call of the member function is undefined behavior. 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 configurations
• google tensorflow (< 2.1.4)
• google tensorflow (>= 2.2.0 < 2.2.3)
• google tensorflow (>= 2.3.0 < 2.3.3)
• google tensorflow (>= 2.4.0 < 2.4.2)
Related
Weakness · CWE (1)
- CWE-476 NULL Pointer Dereference weakness
References
- https://github.com/tensorflow/tensorflow/commit/ff70c47a396ef1e3cb73c90513da4f5cb71bebba Patch, Third Party Advisory
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-62gx-355r-9fhg Exploit, Patch, Third Party Advisory
- https://github.com/tensorflow/tensorflow/commit/ff70c47a396ef1e3cb73c90513da4f5cb71bebba Patch, Third Party Advisory
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-62gx-355r-9fhg Exploit, Patch, Third Party Advisory