tensorflow@2.7.1 vulnerabilities

TensorFlow is an open source machine learning framework for everyone.

Direct Vulnerabilities

Known vulnerabilities in the tensorflow package. This does not include vulnerabilities belonging to this package’s dependencies.

Automatically find and fix vulnerabilities affecting your projects. Snyk scans for vulnerabilities and provides fixes for free.
Fix for free
Vulnerability Vulnerable Version
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to a malicious invalid input with zero dimension, which crashes a TensorFlow model (Check Failed).

Note: An attacker must have privilege to provide input to a Convolution3DTranspose call.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.11.1 or higher.

[,2.11.1)
  • H
Heap-based Buffer Overflow

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Heap-based Buffer Overflow. Attackers can access heap memory which is not in the control of user, leading to a crash or remote code execution. The fix will be included in TensorFlow version 2.12.0 and will also cherrypick this commit on TensorFlow version 2.11.1.

How to fix Heap-based Buffer Overflow?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference when SparseSparseMaximum is given invalid sparse tensors as inputs.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) 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.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference due to a null pointer error in RandomShuffle with XLA enabled.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to a floating point exception in TensorListSplit with XLA.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference. The function tf.raw_ops.LookupTableImportV2 cannot handle scalars in the values parameter and gives a null pointer exception.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Incorrect Comparison

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Incorrect Comparison. Constructing a tflite model with a paramater filter_input_channel of less than 1 gives a float pointer exception.

How to fix Incorrect Comparison?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS). When running with XLA, tf.raw_ops.Bincount segfaults when given a parameter weights that is neither the same shape as parameter arr nor a length-0 tensor.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Buffer Overflow

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Buffer Overflow in TAvgPoolGrad.

How to fix Buffer Overflow?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Integer Overflow to Buffer Overflow

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Integer Overflow to Buffer Overflow when 2^31 <= num_frames * height * width * channels < 2^32, for example Full HD screencast of at least 346 frames.

How to fix Integer Overflow to Buffer Overflow?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Integer Overflow or Wraparound

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Integer Overflow or Wraparound in EditDistance. A fix is included in TensorFlow version 2.12.0 and version 2.11.1.

How to fix Integer Overflow or Wraparound?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Out-of-Bounds

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-Bounds due to mismatched integer type sizes in ValueMap::Manager::GetValueOrCreatePlaceholder, because there is a bug with the tfg-translate call to InitMlir.

How to fix Out-of-Bounds?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to a floating point exception if the stride and window size are not positive for tf.raw_ops.AvgPoolGrad.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference. When ctx->step_containter() is a null ptr, the Lookup function will be executed with a null pointer.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS). When the parameter summarize of tf.raw_ops.Print is zero, the new method SummarizeArray<bool> will reference to a nullptr, leading to a seg fault.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Double Free

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Double Free. The nn_ops.fractional_avg_pool_v2 and nn_ops.fractional_max_pool_v2 functions require the first and fourth elements of their parameter pooling_ratio to be equal to 1.0, as pooling on batch and channel dimensions is not supported.

How to fix Double Free?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • M
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference in QuantizedMatMulWithBiasAndDequantize with MKL enabled.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to a floating point exception in AudioSpectrogram.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Out-of-bounds Read

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-bounds Read if the parameter indices for DynamicStitch does not match the shape of the parameter data.

How to fix Out-of-bounds Read?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • H
Out-of-bounds Read

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-bounds Read in GRUBlockCellGrad.

How to fix Out-of-bounds Read?

Upgrade tensorflow to version 2.11.1, 2.12.0 or higher.

[,2.11.1) [2.12.0rc0,2.12.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to another discovered instance of CVE-2022-35991, in TensorListScatter and TensorListScatterV2 via non scalar inputs.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1)
  • H
Heap-based Buffer Overflow

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Heap-based Buffer Overflow in QuantizeAndDequantizeV2, via the MakeGrapplerFunctionItem function, if the inputs are greater than or equal to the sizes of outputs.

