CVE-2023-25660High· 7.5▾ TwilightTensorFlow vulnerable to seg fault in `tf.raw_ops.Print`
▾ Twilight zone — High severity, or a signal on a lesser flaw
impact 41.3 · likelihood 0.1 · exploitation 0
Need a working PoC? Pro members can cast a request and our team develops one — it lands right here.
Exploit-prediction probability, daily snapshots since Jul 8.
Disclosure to exploitation, from the record and what we observed since indexing it.
Disclosed via OSV
0.4%
0.4% → 0.4%
Last analysed / modified upstream
When the parameter summarize of tf.raw_ops.Print is zero, the new method SummarizeArray<bool> will reference to a nullptr, leading to a seg fault.
import tensorflow as tf
tf.raw_ops.Print(input = tf.constant([1, 1, 1, 1],dtype=tf.int32),
data = [[False, False, False, False], [False], [False, False, False]],
message = 'tmp/I',
first_n = 100,
summarize = 0)
We have patched the issue in GitHub commit 6d423b8bcc9aa9f5554dc988c1c16d038b508df1.
The fix will be included in TensorFlow 2.12. We will also cherrypick this commit on TensorFlow 2.11.1.
Please consult our security guide for more information regarding the security model and how to contact us with issues and questions.
This vulnerability has been reported by Yu Tian of Qihoo 360 AIVul Team
tensorflow < 2.11.1tensorflow-cpu < 2.11.1tensorflow-gpu < 2.11.1Upgrade to a patched release:
tensorflow 2.11.1tensorflow-cpu 2.11.1tensorflow-gpu 2.11.1Connected by shared product, vendor, weakness, or advisory.
CVE-2021-29541Low· 2.5Null pointer dereference in `StringNGrams`
CVE-2021-29525Low· 2.5Division by 0 in `Conv2DBackpropInput`
CVE-2021-29527Low· 2.5Division by 0 in `QuantizedConv2D`
CVE-2021-29524Low· 2.5Division by 0 in `Conv2DBackpropFilter`
CVE-2020-15207High· 8.7Segfault and data corruption in tensorflow-lite
CVE-2021-29535Low· 2.5Heap buffer overflow in `QuantizedMul`