First published: Fri Sep 25 2020(Updated: )
### Impact In eager mode, TensorFlow does not set the session state. Hence, calling `tf.raw_ops.GetSessionHandle` or `tf.raw_ops.GetSessionHandleV2` results in a null pointer dereference: https://github.com/tensorflow/tensorflow/blob/0e68f4d3295eb0281a517c3662f6698992b7b2cf/tensorflow/core/kernels/session_ops.cc#L45 In the above snippet, in eager mode, `ctx->session_state()` returns `nullptr`. Since code immediately dereferences this, we get a segmentation fault. ### Patches We have patched the issue in 9a133d73ae4b4664d22bd1aa6d654fec13c52ee1 and will release patch releases for all versions between 1.15 and 2.3. We recommend users to upgrade to TensorFlow 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1. ### For more information Please consult [our security guide](https://github.com/tensorflow/tensorflow/blob/master/SECURITY.md) for more information regarding the security model and how to contact us with issues and questions. ### Attribution This vulnerability has been reported by members of the Aivul Team from Qihoo 360.
Credit: security-advisories@github.com security-advisories@github.com
Affected Software | Affected Version | How to fix |
---|---|---|
pip/tensorflow-gpu | =2.3.0 | 2.3.1 |
pip/tensorflow-gpu | =2.2.0 | 2.2.1 |
pip/tensorflow-gpu | >=2.1.0<2.1.2 | 2.1.2 |
pip/tensorflow-gpu | >=2.0.0<2.0.3 | 2.0.3 |
pip/tensorflow-gpu | <1.15.4 | 1.15.4 |
pip/tensorflow-cpu | =2.3.0 | 2.3.1 |
pip/tensorflow-cpu | =2.2.0 | 2.2.1 |
pip/tensorflow-cpu | >=2.1.0<2.1.2 | 2.1.2 |
pip/tensorflow-cpu | >=2.0.0<2.0.3 | 2.0.3 |
pip/tensorflow-cpu | <1.15.4 | 1.15.4 |
pip/tensorflow | =2.3.0 | 2.3.1 |
pip/tensorflow | =2.2.0 | 2.2.1 |
pip/tensorflow | >=2.1.0<2.1.2 | 2.1.2 |
pip/tensorflow | >=2.0.0<2.0.3 | 2.0.3 |
pip/tensorflow | <1.15.4 | 1.15.4 |
TensorFlow Keras | <1.15.4 | |
TensorFlow Keras | >=2.0.0<2.0.3 | |
TensorFlow Keras | >=2.1.0<2.1.2 | |
TensorFlow Keras | >=2.2.0<2.2.1 | |
TensorFlow Keras | >=2.3.0<2.3.1 | |
SUSE Linux | =15.2 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2020-15204 has a severity rating of medium due to the null pointer dereference that can occur in eager mode.
To fix CVE-2020-15204, upgrade TensorFlow to version 2.3.1 or higher.
CVE-2020-15204 affects TensorFlow versions 2.0.0 to 2.3.0, as well as 1.15.x.
In a production environment, CVE-2020-15204 may lead to application crashes or unexpected behaviors due to null pointer dereferences.
CVE-2020-15204 is primarily associated with TensorFlow and is not limited to a specific operating system.