How to fix Heap-based Buffer Overflow?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1)
  • H
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to another discovered instance of CVE-2022-35935 in SobolSample via assumed scalar inputs.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1)
  • H
Out-of-bounds Write

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-bounds Write via the MakeGrapplerFunctionItem function, if the inputs given are greater than or equal to the sizes of the outputs.

How to fix Out-of-bounds Write?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1)
  • M
Out-of-Bounds

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-Bounds in DynamicStitch due to missing validation when it receives a differing number of inputs, such as when it is called with an indices size 1 and a data size 2.

How to fix Out-of-Bounds?

Upgrade tensorflow to version 2.10.1, 2.11.0 or higher.

[,2.10.1) [2.11.0rc0,2.11.0)
  • L
Always-Incorrect Control Flow Implementation

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Always-Incorrect Control Flow Implementation when a numpy array is created with a shape such that one element is zero and the sum of others is a large number.

How to fix Always-Incorrect Control Flow Implementation?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Buffer Overflow

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Buffer Overflow via tf.raw_ops.ImageProjectiveTransformV2 when a large output shape is given.

How to fix Buffer Overflow?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • M
Incorrect Calculation of Buffer Size

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Incorrect Calculation of Buffer Size via tf.keras.losses.poisson which receives a y_pred and y_true that are passed through functor::mul in BinaryOp. If the resulting dimensions overflow an int32, TensorFlow will crash due to a size mismatch during broadcast assignment.

How to fix Incorrect Calculation of Buffer Size?

Upgrade tensorflow to version 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • M
Out-of-bounds Read

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-bounds Read when the BaseCandidateSamplerOp function receives a value in true_classes larger than range_max.

How to fix Out-of-bounds Read?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Buffer Overflow

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Buffer Overflow via tf.raw_ops.FusedResizeAndPadConv2D when a large tensor shape is given.

How to fix Buffer Overflow?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Incorrect Calculation of Buffer Size

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Incorrect Calculation of Buffer Size when tf.raw_ops.ResizeNearestNeighborGrad is given a large size input.

How to fix Incorrect Calculation of Buffer Size?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Improper Input Validation

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Improper Input Validation due to a missing check of tf.image.generate_bounding_box_proposals that receives a scores input that must be of rank 4 when running on GPU.

How to fix Improper Input Validation?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) because the conversions from char to bool are undefined if the char is not 0 or 1. This can happen when printing a tensor: the data is got as a const char* array and then it is typecasted to the element type.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when ThreadUnsafeUnigramCandidateSampler is given input filterbank_channel_count greater than the allowed max size.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Reachable Assertion

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Reachable Assertion when tf.raw_ops.TensorListResize is given a nonscalar value for input size. It will results in a CHECK fail which can be used to trigger a denial of service attack.

How to fix Reachable Assertion?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Out-of-bounds Read

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-bounds Read. This is If MirrorPadGrad is given outsize input paddings.

How to fix Out-of-bounds Read?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when FractionMaxPoolGrad is given outsize inputs row_pooling_sequence and col_pooling_sequence.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when tf.raw_ops.TensorListConcat is given element_shape=[].

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when BCast::ToShape is given input larger than an int32, even if it is being supposed to handle up to an int64.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference because the pywrap code fails to parse the tensor and returns a nullptr if a list of quantized tensors is assigned to an attribute.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • M
Buffer Overflow

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Buffer Overflow. The reference kernel of the CONV_3D_TRANSPOSE TensorFlow Lite operator wrongly increments the data_ptr when adding the bias to the result. Instead of data_ptr += num_channels; it should be data_ptr += output_num_channels; as if the number of input channels is different than the number of output channels, the wrong result will be returned and a buffer overflow will occur if num_channels > output_num_channels. An attacker can craft a model with a specific number of input channels. It is then possible to write specific values through the bias of the layer outside the bounds of the buffer.

Note: This attack only works if the reference kernel resolver is used in the interpreter.

