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 12 of 22
CVE-2021-37676P3HIGH≥ 0, < 2.3.4≥ 2.4.0, < 2.4.3+1 more2021-08-25
CVE-2021-37676 [HIGH] CWE-824 Reference binding to nullptr in shape inference
Reference binding to nullptr in shape inference
### Impact
An attacker can cause undefined behavior via binding a reference to null pointer in `tf.raw_ops.SparseFillEmptyRows`:
```python
import tensorflow as tf
tf.compat.v1.disable_v2_behavior()
tf.raw_ops.SparseFillEmptyRows(
indices = tf.constant([], shape=[0, 0], dtype=tf.int64),
values = tf.constant([], shape=[0], dtype=tf.int64),
dense_shape = tf.constant([], s
ghsaosv
CVE-2021-37667P3HIGH≥ 0, < 2.3.4≥ 2.4.0, < 2.4.3+1 more2021-08-25
CVE-2021-37667 [HIGH] CWE-824 Reference binding to nullptr in unicode encoding
Reference binding to nullptr in unicode encoding
### Impact
An attacker can cause undefined behavior via binding a reference to null pointer in `tf.raw_ops.UnicodeEncode`:
```python
import tensorflow as tf
from tensorflow.python.ops import gen_string_ops
gen_string_ops.unicode_encode(
input_values=[],
input_splits=[],
output_encoding='UTF-8',
errors='ignore',
replacement_char='a')
```
The [implementation](https://
ghsaosv
CVE-2021-37655P3HIGH≥ 0, < 2.3.4≥ 2.4.0, < 2.4.3+1 more2021-08-25
CVE-2021-37655 [HIGH] CWE-125 Heap OOB in `ResourceScatterUpdate`
Heap OOB in `ResourceScatterUpdate`
### Impact
An attacker can trigger a read from outside of bounds of heap allocated data by sending invalid arguments to `tf.raw_ops.ResourceScatterUpdate`:
```python
import tensorflow as tf
v = tf.Variable([b'vvv'])
tf.raw_ops.ResourceScatterUpdate(
resource=v.handle,
indices=[0],
updates=['1', '2', '3', '4', '5'])
```
The [implementation](https://github.com/tensorflow/tensorflow/blob/f24faa
ghsaosv
CVE-2022-23567P4MEDIUMCVSS 5.5≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-09
CVE-2022-23567 [MEDIUM] CWE-190 Integer overflows in Tensorflow
Integer overflows in Tensorflow
### Impact
The [implementations of `Sparse*Cwise*` ops](https://github.com/tensorflow/tensorflow/blob/5100e359aef5c8021f2e71c7b986420b85ce7b3d/tensorflow/core/kernels/sparse_dense_binary_op_shared.cc) are vulnerable to integer overflows. These can be used to trigger large allocations (so, OOM based denial of service) or `CHECK`-fails when building new `TensorShape` objects (so, assert failures based
ghsaosv
CVE-2022-23568P4MEDIUMCVSS 5.5≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-09
CVE-2022-23568 [MEDIUM] CWE-190 Integer overflows in Tensorflow
Integer overflows in Tensorflow
### Impact
The [implementation of `AddManySparseToTensorsMap`](https://github.com/tensorflow/tensorflow/blob/5100e359aef5c8021f2e71c7b986420b85ce7b3d/tensorflow/core/kernels/sparse_tensors_map_ops.cc) is vulnerable to an integer overflow which results in a `CHECK`-fail when building new `TensorShape` objects (so, an assert failure based denial of service):
```python
import tensorflow as tf
import nu
ghsaosv
CVE-2021-29518P4LOW≥ 0, < 2.1.4≥ 2.2.0, < 2.2.3+2 more2021-05-21
CVE-2021-29518 [LOW] CWE-476 Session operations in eager mode lead to null pointer dereferences
Session operations in eager mode lead to null pointer dereferences
### Impact
In eager mode (default in TF 2.0 and later), session operations are invalid. However, users could still call the raw ops associated with them and trigger a null pointer dereference:
```python
import tensorflow as tf
tf.raw_ops.GetSessionTensor(handle=['\x12\x1a\x07'],dtype=4)
```
```python
import tensorflow as tf
tf.raw_op
ghsaosv
CVE-2023-25661P4MEDIUM≥ 0, < 2.11.12023-03-27
CVE-2023-25661 [MEDIUM] CWE-20 TensorFlow Denial of Service vulnerability
TensorFlow Denial of Service vulnerability
### Impact
A malicious invalid input crashes a tensorflow model (Check Failed) and can be used to trigger a denial of service attack.
To minimize the bug, we built a simple single-layer TensorFlow model containing a Convolution3DTranspose layer, which works well with expected inputs and can be deployed in real-world systems. However, if we call the model with a malicious input wh
ghsaosv
CVE-2022-23569P4MEDIUMCVSS 5.5≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-09
CVE-2022-23569 [MEDIUM] CWE-617 `CHECK`-fails when building invalid tensor shapes in Tensorflow
`CHECK`-fails when building invalid tensor shapes in Tensorflow
### Impact
Multiple operations in TensorFlow can be used to trigger a denial of service via `CHECK`-fails (i.e., assertion failures). This is similar to [TFSA-2021-198](https://github.com/tensorflow/tensorflow/blob/master/tensorflow/security/advisory/tfsa-2021-198.md) (CVE-2021-41197) and has similar fixes.
### Patches
We have patched t
ghsaosv
CVE-2022-21731P4HIGH≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-10
CVE-2022-21731 [HIGH] CWE-754 Type confusion leading to segfault in Tensorflow
Type confusion leading to segfault in Tensorflow
### Impact
The [implementation of shape inference for `ConcatV2`](https://github.com/tensorflow/tensorflow/blob/5100e359aef5c8021f2e71c7b986420b85ce7b3d/tensorflow/core/framework/common_shape_fns.cc#L1961-L2059) can be used to trigger a denial of service attack via a segfault caused by a type confusion:
```python
import tensorflow as tf
@tf.function
def test():
y = t
ghsaosv
CVE-2022-21733P4MEDIUM≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-10
CVE-2022-21733 [MEDIUM] CWE-190 Memory exhaustion in Tensorflow
Memory exhaustion in Tensorflow
### Impact
The [implementation of `StringNGrams`](https://github.com/tensorflow/tensorflow/blob/5100e359aef5c8021f2e71c7b986420b85ce7b3d/tensorflow/core/kernels/string_ngrams_op.cc#L29-L161) can be used to trigger a denial of service attack by causing an OOM condition after an integer overflow:
```python
import tensorflow as tf
tf.raw_ops.StringNGrams(
data=['123456'],
data_splits=[0,1],
separator=
ghsaosv
CVE-2022-21725P4MEDIUM≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-10
CVE-2022-21725 [MEDIUM] CWE-369 Division by zero in Tensorflow
Division by zero in Tensorflow
### Impact
The [estimator for the cost of some convolution operations](https://github.com/tensorflow/tensorflow/blob/ffa202a17ab7a4a10182b746d230ea66f021fe16/tensorflow/core/grappler/costs/op_level_cost_estimator.cc#L189-L198) can be made to execute a division by 0:
```python
import tensorflow as tf
@tf.function
def test():
y=tf.raw_ops.AvgPoolGrad(
orig_input_shape=[1,1,1,1],
grad=[[[[1.0],[1.0],[1.
ghsaosv
CVE-2020-15210P4HIGH≥ 0, < 1.15.4≥ 2.0.0, < 2.0.3+3 more2020-09-25
CVE-2020-15210 [HIGH] CWE-20 Segmentation fault in tensorflow-lite
Segmentation fault in tensorflow-lite
### Impact
If a TFLite saved model uses the same tensor as both input and output of an operator, then, depending on the operator, we can observe a segmentation fault or just memory corruption.
### Patches
We have patched the issue in d58c96946b and will release patch releases for all versions between 1.15 and 2.3.
We recommend users to upgrade to TensorFlow 1.15.4, 2.0.3, 2.1.2, 2.2.1, or
ghsaosv
CVE-2022-23572P4HIGH≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-09
CVE-2022-23572 [HIGH] CWE-617 Crash when type cannot be specialized in Tensorflow
Crash when type cannot be specialized in Tensorflow
### Impact
Under certain scenarios, TensorFlow can fail to specialize a type during [shape inference](https://github.com/tensorflow/tensorflow/blob/a1320ec1eac186da1d03f033109191f715b2b130/tensorflow/core/framework/shape_inference.cc#L168-L174):
```cc
void InferenceContext::PreInputInit(
const OpDef& op_def, const std::vector& input_tensors,
const std::vector& i
ghsaosv
CVE-2022-21741P4HIGH≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-09
CVE-2022-21741 [HIGH] CWE-369 Division by zero in TFLite
Division by zero in TFLite
### Impact
An attacker can craft a TFLite model that would trigger a division by zero in [the implementation of depthwise convolutions](https://github.com/tensorflow/tensorflow/blob/5100e359aef5c8021f2e71c7b986420b85ce7b3d/tensorflow/lite/kernels/depthwise_conv.cc#L96).
The parameters of the convolution can be user controlled and are also used within a division operation to determine the size of the padding tha
ghsaosv
CVE-2022-21729P4HIGH≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-10
CVE-2022-21729 [HIGH] CWE-190 Overflow and uncaught divide by zero in Tensorflow
Overflow and uncaught divide by zero in Tensorflow
### Impact
The [implementation of `UnravelIndex`](https://github.com/tensorflow/tensorflow/blob/5100e359aef5c8021f2e71c7b986420b85ce7b3d/tensorflow/core/kernels/unravel_index_op.cc#L36-L135) is vulnerable to a division by zero caused by an integer overflow bug:
```python
import tensorflow as tf
tf.raw_ops.UnravelIndex(indices=-0x100000,dims=[0x100000,0x100000])
`
ghsaosv
CVE-2022-21738P4HIGH≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-09
CVE-2022-21738 [HIGH] CWE-190 Integer overflow leading to crash in Tensorflow
Integer overflow leading to crash in Tensorflow
### Impact
The [implementation of `SparseCountSparseOutput`](https://github.com/tensorflow/tensorflow/blob/5100e359aef5c8021f2e71c7b986420b85ce7b3d/tensorflow/core/kernels/count_ops.cc#L168-L273) can be made to crash a TensorFlow process by an integer overflow whose result is then used in a memory allocation:
```python
import tensorflow as tf
import numpy as np
tf.raw_
ghsaosv
CVE-2022-21732P4MEDIUM≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-10
CVE-2022-21732 [MEDIUM] CWE-400 Memory exhaustion in Tensorflow
Memory exhaustion in Tensorflow
### Impact
The [implementation of `ThreadPoolHandle`](https://github.com/tensorflow/tensorflow/blob/5100e359aef5c8021f2e71c7b986420b85ce7b3d/tensorflow/core/kernels/data/experimental/threadpool_dataset_op.cc#L79-L135) can be used to trigger a denial of service attack by allocating too much memory:
```python
import tensorflow as tf
y = tf.raw_ops.ThreadPoolHandle(num_threads=0x60000000,display_name='
ghsaosv
CVE-2022-23557P4HIGH≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-09
CVE-2022-23557 [HIGH] CWE-369 Division by zero in TFLite
Division by zero in TFLite
### Impact
An attacker can craft a TFLite model that would trigger a division by zero in [`BiasAndClamp` implementation](https://github.com/tensorflow/tensorflow/blob/5100e359aef5c8021f2e71c7b986420b85ce7b3d/tensorflow/lite/kernels/internal/common.h#L75):
```cc
inline void BiasAndClamp(float clamp_min, float clamp_max, int bias_size,
const float* bias_data, int array_size,
float* array_data) {
// ...
TFLITE_DCH
ghsaosv
CVE-2020-15197P4MEDIUM≥ 2.3.0, < 2.3.12020-09-25
CVE-2020-15197 [MEDIUM] CWE-20 Denial of Service in Tensorflow
Denial of Service in Tensorflow
### Impact
The `SparseCountSparseOutput` implementation does not validate that the input arguments form a valid sparse tensor. In particular, there is no validation that the `indices` tensor has rank 2. This tensor must be a matrix because code assumes its elements are accessed as elements of a matrix:
https://github.com/tensorflow/tensorflow/blob/0e68f4d3295eb0281a517c3662f6698992b7b2cf/tensorflow/co
ghsaosv
CVE-2022-23571P4HIGH≥ 0, < 2.5.3≥ 2.6.0, < 2.6.3+1 more2022-02-09
CVE-2022-23571 [HIGH] CWE-617 Reachable Assertion in Tensorflow
Reachable Assertion in Tensorflow
### Impact
When decoding a tensor from protobuf, a TensorFlow process can encounter cases where a `CHECK` assertion is invalidated based on user controlled arguments, if the tensors have an invalid `dtype` and 0 elements or an invalid shape. This allows attackers to cause denial of services in TensorFlow processes.
### Patches
We have patched the issue in GitHub commit [5b491cd5e41ad63735161cec9c2
ghsaosv