TensorFlow is an end-to-end open source platform for machine learning. An attacker can cause a denial of service via a FPE runtime error in tf.raw_ops.DenseCountSparseOutput. This is because the implementation(https://github.com/tensorflow/tensorflow/blob/efff014f3b2d8ef6141da30c806faf141297eca1/tensorflow/core/kernels/count_ops.cc#L123-L127) computes a divisor value from user data but does not check that the result is 0 before doing the division. Since data is given by the values argument, num_batch_elements is 0. The fix will be included in TensorFlow 2.5.0. We will also cherrypick this commit on TensorFlow 2.4.2, and TensorFlow 2.3.3, as these are also affected.
| Software | From | Fixed in |
|---|---|---|
| google / tensorflow | 2.4.0 | 2.4.2 |
| google / tensorflow | 2.3.0 | 2.3.3 |
| google / tensorflow | 2.2.0 | 2.2.3 |
| google / tensorflow | - | 2.1.4 |
tensorflow
|
2.3.0 | 2.3.3 |
tensorflow
|
2.4.0 | 2.4.2 |
tensorflow-cpu
|
2.3.0 | 2.3.3 |
tensorflow-cpu
|
2.4.0 | 2.4.2 |
tensorflow-gpu
|
2.3.0 | 2.3.3 |
tensorflow-gpu
|
2.4.0 | 2.4.2 |