How to fix Buffer Overflow?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when an input encoded is not a valid CompositeTensorVariant tensor. This will trigger a segfault in tf.raw_ops.CompositeTensorVariantToComponents.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS). This is vulnerable when an input token that is not a UTF-8 bytestring will trigger a CHECK fail in tf.raw_ops.PyFunc.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • H
Out-of-bounds Write

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-bounds Write in FractionalMax(AVG)Pool with illegal pooling_ratio. Attackers can access heap memory that is not in the user's control, leading to a crash or remote code execution.

How to fix Out-of-bounds Write?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when SparseFillEmptyRowsGrad is given empty inputs.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when the input sparse_matrix is not a matrix with a shape with rank 0. As a result, a CHECK fail will be triggered in tf.raw_ops.SparseMatrixNNZ.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • L
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS). This is due to the inputs dense_features or example_state_data not being of rank 2 which will trigger a CHECK fail in SdcaOptimizer.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.4, 2.9.3, 2.10.1, 2.11.0 or higher.

[,2.8.4) [2.9.0,2.9.3) [2.10.0,2.10.1) [2.11.0rc0,2.11.0)
  • H
Out-of-bounds Read

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-bounds Read via the GatherNd function, when the given inputs to the function are greater than or equal to the sizes of the outputs.

How to fix Out-of-bounds Read?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference when mlir::tfg::ConvertGenericFunctionToFunctionDef is given empty function attributes.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when FakeQuantWithMinMaxVarsPerChannel is given min or max tensors of a rank other than one, it results in a CHECK fail that can be used to trigger the exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when mlir::tfg::GraphDefImporter::ConvertNodeDef tries to convert NodeDefs without an op name.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when RandomPoissonV2 receives large input shapes and rates, it gives a CHECK fail that can trigger the exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when tf.sparse.cross receives an input separator that is not a scalar, it gives a CHECK fail that can be used to trigger exploitation of this vulnerability.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when Conv2DBackpropInput receives empty out_backprop inputs (e.g. [3, 1, 0, 1]).

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when AudioSummaryV2 receives an input sample_rate with more than one element, it gives a CHECK fails that can be used to trigger the exploitation of the vulnerability.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when tensorflow::full_type::SubstituteFromAttrs receives a FullTypeDef& t that is not exactly three args.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when tf.quantization.fake_quant_with_min_max_vars_gradient receives input min or max that is nonscalar, it gives a CHECK fail that can trigger the exploitation of this vulnerability.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when QuantizeAndDequantizeV3 is given a nonscalar num_bits input tensor, it results in a CHECK fail that can be used to trigger the exploitation of this vulnerability.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) in tf.reshape due to a CHECK-failure caused by overflowing the number of elements in a tensor.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • H
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when tf.random.gamma receives large input shapes and rates.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • H
Out-of-bounds Write

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-bounds Write via the scatter_nd function in TF Lite, when an input index is greater than the output tensor or less than zero.

How to fix Out-of-bounds Write?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • H
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) via CHECK-failure caused by assuming input(0), input(1), and input(2) to be scalar.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • H
Out-of-bounds Read

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-bounds Read. The GatherNd function takes arguments that determine the sizes of inputs and outputs. If the inputs given are greater than or equal to the sizes of the outputs, it triggers the exploitation of the vulnerability.

