p PatchFirst

PatchFirst · Latest vulnerabilities

tensorflow-gpu vulnerabilities · Page 13

Vulnerabilities published for tensorflow-gpu in the last 30 days: 0. Listed in the KEV catalogue: 0.

Filter vulnerabilities
Clear filters

Vulnerabilities: 427

  1. CVE-2021-37688

    High · CVSS 7.8EPSS 0.17%Fix available

    Null pointer dereference in TensorFlow Lite

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions an attacker can craft a TFLite model that would trigger a null pointer dereference, which would result in a crash and denial of service. The [implementation](https://github.com/tensorflow/tensorflow/blob/149562d49faa709ea80df1d99fc41d005b81082a/tensorflow/lite/kernels/internal/optimized/optimized_ops.h#L268-L285) unconditionally dereferences a pointer. We have patched the issue in GitHub commit 15691e456c7dc9bd6be203b09765b063bf4a380c. The fix will be included in TensorFlow 2.6.0. We will also cherrypick this commit on TensorFlow 2.5.1, TensorFlow 2.4.

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  2. CVE-2021-37686

    Medium · CVSS 5.5EPSS 0.17%Fix available

    Infinite loop in TensorFlow Lite

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions the strided slice implementation in TFLite has a logic bug which can allow an attacker to trigger an infinite loop. This arises from newly introduced support for [ellipsis in axis definition](https://github.com/tensorflow/tensorflow/blob/149562d49faa709ea80df1d99fc41d005b81082a/tensorflow/lite/kernels/strided_slice.cc#L103-L122). An attacker can craft a model such that `ellipsis_end_idx` is smaller than `i` (e.g., always negative). In this case, the inner loop does not increase `i` and the `continue` statement causes execution to skip over the preincre

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.6.0rc2
    Published Updated
  3. CVE-2021-37680

    Medium · CVSS 5.5EPSS 0.15%Fix available

    Division by zero in TFLite in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions the implementation of fully connected layers in TFLite is [vulnerable to a division by zero error](https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/lite/kernels/fully_connected.cc#L226). We have patched the issue in GitHub commit 718721986aa137691ee23f03638867151f74935f. The fix will be included in TensorFlow 2.6.0. We will also cherrypick this commit on TensorFlow 2.5.1, TensorFlow 2.4.3, and TensorFlow 2.3.4, as these are also affected and still in supported range.

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  4. CVE-2021-37675

    Medium · CVSS 5.5EPSS 0.16%Fix available

    Division by 0 in most convolution operators in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions most implementations of convolution operators in TensorFlow are affected by a division by 0 vulnerability where an attacker can trigger a denial of service via a crash. The shape inference [implementation](https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/core/framework/common_shape_fns.cc#L577) is missing several validations before doing divisions and modulo operations. We have patched the issue in GitHub commit 8a793b5d7f59e37ac7f3cd0954a750a2fe76bad4. The fix will be included in TensorFlow 2.6.0. We wi

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  5. CVE-2021-37676

    High · CVSS 7.8EPSS 0.17%Fix available

    Reference binding to nullptr in shape inference in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions an attacker can cause undefined behavior via binding a reference to null pointer in `tf.raw_ops.SparseFillEmptyRows`. The shape inference [implementation](https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/core/ops/sparse_ops.cc#L608-L634) does not validate that the input arguments are not empty tensors. We have patched the issue in GitHub commit 578e634b4f1c1c684d4b4294f9e5281b2133b3ed. The fix will be included in TensorFlow 2.6.0. We will also cherrypick this commit on TensorFlow 2.5.1, TensorFlow 2.4.3,

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  6. CVE-2021-37671

    High · CVSS 7.8EPSS 0.17%Fix available

    Reference binding to nullptr in map operations in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions an attacker can cause undefined behavior via binding a reference to null pointer in `tf.raw_ops.Map*` and `tf.raw_ops.OrderedMap*` operations. The [implementation](https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/core/kernels/map_stage_op.cc#L222-L248) has a check in place to ensure that `indices` is in ascending order, but does not check that `indices` is not empty. We have patched the issue in GitHub commit 532f5c5a547126c634fefd43bbad1dc6417678ac. The fix will be included in TensorFlow 2.6.0. We will

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  7. CVE-2021-37666

    High · CVSS 7.8EPSS 0.17%Fix available

    Reference binding to nullptr in `RaggedTensorToVariant` in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions an attacker can cause undefined behavior via binding a reference to null pointer in `tf.raw_ops.RaggedTensorToVariant`. The [implementation](https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/core/kernels/ragged_tensor_to_variant_op.cc#L129) has an incomplete validation of the splits values, missing the case when the argument would be empty. We have patched the issue in GitHub commit be7a4de6adfbd303ce08be4332554dff70362612. The fix will be included in TensorFlow 2.6.0. We will also cherrypick this commit

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  8. CVE-2021-37667

    High · CVSS 7.8EPSS 0.17%Fix available

    Reference binding to nullptr in unicode encoding in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions an attacker can cause undefined behavior via binding a reference to null pointer in `tf.raw_ops.UnicodeEncode`. The [implementation](https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/core/kernels/unicode_ops.cc#L533-L539) reads the first dimension of the `input_splits` tensor before validating that this tensor is not empty. We have patched the issue in GitHub commit 2e0ee46f1a47675152d3d865797a18358881d7a6. The fix will be included in TensorFlow 2.6.0. We will also cherrypick this commit on TensorFlow 2.5

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  9. CVE-2021-37648

    High · CVSS 7.8EPSS 0.19%Fix available

    Incorrect validation of `SaveV2` inputs in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions the code for `tf.raw_ops.SaveV2` does not properly validate the inputs and an attacker can trigger a null pointer dereference. The [implementation](https://github.com/tensorflow/tensorflow/blob/8d72537c6abf5a44103b57b9c2e22c14f5f49698/tensorflow/core/kernels/save_restore_v2_ops.cc) uses `ValidateInputs` to check that the input arguments are valid. This validation would have caught the illegal state represented by the reproducer above. However, the validation uses `OP_REQUIRES` which translates to setting the `Status` object of the current `OpKernelCont

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  10. CVE-2021-37652

    High · CVSS 7.8EPSS 0.17%Fix available

    Use after free in boosted trees creation in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions the implementation for `tf.raw_ops.BoostedTreesCreateEnsemble` can result in a use after free error if an attacker supplies specially crafted arguments. The [implementation](https://github.com/tensorflow/tensorflow/blob/f24faa153ad31a4b51578f8181d3aaab77a1ddeb/tensorflow/core/kernels/boosted_trees/resource_ops.cc#L55) uses a reference counted resource and decrements the refcount if the initialization fails, as it should. However, when the code was written, the resource was represented as a naked pointer but later refactoring has changed it to be a smar

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  11. CVE-2021-37646

    Medium · CVSS 5.5EPSS 0.15%Fix available

    Bad alloc in `StringNGrams` caused by integer conversion in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions the implementation of `tf.raw_ops.StringNGrams` is vulnerable to an integer overflow issue caused by converting a signed integer value to an unsigned one and then allocating memory based on this value. The [implementation](https://github.com/tensorflow/tensorflow/blob/8d72537c6abf5a44103b57b9c2e22c14f5f49698/tensorflow/core/kernels/string_ngrams_op.cc#L184) calls `reserve` on a `tstring` with a value that sometimes can be negative if user supplies negative `ngram_widths`. The `reserve` method calls `TF_TString_Reserve` which has an `unsigned long` argu

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  12. CVE-2021-37661

    Medium · CVSS 5.5EPSS 0.15%Fix available

    Crash caused by integer conversion to unsigned in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions an attacker can cause a denial of service in `boosted_trees_create_quantile_stream_resource` by using negative arguments. The [implementation](https://github.com/tensorflow/tensorflow/blob/84d053187cb80d975ef2b9684d4b61981bca0c41/tensorflow/core/kernels/boosted_trees/quantile_ops.cc#L96) does not validate that `num_streams` only contains non-negative numbers. In turn, [this results in using this value to allocate memory](https://github.com/tensorflow/tensorflow/blob/84d053187cb80d975ef2b9684d4b61981bca0c41/tensorflow/core/kernels/boosted_trees/quantile

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  13. CVE-2021-37645

    Medium · CVSS 5.5EPSS 0.15%Fix available

    Integer overflow due to conversion to unsigned in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions the implementation of `tf.raw_ops.QuantizeAndDequantizeV4Grad` is vulnerable to an integer overflow issue caused by converting a signed integer value to an unsigned one and then allocating memory based on this value. The [implementation](https://github.com/tensorflow/tensorflow/blob/8d72537c6abf5a44103b57b9c2e22c14f5f49698/tensorflow/core/kernels/quantize_and_dequantize_op.cc#L126) uses the `axis` value as the size argument to `absl::InlinedVector` constructor. But, the constructor uses an unsigned type for the argument, so the implicit conversion tran

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  14. CVE-2021-37651

    High · CVSS 7.1EPSS 0.17%Fix available

    Heap buffer overflow in `FractionalAvgPoolGrad` in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions the implementation for `tf.raw_ops.FractionalAvgPoolGrad` can be tricked into accessing data outside of bounds of heap allocated buffers. The [implementation](https://github.com/tensorflow/tensorflow/blob/f24faa153ad31a4b51578f8181d3aaab77a1ddeb/tensorflow/core/kernels/fractional_avg_pool_op.cc#L205) does not validate that the input tensor is non-empty. Thus, code constructs an empty `EigenDoubleMatrixMap` and then accesses this buffer with indices that are outside of the empty area. We have patched the issue in GitHub commit 0f931751fb20f565c4e94aa6df

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  15. CVE-2021-37650

    High · CVSS 7.8EPSS 0.18%Fix available

    Segfault and heap buffer overflow in `{Experimental,}DatasetToTFRecord` in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions the implementation for `tf.raw_ops.ExperimentalDatasetToTFRecord` and `tf.raw_ops.DatasetToTFRecord` can trigger heap buffer overflow and segmentation fault. The [implementation](https://github.com/tensorflow/tensorflow/blob/f24faa153ad31a4b51578f8181d3aaab77a1ddeb/tensorflow/core/kernels/data/experimental/to_tf_record_op.cc#L93-L102) assumes that all records in the dataset are of string type. However, there is no check for that, and the example given above uses numeric types. We have patched the issue in GitHub commit e0b6e58c328059829c3eb968136f17aa7

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  16. CVE-2021-37662

    High · CVSS 7.1EPSS 0.19%Fix available

    Reference binding to nullptr in boosted trees in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions an attacker can generate undefined behavior via a reference binding to nullptr in `BoostedTreesCalculateBestGainsPerFeature` and similar attack can occur in `BoostedTreesCalculateBestFeatureSplitV2`. The [implementation](https://github.com/tensorflow/tensorflow/blob/84d053187cb80d975ef2b9684d4b61981bca0c41/tensorflow/core/kernels/boosted_trees/stats_ops.cc) does not validate the input values. We have patched the issue in GitHub commit 9c87c32c710d0b5b53dc6fd3bfde4046e1f7a5ad and in commit 429f009d2b2c09028647dd4bb7b3f6f414bbaad7. The fix will be includ

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  17. CVE-2021-37656

    High · CVSS 7.1EPSS 0.17%Fix available

    Reference binding to nullptr in `RaggedTensorToSparse` in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions an attacker can cause undefined behavior via binding a reference to null pointer in `tf.raw_ops.RaggedTensorToSparse`. The [implementation](https://github.com/tensorflow/tensorflow/blob/f24faa153ad31a4b51578f8181d3aaab77a1ddeb/tensorflow/core/kernels/ragged_tensor_to_sparse_kernel.cc#L30) has an incomplete validation of the splits values: it does not check that they are in increasing order. We have patched the issue in GitHub commit 1071f554dbd09f7e101324d366eec5f4fe5a3ece. The fix will be included in TensorFlow 2.6.0. We will also cherrypick this comm

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  18. CVE-2021-37657

    High · CVSS 7.1EPSS 0.17%Fix available

    Reference binding to nullptr in `MatrixDiagV*` ops in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions an attacker can cause undefined behavior via binding a reference to null pointer in all operations of type `tf.raw_ops.MatrixDiagV*`. The [implementation](https://github.com/tensorflow/tensorflow/blob/84d053187cb80d975ef2b9684d4b61981bca0c41/tensorflow/core/kernels/linalg/matrix_diag_op.cc) has incomplete validation that the value of `k` is a valid tensor. We have check that this value is either a scalar or a vector, but there is no check for the number of elements. If this is an empty tensor, then code that accesses the first element of the tensor is

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  19. CVE-2021-37658

    High · CVSS 7.1EPSS 0.17%Fix available

    Reference binding to nullptr in `MatrixSetDiagV*` ops in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions an attacker can cause undefined behavior via binding a reference to null pointer in all operations of type `tf.raw_ops.MatrixSetDiagV*`. The [implementation](https://github.com/tensorflow/tensorflow/blob/84d053187cb80d975ef2b9684d4b61981bca0c41/tensorflow/core/kernels/linalg/matrix_diag_op.cc) has incomplete validation that the value of `k` is a valid tensor. We have check that this value is either a scalar or a vector, but there is no check for the number of elements. If this is an empty tensor, then code that accesses the first element of the tensor

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated
  20. CVE-2021-37644

    Medium · CVSS 5.5EPSS 0.15%Fix available

    `std::abort` raised from `TensorListReserve` in TensorFlow

    TensorFlow is an end-to-end open source platform for machine learning. In affected versions providing a negative element to `num_elements` list argument of `tf.raw_ops.TensorListReserve` causes the runtime to abort the process due to reallocating a `std::vector` to have a negative number of elements. The [implementation](https://github.com/tensorflow/tensorflow/blob/8d72537c6abf5a44103b57b9c2e22c14f5f49698/tensorflow/core/kernels/list_kernels.cc#L312) calls `std::vector.resize()` with the new size controlled by input given by the user, without checking that this input is valid. We have patched the issue in GitHub commit 8a6e874437670045e6c7dc

    • Update to 2.3.4
    • Update to 2.4.3
    • Update to 2.5.1
    Published Updated

Check your server

Check your installed stack and versions against the current vulnerability feeds.

Check your server →