Lucene search

K

Tensorflow Security Vulnerabilities

cve
cve

CVE-2018-10055

Invalid memory access and/or a heap buffer overflow in the TensorFlow XLA compiler in Google TensorFlow before 1.7.1 could cause a crash or read from other parts of process memory via a crafted configuration file.

8.1CVSS

7.9AI Score

0.001EPSS

2019-04-24 05:29 PM
48
cve
cve

CVE-2018-21233

TensorFlow before 1.7.0 has an integer overflow that causes an out-of-bounds read, possibly causing disclosure of the contents of process memory. This occurs in the DecodeBmp feature of the BMP decoder in core/kernels/decode_bmp_op.cc.

6.5CVSS

6.4AI Score

0.001EPSS

2020-05-04 03:15 PM
49
cve
cve

CVE-2018-7575

Google TensorFlow 1.7.x and earlier is affected by a Buffer Overflow vulnerability. The type of exploitation is context-dependent.

9.8CVSS

9.3AI Score

0.001EPSS

2019-04-24 09:29 PM
52
cve
cve

CVE-2018-7576

Google TensorFlow 1.6.x and earlier is affected by: Null Pointer Dereference. The type of exploitation is: context-dependent.

6.5CVSS

6.3AI Score

0.001EPSS

2019-04-23 09:29 PM
45
cve
cve

CVE-2018-7577

Memcpy parameter overlap in Google Snappy library 1.1.4, as used in Google TensorFlow before 1.7.1, could result in a crash or read from other parts of process memory.

8.1CVSS

7.7AI Score

0.001EPSS

2019-04-24 05:29 PM
55
cve
cve

CVE-2018-8825

Google TensorFlow 1.7 and below is affected by: Buffer Overflow. The impact is: execute arbitrary code (local).

8.8CVSS

8.9AI Score

0.002EPSS

2019-04-23 09:29 PM
52
cve
cve

CVE-2019-16778

In TensorFlow before 1.15, a heap buffer overflow in UnsortedSegmentSum can be produced when the Index template argument is int32. In this case data_size and num_segments fields are truncated from int64 to int32 and can produce negative numbers, resulting in accessing out of bounds heap memory. Thi...

9.8CVSS

9.6AI Score

0.002EPSS

2019-12-16 09:15 PM
67
2
cve
cve

CVE-2019-9635

NULL pointer dereference in Google TensorFlow before 1.12.2 could cause a denial of service via an invalid GIF file.

6.5CVSS

6.1AI Score

0.001EPSS

2019-04-24 05:29 PM
54
cve
cve

CVE-2020-15190

In Tensorflow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, the tf.raw_ops.Switch operation takes as input a tensor and a boolean and outputs two tensors. Depending on the boolean value, one of the tensors is exactly the input tensor whereas the other one should be an empty tensor. However...

5.3CVSS

5.2AI Score

0.002EPSS

2020-09-25 07:15 PM
139
3
cve
cve

CVE-2020-15191

In Tensorflow before versions 2.2.1 and 2.3.1, if a user passes an invalid argument to dlpack.to_dlpack the expected validations will cause variables to bind to nullptr while setting a status variable to the error condition. However, this status argument is not properly checked. Hence, code followi...

5.3CVSS

5.3AI Score

0.002EPSS

2020-09-25 07:15 PM
134
cve
cve

CVE-2020-15192

In Tensorflow before versions 2.2.1 and 2.3.1, if a user passes a list of strings to dlpack.to_dlpack there is a memory leak following an expected validation failure. The issue occurs because the status argument during validation failures is not properly checked. Since each of the above methods can...

4.3CVSS

4.4AI Score

0.002EPSS

2020-09-25 07:15 PM
132
cve
cve

CVE-2020-15193

In Tensorflow before versions 2.2.1 and 2.3.1, the implementation of dlpack.to_dlpack can be made to use uninitialized memory resulting in further memory corruption. This is because the pybind11 glue code assumes that the argument is a tensor. However, there is nothing stopping users from passing i...

7.1CVSS

6.7AI Score

0.002EPSS

2020-09-25 07:15 PM
124
cve
cve

CVE-2020-15194

In Tensorflow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, the SparseFillEmptyRowsGrad implementation has incomplete validation of the shapes of its arguments. Although reverse_index_map_t and grad_values_t are accessed in a similar pattern, only reverse_index_map_t is validated to be of ...

5.3CVSS

5.2AI Score

0.002EPSS

2020-09-25 07:15 PM
134
2
cve
cve

CVE-2020-15195