How to fix Out-of-bounds Read?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when the AvgPoolOp function takes an argument ksize that must be positive but is not checked. A negative ksize can trigger a CHECK failure and crash the program.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when RaggedTensorToVariant is given a rt_nested_splits list that contains tensors of ranks other than one, it results in a CHECK fail that can be used to trigger the exploitation of this vulnerability.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when 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 the exploitation of this vulnerability.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when SparseBincount is given inputs for indices, values, and dense_shape that do not make a valid sparse tensor, it results in a segfault that can be used to trigger exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when LRNGrad is given an output_image input tensor that is not 4-D.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when the FractionalMaxPoolGrad function validates its inputs with CHECK failures instead of returning errors. If it gets incorrectly sized inputs, the CHECK failure can be used to trigger exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when Save or SaveSlices is run over tensors of an unsupported dtype, it results in a CHECK fail that can be used to trigger exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when tf.linalg.matrix_rank receives an empty input a, the GPU kernel gives a CHECK fail that can be used to trigger exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when tf.quantization.fake_quant_with_min_max_vars_per_channel_gradient receives input min or max of rank other than 1, it gives a CHECK fail that can trigger exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when QuantizedRelu or QuantizedRelu6 are given nonscalar inputs for min_features or max_features, it results in a segfault that can be used to trigger exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when the implementation of Conv2DBackpropInput requires input_sizes to be 4-dimensional. Otherwise, it gives a CHECK failure which can be used to trigger exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) 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 exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Improper Input Validation

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Improper Input Validation due to improper validation of orig_input_shape in AvgPoolGrad.

How to fix Improper Input Validation?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference when LowerBound or UpperBound is given an empty sorted_inputs input.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when 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 exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when QuantizeDownAndShrinkRange is given nonscalar inputs for input_min or input_max, it results in a segfault that can be used to trigger an exploitation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when RaggedBincount is given an empty input tensor splits, it results in a segfault that can be used to trigger the exploitation of this vulnerability.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when TensorListScatter and TensorListScatterV2 receive an element_shape of a rank greater than one, they give a CHECK fail that can trigger the exploitation of the vulnerability.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when TensorListFromTensor receives an element_shape of a rank greater than one.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when the FakeQuantWithMinMaxVars function is given min or max tensors of a nonzero rank.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Integer Overflow or Wraparound

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Integer Overflow or Wraparound. The RaggedRangOp function takes an argument limits that is eventually used to construct a TensorShape as an int64. If limits is a very large float, it can overflow when converted to an int64. This triggers an InvalidArgument but also throws an abort signal that crashes the program.

How to fix Integer Overflow or Wraparound?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when QuantizedInstanceNorm is given x_min or x_max tensors of a nonzero rank.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when CollectiveGather receives a scalar input input, which results in a CHECK failure.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when Unbatch receives a nonscalar input id, it results in a CHECK fail.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when QuantizedAdd is given min_input or max_input tensors of a nonzero rank.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to improper input validation of orig_input_tensor_shape in FractionalAvgPoolGrad.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to improper input validation of orig_input_shape in AvgPool3DGradOp.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when QuantizedMatMul is given nonscalar input for min_a, max_a, min_b, and max_b.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when QuantizedAvgPool is given min_input or max_input tensors of a nonzero rank.

import tensorflow as tf

ksize = [1, 2, 2, 1]
strides = [1, 2, 2, 1]
padding = "SAME"
input = tf.constant(1, shape=[1,4,4,2], dtype=tf.quint8)
min_input = tf.constant([], shape=[0], dtype=tf.float32)
max_input = tf.constant(0, shape=[1], dtype=tf.float32)
tf.raw_ops.QuantizedAvgPool(input=input, min_input=min_input, max_input=max_input, ksize=ksize, strides=strides, padding=padding)

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when a nonscalar id is provided to the UnbatchGradOp function, and batch_index is incorrect.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to improper input validation in BlockLSTMGradV2.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when QuantizedBiasAdd is given min_input, max_input, min_bias, max_bias tensors of a nonzero rank, it results in a segfault.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to a CHECK failure in TensorListReserve via missing validation. Exploiting this vulnerability is possible when a num_elements of more than 1 element is provided, then tf.raw_ops.TensorListReserve fails the CHECK_EQ in CheckIsAlignedAndSingleElement.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to a CHECK fail in SetSize, when SetSize receives an input set_shape that is not a 1D tensor.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to a CHECK fail in EmptyTensorList when it receives an input element_shape with more than one dimension.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference when Eig can be fed an incorrect Tout input, resulting in a CHECK fail that can trigger a denial of service attack.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Improper Input Validation

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Improper Input Validation when converting transposed convolutions using per-channel weight quantization, the converter segfaults and crashes the Python process.

