Intel Optimization For Tensorflow vulnerabilities
429 known vulnerabilities affecting intel/optimization_for_tensorflow.
Total CVEs
429
CISA KEV
0
Public exploits
0
Exploited in wild
0
Severity breakdown
CRITICAL5HIGH121MEDIUM200LOW103
Vulnerabilities
Page 6 of 22
CVE-2022-35985P3MEDIUM≥ 0, < 2.7.2≥ 2.8.0, < 2.8.1+1 more2022-09-16
CVE-2022-35985 [MEDIUM] CWE-617 TensorFlow vulnerable to `CHECK` fail in `LRNGrad`
TensorFlow vulnerable to `CHECK` fail in `LRNGrad`
### Impact
If `LRNGrad` is given an `output_image` input tensor that is not 4-D, it results in a `CHECK` fail that can be used to trigger a denial of service attack.
```python
import tensorflow as tf
depth_radius = 1
bias = 1.59018219
alpha = 0.117728651
beta = 0.404427052
input_grads = tf.random.uniform(shape=[4, 4, 4, 4], minval=-10000, maxval=10000, dtype=tf.f
ghsaosv
CVE-2022-35987P3MEDIUM≥ 0, < 2.7.2≥ 2.8.0, < 2.8.1+1 more2022-09-16
CVE-2022-35987 [MEDIUM] CWE-617 TensorFlow vulnerable to `CHECK` fail in `DenseBincount`
TensorFlow vulnerable to `CHECK` fail in `DenseBincount`
### Impact
`DenseBincount` assumes its input tensor `weights` to either have the same shape as its input tensor `input` or to be length-0. A different `weights` shape will trigger a `CHECK` fail that can be used to trigger a denial of service attack.
```python
import tensorflow as tf
binary_output = True
input = tf.random.uniform(shape=[0, 0], minval=
ghsaosv
CVE-2022-35995P3MEDIUM≥ 0, < 2.7.2≥ 2.8.0, < 2.8.1+1 more2022-09-16
CVE-2022-35995 [MEDIUM] CWE-617 TensorFlow vulnerable to `CHECK` fail in `AudioSummaryV2`
TensorFlow vulnerable to `CHECK` fail in `AudioSummaryV2`
### Impact
When `AudioSummaryV2` receives an input `sample_rate` with more than one element, it gives a `CHECK` fails that can be used to trigger a denial of service attack.
```python
import tensorflow as tf
arg_0=''
arg_1=tf.random.uniform(shape=(1,1), dtype=tf.float32, maxval=None)
arg_2=tf.random.uniform(shape=(2,1), dtype=tf.float32, maxval=None
ghsaosv
CVE-2022-35983P3MEDIUM≥ 0, < 2.7.2≥ 2.8.0, < 2.8.1+1 more2022-09-16
CVE-2022-35983 [MEDIUM] CWE-617 TensorFlow vulnerable to `CHECK` fail in `Save` and `SaveSlices`
TensorFlow vulnerable to `CHECK` fail in `Save` and `SaveSlices`
### Impact
If `Save` or `SaveSlices` is run over tensors of an unsupported `dtype`, it results in a `CHECK` fail that can be used to trigger a denial of service attack.
```python
import tensorflow as tf
filename = tf.constant("")
tensor_names = tf.constant("")
# Save
data = tf.cast(tf.random.uniform(shape=[1], minval=-10000, maxval=100
ghsaosv
CVE-2022-35999P3MEDIUM≥ 0, < 2.7.2≥ 2.8.0, < 2.8.1+1 more2022-09-16
CVE-2022-35999 [MEDIUM] CWE-617 TensorFlow vulnerable to `CHECK` fail in `Conv2DBackpropInput`
TensorFlow vulnerable to `CHECK` fail in `Conv2DBackpropInput`
### Impact
When `Conv2DBackpropInput` receives empty `out_backprop` inputs (e.g. `[3, 1, 0, 1]`), the current CPU/GPU kernels `CHECK` fail (one with dnnl, the other with cudnn). This can be used to trigger a denial of service attack.
```python
import tensorflow as tf
import numpy as np
input_sizes = [3, 1, 1, 2]
filter = np.ones([1, 3, 2,
ghsaosv
CVE-2022-36026P3MEDIUM≥ 0, < 2.7.2≥ 2.8.0, < 2.8.1+1 more2022-09-16
CVE-2022-36026 [MEDIUM] CWE-617 TensorFlow vulnerable to `CHECK` fail in `QuantizeAndDequantizeV3`
TensorFlow vulnerable to `CHECK` fail in `QuantizeAndDequantizeV3`
### Impact
If `QuantizeAndDequantizeV3` is given a nonscalar `num_bits` input tensor, it results in a `CHECK` fail that can be used to trigger a denial of service attack.
```python
import tensorflow as tf
signed_input = True
range_given = False
narrow_range = False
axis = -1
input = tf.constant(-3.5, shape=[1], dtype=tf.float32)
i
ghsaosv
CVE-2022-35984P3MEDIUM≥ 0, < 2.7.2≥ 2.8.0, < 2.8.1+1 more2022-09-16
CVE-2022-35984 [MEDIUM] CWE-617 TensorFlow vulnerable to `CHECK` fail in `ParameterizedTruncatedNormal`
TensorFlow vulnerable to `CHECK` fail in `ParameterizedTruncatedNormal`
### Impact
`ParameterizedTruncatedNormal` assumes `shape` is of type `int32`. A valid `shape` of type `int64` results in a mismatched type `CHECK` fail that can be used to trigger a denial of service attack.
```python
import tensorflow as tf
seed = 1618
seed2 = 0
shape = tf.random.uniform(shape=[3], minval=-10000, maxval=
ghsaosv
CVE-2022-35989P3MEDIUM≥ 0, < 2.7.2≥ 2.8.0, < 2.8.1+1 more2022-09-16
CVE-2022-35989 [MEDIUM] CWE-617 TensorFlow vulnerable to `CHECK` fail in `MaxPool`
TensorFlow vulnerable to `CHECK` fail in `MaxPool`
### Impact
When `MaxPool` receives a window size input array `ksize` with dimensions greater than its input tensor `input`, the GPU kernel gives a `CHECK` fail that can be used to trigger a denial of service attack.
```python
import tensorflow as tf
import numpy as np
input = np.ones([1, 1, 1, 1])
ksize = [1, 1, 2, 2]
strides = [1, 1, 1, 1]
padding = 'VALID'
dat
ghsaosv
CVE-2022-35959P3MEDIUM≥ 0, < 2.7.2≥ 2.8.0, < 2.8.1+1 more2022-09-16
CVE-2022-35959 [MEDIUM] CWE-617 TensorFlow vulnerable to `CHECK` failures in `AvgPool3DGrad`
TensorFlow vulnerable to `CHECK` failures in `AvgPool3DGrad`
### Impact
The implementation of `AvgPool3DGradOp` does not fully validate the input `orig_input_shape`. This results in an overflow that results in a `CHECK` failure which can be used to trigger a denial of service attack:
```python
import tensorflow as tf
ksize = [1, 1, 1, 1, 1]
strides = [1, 1, 1, 1, 1]
padding = "SAME"
data_format = "NDHW
ghsaosv
CVE-2022-35971P3MEDIUM≥ 0, < 2.7.2≥ 2.8.0, < 2.8.1+1 more2022-09-16
CVE-2022-35971 [MEDIUM] CWE-617 TensorFlow vulnerable to `CHECK` fail in `FakeQuantWithMinMaxVars`
TensorFlow vulnerable to `CHECK` fail in `FakeQuantWithMinMaxVars`
### Impact
If `FakeQuantWithMinMaxVars` is given `min` or `max` tensors of a nonzero rank, it results in a `CHECK` fail that can be used to trigger a denial of service attack.
```python
import tensorflow as tf
num_bits = 8
narrow_range = False
inputs = tf.constant(0, shape=[2,3], dtype=tf.float32)
min = tf.constant(0, shape=[2,3],
ghsaosv
CVE-2022-35969P3MEDIUM≥ 0, < 2.7.2≥ 2.8.0, < 2.8.1+1 more2022-09-16
CVE-2022-35969 [MEDIUM] TensorFlow vulnerable to `CHECK` fail in `Conv2DBackpropInput`
TensorFlow vulnerable to `CHECK` fail in `Conv2DBackpropInput`
### Impact
The implementation of `Conv2DBackpropInput` requires `input_sizes` to be 4-dimensional. Otherwise, it gives a `CHECK` failure which can be used to trigger a denial of service attack:
```python
import tensorflow as tf
strides = [1, 1, 1, 1]
padding = "SAME"
use_cudnn_on_gpu = True
explicit_paddings = []
data_format = "NHWC"
dilations =
ghsaosv
CVE-2023-27579P3HIGH≥ 0, < 2.11.12023-03-24
CVE-2023-27579 [HIGH] CWE-697 TensorFlow has Floating Point Exception in TFLite in conv kernel
TensorFlow has Floating Point Exception in TFLite in conv kernel
### Impact
Constructing a tflite model with a paramater `filter_input_channel` of less than 1 gives a FPE.
### Patches
We have patched the issue in GitHub commit [34f8368c535253f5c9cb3a303297743b62442aaa](https://github.com/tensorflow/tensorflow/commit/34f8368c535253f5c9cb3a303297743b62442aaa).
The fix will be included in TensorFlow 2
ghsaosv
CVE-2023-25676P3HIGH≥ 0, < 2.11.12023-03-24
CVE-2023-25676 [HIGH] CWE-476 TensorFlow has null dereference on ParallelConcat with XLA
TensorFlow has null dereference on ParallelConcat with XLA
### Impact
When running with XLA, `tf.raw_ops.ParallelConcat` segfaults with a nullptr dereference when given a parameter `shape` with rank that is not greater than zero.
```python
import tensorflow as tf
func = tf.raw_ops.ParallelConcat
para = {'shape': 0, 'values': [1]}
@tf.function(jit_compile=True)
def test():
y = func(**para)
return y
test(
ghsaosv
CVE-2022-41911P3MEDIUM≥ 0, < 2.8.4≥ 2.9.0, < 2.9.3+1 more2022-11-21
CVE-2022-41911 [MEDIUM] CWE-704 Invalid char to bool conversion when printing a tensor
Invalid char to bool conversion when printing a tensor
### Impact
When [printing a tensor](https://github.com/tensorflow/tensorflow/blob/807cae8a807960fd7ac2313cde73a11fc15e7942/tensorflow/core/framework/tensor.cc#L1200-L1227), we get it's data as a `const char*` array (since that's the underlying storage) and then we typecast it to the element type. However, conversions from `char` to `bool` are undefined if
ghsaosv
CVE-2023-25672P3HIGH≥ 0, < 2.11.12023-03-24
CVE-2023-25672 [HIGH] CWE-476 TensorFlow has Null Pointer Error in LookupTableImportV2
TensorFlow has Null Pointer Error in LookupTableImportV2
### Impact
The function `tf.raw_ops.LookupTableImportV2` cannot handle scalars in the `values` parameter and gives an NPE.
```python
import tensorflow as tf
v = tf.Variable(1)
@tf.function(jit_compile=True)
def test():
func = tf.raw_ops.LookupTableImportV2
para={'table_handle': v.handle,'keys': [62.98910140991211, 94.36528015136719], 'values': -919}
ghsaosv
CVE-2023-25667P3MEDIUM≥ 0, < 2.11.12023-03-24
CVE-2023-25667 [MEDIUM] CWE-190 TensorFlow vulnerable to segfault when opening multiframe gif
TensorFlow vulnerable to segfault when opening multiframe gif
### Impact
Integer overflow occurs when 2^31 <= num_frames * height * width * channels < 2^32, for example Full HD screencast of at least 346 frames.
```python
import urllib.request
dat = urllib.request.urlopen('https://raw.githubusercontent.com/tensorflow/tensorflow/1c38ad9b78ffe06076745a1ee00cec42f39ff726/tensorflow/core/lib/gif/testdata/3
ghsaosv
CVE-2021-29612P3LOW≥ 0, < 2.1.4≥ 2.2.0, < 2.2.3+2 more2021-05-21
CVE-2021-29612 [LOW] CWE-120 Heap buffer overflow in `BandedTriangularSolve`
Heap buffer overflow in `BandedTriangularSolve`
### Impact
An attacker can trigger a heap buffer overflow in Eigen implementation of `tf.raw_ops.BandedTriangularSolve`:
```python
import tensorflow as tf
import numpy as np
matrix_array = np.array([])
matrix_tensor = tf.convert_to_tensor(np.reshape(matrix_array,(0,1)),dtype=tf.float32)
rhs_array = np.array([1,1])
rhs_tensor = tf.convert_to_tensor(np.reshape(rhs_array,(
ghsaosv
CVE-2021-29591P3HIGH≥ 0, < 2.1.4≥ 2.2.0, < 2.2.3+2 more2021-05-21
CVE-2021-29591 [HIGH] CWE-674 Stack overflow due to looping TFLite subgraph
Stack overflow due to looping TFLite subgraph
### Impact
TFlite graphs must not have loops between nodes. However, this condition was not checked and an attacker could craft models that would result in infinite loop during evaluation. In certain cases, the infinite loop would be replaced by stack overflow due to too many recursive calls.
For example, the [`While` implementation](https://github.com/tensorflow/tensorflow
ghsaosv
CVE-2021-29608P3MEDIUM≥ 0, < 2.1.4≥ 2.2.0, < 2.2.3+2 more2021-05-21
CVE-2021-29608 [MEDIUM] CWE-131 Heap OOB and null pointer dereference in `RaggedTensorToTensor`
Heap OOB and null pointer dereference in `RaggedTensorToTensor`
### Impact
Due to lack of validation in `tf.raw_ops.RaggedTensorToTensor`, an attacker can exploit an undefined behavior if input arguments are empty:
```python
import tensorflow as tf
shape = tf.constant([-1, -1], shape=[2], dtype=tf.int64)
values = tf.constant([], shape=[0], dtype=tf.int64)
default_value = tf.constant(404, dtype=tf.i
ghsaosv
CVE-2021-29614P3MEDIUM≥ 0, < 2.1.4≥ 2.2.0, < 2.2.3+2 more2021-05-21
CVE-2021-29614 [MEDIUM] CWE-665 Interpreter crash from `tf.io.decode_raw`
Interpreter crash from `tf.io.decode_raw`
### Impact
The implementation of `tf.io.decode_raw` produces incorrect results and crashes the Python interpreter when combining `fixed_length` and wider datatypes.
```python
import tensorflow as tf
tf.io.decode_raw(tf.constant(["1","2","3","4"]), tf.uint16, fixed_length=4)
```
The [implementation of the padded version](https://github.com/tensorflow/tensorflow/blob/1d8903e5b167
ghsaosv