In Tensorflow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, the implementation of SparseFillEmptyRowsGrad uses a double indexing pattern. It is possible for reverse_index_map(i) to be an index outside of bounds of grad_values, thus resulting in a heap buffer overflow. The issue is patched ...

8.8CVSS

8.5AI Score

0.005EPSS

2020-09-25 07:15 PM
134
2
cve
cve

CVE-2020-15196

In Tensorflow version 2.3.0, the SparseCountSparseOutput and RaggedCountSparseOutput implementations don't validate that the weights tensor has the same shape as the data. The check exists for DenseCountSparseOutput, where both tensors are fully specified. In the sparse and ragged count weights are...

9.9CVSS

9.2AI Score

0.002EPSS

2020-09-25 07:15 PM
52
cve
cve

CVE-2020-15197

In Tensorflow before version 2.3.1, 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...

6.3CVSS

6.2AI Score

0.002EPSS

2020-09-25 07:15 PM
51
cve
cve

CVE-2020-15198

In Tensorflow before version 2.3.1, 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 the same shape as the values one. The values in these tensors are always accessed i...

5.4CVSS

5.3AI Score

0.001EPSS

2020-09-25 07:15 PM
50
cve
cve

CVE-2020-15199

In Tensorflow before version 2.3.1, the RaggedCountSparseOutput does not validate that the input arguments form a valid ragged tensor. In particular, there is no validation that the splits tensor has the minimum required number of elements. Code uses this quantity to initialize a different data str...

5.9CVSS

5.7AI Score

0.002EPSS

2020-09-25 07:15 PM
50
cve
cve

CVE-2020-15200

In Tensorflow before version 2.3.1, the RaggedCountSparseOutput implementation does not validate that the input arguments form a valid ragged tensor. In particular, there is no validation that the values in the splits tensor generate a valid partitioning of the values tensor. Thus, the code sets up...

5.9CVSS

5.9AI Score

0.003EPSS

2020-09-25 07:15 PM
53
cve
cve

CVE-2020-15201

In Tensorflow before version 2.3.1, the RaggedCountSparseOutput implementation does not validate that the input arguments form a valid ragged tensor. In particular, there is no validation that the values in the splits tensor generate a valid partitioning of the values tensor. Hence, the code is pro...

4.8CVSS

5.2AI Score

0.001EPSS

2020-09-25 07:15 PM
51
cve
cve

CVE-2020-15202

In Tensorflow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, the Shard API in TensorFlow expects the last argument to be a function taking two int64 (i.e., long long) arguments. However, there are several places in TensorFlow where a lambda taking int or int32 arguments is being used. In th...

9CVSS

8.7AI Score

0.003EPSS

2020-09-25 07:15 PM
144
2
cve
cve

CVE-2020-15203

In Tensorflow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, by controlling the fill argument of tf.strings.as_string, a malicious attacker is able to trigger a format string vulnerability due to the way the internal format use in a printf call is constructed. This may result in segmentatio...

7.5CVSS

7.2AI Score

0.003EPSS

2020-09-25 07:15 PM
145
cve
cve

CVE-2020-15204

In eager mode, TensorFlow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1 does not set the session state. Hence, calling tf.raw_ops.GetSessionHandle or tf.raw_ops.GetSessionHandleV2 results in a null pointer dereference In linked snippet, in eager mode, ctx->session_state() returns nullptr...

5.3CVSS

5.4AI Score

0.001EPSS

2020-09-25 07:15 PM
139
2
cve
cve

CVE-2020-15205

In Tensorflow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, the data_splits argument of tf.raw_ops.StringNGrams lacks validation. This allows a user to pass values that can cause heap overflow errors and even leak contents of memory In the linked code snippet, all the binary strings after ...

9.8CVSS

9.2AI Score

0.002EPSS

2020-09-25 07:15 PM
143
2
cve
cve

CVE-2020-15206

In Tensorflow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, changing the TensorFlow's SavedModel protocol buffer and altering the name of required keys results in segfaults and data corruption while loading the model. This can cause a denial of service in products using tensorflow-serving ...

9CVSS

7.5AI Score

0.003EPSS

2020-09-25 07:15 PM
136
2
cve
cve

CVE-2020-15207

In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, to mimic Python's indexing with negative values, TFLite uses ResolveAxis to convert negative values to positive indices. However, the only check that the converted index is now valid is only present in debug builds. If the DC...

9CVSS

8.9AI Score

0.003EPSS

2020-09-25 07:15 PM
148
2
cve
cve

CVE-2020-15208

In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, when determining the common dimension size of two tensors, TFLite uses a DCHECK which is no-op outside of debug compilation modes. Since the function always returns the dimension of the first tensor, malicious attackers can c...

