QID 982495
QID 982495: Python (pip) Security Update for tensorflow-gpu (GHSA-qg48-85hg-mqc5)
Security update has been released for tensorflow,tensorflow-cpu,tensorflow-gpu to fix the vulnerability.
Note: The preceding description block is extracted directly from the security advisory. Using automation, we have attempted to clean and format it as much as possible without introducing additional issues.
An attacker can cause a denial of service via a FPE runtime error in `tf.raw_ops.DenseCountSparseOutput`:
```python
import tensorflow as tf
values = tf.constant([], shape=[0, 0], dtype=tf.int64)
weights = tf.constant([])
tf.raw_ops.DenseCountSparseOutput(
values=values, weights=weights,
minlength=-1, maxlength=58, binary_output=True)
```
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:
```cc
int num_batch_elements = 1;
for (int i = 0; i < num_batch_dimensions; ++i) {
num_batch_elements *= data.shape().dim_size(i);
}
int num_value_elements = data.shape().num_elements() / num_batch_elements;
```
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.
- GHSA-qg48-85hg-mqc5 -
github.com/advisories/GHSA-qg48-85hg-mqc5
CVEs related to QID 982495
| Advisory ID | Software | Component | Link |
|---|---|---|---|
| GHSA-qg48-85hg-mqc5 | tensorflow |
|
|
| GHSA-qg48-85hg-mqc5 | tensorflow-cpu |
|
|
| GHSA-qg48-85hg-mqc5 | tensorflow-gpu |
|