Security
Headlines
HeadlinesLatestCVEs

Headline

CVE-2022-35959: Fix security vulnerability with AvgPool3DGrad. · tensorflow/tensorflow@9178ac9

TensorFlow is an open source platform for machine learning. The implementation of AvgPool3DGradOp does not fully validate the input orig_input_shape. This results in an overflow that results in a CHECK failure which can be used to trigger a denial of service attack. We have patched the issue in GitHub commit 9178ac9d6389bdc54638ab913ea0e419234d14eb. The fix will be included in TensorFlow 2.10.0. We will also cherrypick this commit on TensorFlow 2.9.1, TensorFlow 2.8.1, and TensorFlow 2.7.2, as these are also affected and still in supported range. There are no known workarounds for this issue.

CVE
#vulnerability#mac#dos#git

@@ -18,6 +18,7 @@

from tensorflow.python.eager import context

from tensorflow.python.framework import constant_op

from tensorflow.python.framework import dtypes

from tensorflow.python.framework import errors

from tensorflow.python.framework import errors_impl

from tensorflow.python.framework import test_util

@@ -67,7 +68,7 @@ def _VerifyOneTest(self, pool_func, input_sizes, window, strides, padding,

# Initializes the input tensor with array containing incrementing

# numbers from 1.

x = [f * 1.0 for f in range(1, total_size + 1)]

with self.cached_session(use_gpu=use_gpu) as sess:

with self.cached_session(use_gpu=use_gpu):

t = constant_op.constant(x, shape=input_sizes)

window = [1] + list(window) + [1]

strides = [1] + list(strides) + [1]

@@ -124,6 +125,23 @@ def testAvgPool3dSamePaddingDifferentStrides(self):

padding="SAME",

expected=expected_output)

def testMaxPool3dGrad(self):

with self.assertRaises(

(errors.ResourceExhaustedError, errors.InvalidArgumentError)):

with self.cached_session():

orig_input_shape = constant_op.constant(

1879048192, shape=[5], dtype=dtypes.int32)

grad = constant_op.constant(

1, shape=[1, 3, 2, 4, 2], dtype=dtypes.float32)

t = gen_nn_ops.AvgPool3DGrad(

orig_input_shape=orig_input_shape,

grad=grad,

ksize=[1, 1, 1, 1, 1],

strides=[1, 1, 1, 1, 1],

padding="SAME",

data_format="NDHWC")

self.evaluate(t)

def testMaxPool3dValidPadding(self):

expected_output = [40.0, 41.0, 42.0]

self._VerifyValues(

Related news

GHSA-wxjj-cgcx-r3vq: TensorFlow vulnerable to `CHECK` failures in `AvgPool3DGrad`

### Impact The implementation of `AvgPool3DGradOp` does not fully validate the input `orig_input_shape`. This results in an overflow that results in a `CHECK` failure which can be used to trigger a denial of service attack: ```python import tensorflow as tf ksize = [1, 1, 1, 1, 1] strides = [1, 1, 1, 1, 1] padding = "SAME" data_format = "NDHWC" orig_input_shape = tf.constant(1879048192, shape=[5], dtype=tf.int32) grad = tf.constant(1, shape=[1,3,2,4,2], dtype=tf.float32) tf.raw_ops.AvgPool3DGrad(orig_input_shape=orig_input_shape, grad=grad, ksize=ksize, strides=strides, padding=padding, data_format=data_format) ``` ### Patches We have patched the issue in GitHub commit [9178ac9d6389bdc54638ab913ea0e419234d14eb](https://github.com/tensorflow/tensorflow/commit/9178ac9d6389bdc54638ab913ea0e419234d14eb). The fix will be included in TensorFlow 2.10.0. We will also cherrypick this commit on TensorFlow 2.9.1, TensorFlow 2.8.1, and TensorFlow 2.7.2, as these are also affected and still in ...

CVE: Latest News

CVE-2023-50976: Transactions API Authorization by oleiman · Pull Request #14969 · redpanda-data/redpanda
CVE-2023-6905
CVE-2023-6903
CVE-2023-6904
CVE-2023-3907