9.8CVSS

9.1AI Score

0.002EPSS

2020-09-25 07:15 PM
136
cve
cve

CVE-2020-15209

In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, a crafted TFLite model can force a node to have as input a tensor backed by a nullptr buffer. This can be achieved by changing a buffer index in the flatbuffer serialization to convert a read-only tensor to a read-write one. ...

5.9CVSS

6.3AI Score

0.002EPSS

2020-09-25 07:15 PM
148
2
cve
cve

CVE-2020-15210

In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, 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. We have patched the issue in d58c96946b and...

6.5CVSS

6.4AI Score

0.002EPSS

2020-09-25 07:15 PM
140
2
cve
cve

CVE-2020-15211

In TensorFlow Lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, saved models in the flatbuffer format use a double indexing scheme: a model has a set of subgraphs, each subgraph has a set of operators and each operator has a set of input/output tensors. The flatbuffer format uses indices ...

4.8CVSS

5.2AI Score

0.002EPSS

2020-09-25 07:15 PM
153
2
cve
cve

CVE-2020-15212

In TensorFlow Lite before versions 2.2.1 and 2.3.1, models using segment sum can trigger writes outside of bounds of heap allocated buffers by inserting negative elements in the segment ids tensor. Users having access to segment_ids_data can alter output_index and then write to outside of output_da...

8.6CVSS

8.4AI Score

0.003EPSS

2020-09-25 07:15 PM
58
cve
cve

CVE-2020-15213

In TensorFlow Lite before versions 2.2.1 and 2.3.1, models using segment sum can trigger a denial of service by causing an out of memory allocation in the implementation of segment sum. Since code uses the last element of the tensor holding them to determine the dimensionality of output tensor, att...

4CVSS

4.2AI Score

0.001EPSS

2020-09-25 07:15 PM
56
cve
cve

CVE-2020-15214

In TensorFlow Lite before versions 2.2.1 and 2.3.1, models using segment sum can trigger a write out bounds / segmentation fault if the segment ids are not sorted. Code assumes that the segment ids are in increasing order, using the last element of the tensor holding them to determine the dimension...

8.1CVSS

7.7AI Score

0.003EPSS

2020-09-25 07:15 PM
56
cve
cve

CVE-2020-15265

In Tensorflow before version 2.4.0, an attacker can pass an invalid axis value to tf.quantization.quantize_and_dequantize. This results in accessing a dimension outside the rank of the input tensor in the C++ kernel implementation. However, dim_size only does a DCHECK to validate the argument and t...

7.5CVSS

7AI Score

0.002EPSS

2020-10-21 09:15 PM
63
cve
cve

CVE-2020-15266

In Tensorflow before version 2.4.0, when the boxes argument of tf.image.crop_and_resize has a very large value, the CPU kernel implementation receives it as a C++ nan floating point value. Attempting to operate on this is undefined behavior which later produces a segmentation fault. The issue is pa...

7.5CVSS

7AI Score

0.002EPSS

2020-10-21 09:15 PM
67
cve
cve

CVE-2020-26266

In affected versions of TensorFlow under certain cases a saved model can trigger use of uninitialized values during code execution. This is caused by having tensor buffers be filled with the default value of the type but forgetting to default initialize the quantized floating point types in Eigen. ...

5.3CVSS

5.5AI Score

0.001EPSS

2020-12-10 11:15 PM
117
cve
cve

CVE-2020-26267

In affected versions of TensorFlow the tf.raw_ops.DataFormatVecPermute API does not validate the src_format and dst_format attributes. The code assumes that these two arguments define a permutation of NHWC. This can result in uninitialized memory accesses, read outside of bounds and even crashes. T...

7.8CVSS

7.5AI Score

0.0005EPSS

2020-12-10 11:15 PM
59
2
cve
cve

CVE-2020-26268

In affected versions of TensorFlow the tf.raw_ops.ImmutableConst operation returns a constant tensor created from a memory mapped file which is assumed immutable. However, if the type of the tensor is not an integral type, the operation crashes the Python interpreter as it tries to write to the mem...

4.4CVSS

4.8AI Score

0.0004EPSS

2020-12-10 11:15 PM
104
cve
cve

CVE-2020-26269

In TensorFlow release candidate versions 2.4.0rc*, the general implementation for matching filesystem paths to globbing pattern is vulnerable to an access out of bounds of the array holding the directories. There are multiple invariants and preconditions that are assumed by the parallel implementat...

7.5CVSS

7.3AI Score

0.001EPSS

2020-12-10 11:15 PM
29
cve
cve

