Vulnerability · Published May 14, 2021 · Assigned by GitHub_M
CVE-2021-29518Session operations in eager mode lead to null pointer dereferences
Low 2.5
In plain English
A low-severity null pointer dereference in tensorflow from tensorflow. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.2% (higher than 10% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official 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 packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| PyPI | tensorflow | 2.3.3 | GHSA-62gx-355r-9fhg |
| PyPI | tensorflow | 2.4.2 | GHSA-62gx-355r-9fhg |
| PyPI | tensorflow | 2.1.4 | GHSA-62gx-355r-9fhg |
| PyPI | tensorflow | 2.1.4, 2.2.3, 2.3.3, 2.4.2 | PYSEC-2021-155 |
| PyPI | tensorflow | 2.2.3 | GHSA-62gx-355r-9fhg |
| PyPI | tensorflow-cpu | 2.4.2 | GHSA-62gx-355r-9fhg |
| PyPI | tensorflow-cpu | 2.1.4 | GHSA-62gx-355r-9fhg |
| PyPI | tensorflow-cpu | 2.2.3 | GHSA-62gx-355r-9fhg |
| PyPI | tensorflow-cpu | 2.3.3 | GHSA-62gx-355r-9fhg |
| PyPI | tensorflow-cpu | 2.1.4, 2.2.3, 2.3.3, 2.4.2 | PYSEC-2021-446 |
| PyPI | tensorflow-gpu | 2.3.3 | GHSA-62gx-355r-9fhg |
| PyPI | tensorflow-gpu | 2.4.2 | GHSA-62gx-355r-9fhg |
| PyPI | tensorflow-gpu | 2.1.4 | GHSA-62gx-355r-9fhg |
| PyPI | tensorflow-gpu | 2.1.4, 2.2.3, 2.3.3, 2.4.2 | PYSEC-2021-644 |
| PyPI | tensorflow-gpu | 2.2.3 | GHSA-62gx-355r-9fhg |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| tensorflow | tensorflow | < 2.1.4>= 2.2.0, < 2.2.3>= 2.3.0, < 2.3.3>= 2.4.0, < 2.4.2 |
Weakness: CWE-476 · Vector: CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L