How to fix Improper Input Validation?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference through mlir::tfg::TFOp::nameAttr, when it receives null type list attributes.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Improper Input Validation

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Improper Input Validation when Requantize is given input_min, input_max, requested_output_min, requested_output_max tensors of a nonzero rank, it results in a segfault that can be used to trigger a denial of service attack.

How to fix Improper Input Validation?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Division by zero

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Division by zero when Conv2D is given empty input and the filter and padding sizes are valid, the output is all-zeros.

How to fix Division by zero?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) when providing an empty function attributes to mlir::tfg::ConvertGenericFunctionToFunctionDef.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • L
Integer Overflow or Wraparound

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Integer Overflow or Wraparound when RangeSize function receives values that do not fit into an int64_t.

How to fix Integer Overflow or Wraparound?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • L
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to a CHECK failure when DrawBoundingBoxes receives an input boxes that are not of dtype float.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.7.2, 2.8.1, 2.9.1 or higher.

[,2.7.2) [2.8.0,2.8.1) [2.9.0,2.9.1)
  • H
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS). The implementation of depthwise ops in TensorFlow is vulnerable to a denial of service via CHECK-failure (assertion failure) caused by overflowing the number of elements in a tensor:

import tensorflow as tf

input = tf.constant(1, shape=[1, 4, 4, 3], dtype=tf.float32)
filter_sizes = tf.constant(1879048192, shape=[13], dtype=tf.int32)
out_backprop = tf.constant(1, shape=[1, 4, 4, 3], dtype=tf.float32)
tf.raw_ops.DepthwiseConv2dNativeBackpropFilter(
    input=input, filter_sizes=filter_sizes, out_backprop=out_backprop, strides=[1, 1, 1, 1], padding="SAME")

This is due to an incomplete fix for CVE-2021-41197.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.8.1, 2.7.2, 2.6.4 or higher.

[2.8.0,2.8.1) [2.7.0,2.7.2) [,2.6.4)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) via the implementation of tf.histogram_fixed_width, when the values array contains Not a Number (NaN) elements. The implementation assumes that all floating-point operations are defined and then converts a floating-point result to an integer index. If values contains NaN then the result of the division is still NaN and the cast to int32 would result in a crash.

Note: This only occurs on the CPU implementation.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Improper Input Validation

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Improper Input Validation because the implementation of tf.raw_ops.QuantizedConv2D does not fully validate the input arguments. In this case, references get bound to nullptr for each argument that is empty.