CVE-2020-26270

In affected versions of TensorFlow running an LSTM/GRU model where the LSTM/GRU layer receives an input with zero-length results in a CHECK failure when using the CUDA backend. This can result in a query-of-death vulnerability, via denial of service, if users can control the input to the layer. Thi...

4.4CVSS

3.9AI Score

0.0004EPSS

2020-12-10 11:15 PM
55
cve
cve

CVE-2020-26271

In affected versions of TensorFlow under certain cases, loading a saved model can result in accessing uninitialized memory while building the computation graph. The MakeEdge function creates an edge between one output tensor of the src node (given by output_index) and the input slot of the dst node...

4.4CVSS

3.8AI Score

0.0004EPSS

2020-12-10 10:15 PM
44
cve
cve

CVE-2020-5215

In TensorFlow before 1.15.2 and 2.0.1, converting a string (from Python) to a tf.float16 value results in a segmentation fault in eager mode as the format checks for this use case are only in the graph mode. This issue can lead to denial of service in inference/training where a malicious attacker c...

7.5CVSS

7.1AI Score

0.004EPSS

2020-01-28 10:15 PM
117
2
cve
cve

CVE-2021-29512

TensorFlow is an end-to-end open source platform for machine learning. If the splits argument of RaggedBincount does not specify a valid SparseTensor(https://www.tensorflow.org/api_docs/python/tf/sparse/SparseTensor), then an attacker can trigger a heap buffer overflow. This will cause a read from ...

7.8CVSS

7.5AI Score

0.0005EPSS

2021-05-14 07:15 PM
44
7
cve
cve

CVE-2021-29513

TensorFlow is an end-to-end open source platform for machine learning. Calling TF operations with tensors of non-numeric types when the operations expect numeric tensors result in null pointer dereferences. The conversion from Python array to C++ array(https://github.com/tensorflow/tensorflow/blob/...

7.8CVSS

7.4AI Score

0.0005EPSS

2021-05-14 08:15 PM
158
5
cve
cve

CVE-2021-29514

TensorFlow is an end-to-end open source platform for machine learning. If the splits argument of RaggedBincount does not specify a valid SparseTensor(https://www.tensorflow.org/api_docs/python/tf/sparse/SparseTensor), then an attacker can trigger a heap buffer overflow. This will cause a read from ...

7.8CVSS

7.5AI Score

0.0005EPSS

2021-05-14 08:15 PM
63
4
cve
cve

CVE-2021-29515

TensorFlow is an end-to-end open source platform for machine learning. The implementation of MatrixDiag* operations(https://github.com/tensorflow/tensorflow/blob/4c4f420e68f1cfaf8f4b6e8e3eb857e9e4c3ff33/tensorflow/core/kernels/linalg/matrix_diag_op.cc#L195-L197) does not validate that the tensor ar...

7.8CVSS

7.5AI Score

0.0005EPSS

2021-05-14 08:15 PM
62
4
cve
cve

CVE-2021-29516

TensorFlow is an end-to-end open source platform for machine learning. Calling tf.raw_ops.RaggedTensorToVariant with arguments specifying an invalid ragged tensor results in a null pointer dereference. The implementation of RaggedTensorToVariant operations(https://github.com/tensorflow/tensorflow/b...

5.5CVSS

5.6AI Score

0.0004EPSS

2021-05-14 08:15 PM
58
4
cve
cve

CVE-2021-29517

TensorFlow is an end-to-end open source platform for machine learning. A malicious user could trigger a division by 0 in Conv3D implementation. The implementation(https://github.com/tensorflow/tensorflow/blob/42033603003965bffac51ae171b51801565e002d/tensorflow/core/kernels/conv_ops_3d.cc#L143-L145)...

5.5CVSS

5.5AI Score

0.0004EPSS

2021-05-14 08:15 PM
62
4
cve
cve

CVE-2021-29518

TensorFlow is an end-to-end open source platform for machine learning. 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. The implementation(https://github.com/tensorfl...

7.8CVSS

7.5AI Score

0.0005EPSS

2021-05-14 08:15 PM
66
5
cve
cve

CVE-2021-29519

TensorFlow is an end-to-end open source platform for machine learning. The API of tf.raw_ops.SparseCross allows combinations which would result in a CHECK-failure and denial of service. This is because the implementation(https://github.com/tensorflow/tensorflow/blob/3d782b7d47b1bf2ed32bd4a246d6d6ca...

5.5CVSS

5.5AI Score

0.0004EPSS

2021-05-14 08:15 PM
163
4
Total number of security vulnerabilities428