In eager mode, TensorFlow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1 does not set the session state. Hence, calling tf.raw_ops.GetSessionHandle or tf.raw_ops.GetSessionHandleV2 results in a null pointer dereference In linked snippet, in eager mode, ctx->session_state() returns nullptr. Since code immediately dereferences this, we get a segmentation fault. The issue is patched in commit 9a133d73ae4b4664d22bd1aa6d654fec13c52ee1, and is released in TensorFlow versions 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1.
[
{
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"189352979120194311327371559395119878939",
"240616599412011448759509449000224441154",
"145066807906330921007866302987167158980",
"160262667934512112962314419515803663363",
"15626677433426552320500466918107972585",
"248719977052199874095317382270256044896",
"12019719942517677709544006141306629999",
"273563587906890098515499487317187043849",
"14152470903489550199196908644522954805"
]
},
"target": {
"file": "tensorflow/core/kernels/session_ops.cc"
},
"source": "https://github.com/tensorflow/tensorflow/commit/9a133d73ae4b4664d22bd1aa6d654fec13c52ee1",
"id": "CVE-2020-15204-9ee6decc",
"deprecated": false,
"signature_version": "v1"
}
]