How to fix Improper Input Validation?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • H
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference when the resource handle is empty.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS). Certain TFLite models that were created using the TFLite model converter would crash when loaded in the TFLite interpreter. During quantization, the scale of values could be greater than 1 but the code always assumes sub-unit scaling. Thus, since the code was calling QuantizeMultiplierSmallerThanOneExp, the TFLITE_CHECK_LT assertion would trigger and abort the process.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • H
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) because the implementation of tf.raw_ops.StagePeek does not fully validate the input arguments, assuming that the index argument is a scalar when accessing its value.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS). The implementation of tf.raw_ops.UnsortedSegmentJoin does not fully validate the input arguments. This results in a CHECK-failure which can be used to trigger a denial of service attack. The code assumes num_segments is a positive scalar but there is no validation. Since this value is used to allocate the output tensor, a negative value would result in a CHECK-failure (assertion failure), as per TFSA-2021-198.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to the implementation of `tf.ragged.constant not fully validating the input arguments.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Type Confusion

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Type Confusion because the macros used for writing assertions (e.g., CHECK_LT, CHECK_GT, etc.) have incorrect logic when comparing size_t and int values. Due to type conversion rules, several of the macros would be triggered incorrectly.

How to fix Type Confusion?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
NULL Pointer Dereference

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to NULL Pointer Dereference when calling tf.compat.v1.* ops which don't have support for quantized types.

How to fix NULL Pointer Dereference?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Integer Overflow or Wraparound

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Integer Overflow or Wraparound due to the improper implementation of tf.raw_ops.SpaceToBatchND which can result in a CHECK-failure.

How to fix Integer Overflow or Wraparound?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Improper Input Validation

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Improper Input Validation because the implementation of tf.raw_ops.SparseTensorDenseAdd does not fully validate the input arguments. In this case, a reference gets bound to a nullptr during kernel execution which is an undefined behavior.

How to fix Improper Input Validation?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • H
Out-of-bounds Write

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Out-of-bounds Write because the implementation of tf.raw_ops.EditDistance have an incomplete validation which allows users to pass negative values for loc.

How to fix Out-of-bounds Write?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to improper input validation under certain condition in tf.compat.v1.signal.rfft2d and tf.compat.v1.signal.rfft3d, results in CHECK failures.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) where the implementation of tf.raw_ops.DeleteSessionTensor does not fully validate the input arguments.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • H
Remote Code Execution (RCE)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Remote Code Execution (RCE) due to improper fix of CVE-2021-41228. Exploiting this vulnerability is possible via the saved_model_cli tool and can be abused to open a reverse shell.

How to fix Remote Code Execution (RCE)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to the implementation of tf.raw_ops.Conv3DBackpropFilterV2 which does not fully validate that filter_sizes argument is a vector.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to the implementation of tf.raw_ops.SparseTensorToCSRSparseMatrix which does not fully validate the input arguments. It assumes that dense_shape is a vector and indices is a matrix (as part of requirements for sparse tensors) without validating it.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to the implementation of tf.raw_ops.UnsortedSegmentJoin which does not fully validate the input arguments, assuming num_segments is a scalar without validating this before accessing its value.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) due to the implementation of tf.raw_ops.LoadAndRemapMatrix which does not fully validate the input arguments, assuming initializing_values is a vector without validating it before accessing its value.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) where the implementation of tf.raw_ops.LSTMBlockCell does not fully validate the input arguments. The code does not validate the ranks of any of the arguments to this API call. This results in CHECK-failures when the elements of the tensor are accessed.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) where the implementation of tf.raw_ops.TensorSummaryV2 does not fully validate the input arguments.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) where the implementation of tf.raw_ops.DeleteSessionTensor does not fully validate the input arguments.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) where the implementation of tf.raw_ops.GetSessionTensor does not fully validate the input arguments. This results in a CHECK-failure which can be used to trigger a denial of service attack. Versions 2.9.0, 2.8.1, 2.7.2, and 2.6.4 contain a patch for this issue.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • M
Denial of Service (DoS)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Denial of Service (DoS) where the implementation of tf.raw_ops.QuantizeAndDequantizeV4Grad does not fully validate the input arguments, which could result in a CHECK failure.

How to fix Denial of Service (DoS)?

Upgrade tensorflow to version 2.6.4, 2.7.2, 2.8.1, 2.9.0 or higher.

[,2.6.4) [2.7.0,2.7.2) [2.8.0,2.8.1) [2.9.0rc0,2.9.0)
  • C
Arbitrary File Write via Archive Extraction (Zip Slip)

tensorflow is a machine learning framework.

Affected versions of this package are vulnerable to Arbitrary File Write via Archive Extraction (Zip Slip) via a crafted archive when tf.keras.utils.get_file is used with extract=True.

NOTE: This CVE is disputed as the vendor's position is that tf.keras.utils.get_file is not intended for untrusted archives. However, we feel this advisory is relevant as at the time of publication, there is no known security notice or documentation warning users of this behavior.

UPDATE: With the addition of a clear warning to the API documentation on Feb 23, 2023, this issue is considered fixed.

How to fix Arbitrary File Write via Archive Extraction (Zip Slip)?

Upgrade tensorflow to version 2.12.0rc1 or higher.

[,2.12.0rc1)