Security
Headlines
HeadlinesLatestCVEs

Headline

GHSA-mw6j-hh29-h379: `CHECK` failure in depthwise ops via overflows

Impact

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 another instance of TFSA-2021-198 (CVE-2021-41197).

Patches

We have patched the issue in GitHub commit 3796cc4fcd93ae55812a457abc96dcd55fbb854b.

The fix will be included in TensorFlow 2.9.0. We will also cherrypick this commit on TensorFlow 2.8.1, TensorFlow 2.7.2, and TensorFlow 2.6.4, as these are also affected and still in supported range.

For more information

Please consult our security guide for more information regarding the security model and how to contact us with issues and questions.

Attribution

This vulnerability has been reported by Neophytos Christou from Secure Systems Lab at Brown University.

ghsa
#vulnerability#dos#git
  1. GitHub Advisory Database
  2. GitHub Reviewed
  3. GHSA-mw6j-hh29-h379

`CHECK` failure in depthwise ops via overflows

Moderate severity GitHub Reviewed Published May 25, 2022 in tensorflow/tensorflow • Updated May 25, 2022

We are still processing this advisory. You may have affected repositories that are not yet on this list. Check back soon for more.

Package

pip tensorflow (pip )

Affected versions

< 2.6.4

>= 2.7.0, < 2.7.2

>= 2.8.0, < 2.8.1

Patched versions

2.6.4

2.7.2

2.8.1

Package

pip tensorflow-cpu (pip )

Affected versions

< 2.6.4

>= 2.7.0, < 2.7.2

>= 2.8.0, < 2.8.1

Patched versions

2.6.4

2.7.2

2.8.1

Package

pip tensorflow-gpu (pip )

Affected versions

< 2.6.4

>= 2.7.0, < 2.7.2

>= 2.8.0, < 2.8.1

Patched versions

2.6.4

2.7.2

2.8.1

Impact

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 another instance of TFSA-2021-198 (CVE-2021-41197).

Patches

We have patched the issue in GitHub commit 3796cc4fcd93ae55812a457abc96dcd55fbb854b.

The fix will be included in TensorFlow 2.9.0. We will also cherrypick this commit on TensorFlow 2.8.1, TensorFlow 2.7.2, and TensorFlow 2.6.4, as these are also affected and still in supported range.

For more information

Please consult our security guide for more information regarding the security model and how to contact us with issues and questions.

Attribution

This vulnerability has been reported by Neophytos Christou from Secure Systems Lab at Brown University.

References

  • GHSA-mw6j-hh29-h379
  • tensorflow/tensorflow@3796cc4
  • https://github.com/tensorflow/tensorflow/blob/master/tensorflow/security/advisory/tfsa-2021-198.md

ghsa: Latest News

GHSA-v5h2-q2w4-gpcx: Sentry improper error handling leaks Application Integration Client Secret