Headline
CVE-2022-41897: Fix security vulnerability with FractionalMaxPoolGrad · tensorflow/tensorflow@d71090c
TensorFlow is an open source platform for machine learning. If FractionMaxPoolGrad
is given outsize inputs row_pooling_sequence
and col_pooling_sequence
, TensorFlow will crash. We have patched the issue in GitHub commit d71090c3e5ca325bdf4b02eb236cfb3ee823e927. The fix will be included in TensorFlow 2.11. We will also cherrypick this commit on TensorFlow 2.10.1, 2.9.3, and TensorFlow 2.8.4, as these are also affected and still in supported range.
@@ -632,7 +632,7 @@ def testWhenRepeatedMaxValueInPoolingRegion(self):
def testInvalidSeqRaiseErrorForFractionalMaxPoolGrad(self):
with self.assertRaises(errors.InvalidArgumentError):
with self.cached_session() as _:
with self.cached_session():
overlapping = True
orig_input = constant_op.constant(
.453409232, shape=[1, 7, 13, 1], dtype=dtypes.float32)
@@ -653,6 +653,24 @@ def testInvalidSeqRaiseErrorForFractionalMaxPoolGrad(self):
overlapping=overlapping)
self.evaluate(t)
def testOverLargeSeqRaiseErrorForFractionalMaxPoolGrad(self):
with self.assertRaises(errors.InvalidArgumentError):
with self.cached_session():
overlapping = False
orig_input = [[[[1, 1, 1, 1, 1]]]]
orig_output = [[[[1, 1, 1]]]]
out_backprop = [[[[3], [3], [6]]]]
row_pooling_sequence = [-0x4000000, 1, 1]
col_pooling_sequence = [-0x4000000, 1, 1]
t = gen_nn_ops.FractionalMaxPoolGrad(
orig_input=orig_input,
orig_output=orig_output,
out_backprop=out_backprop,
row_pooling_sequence=row_pooling_sequence,
col_pooling_sequence=col_pooling_sequence,
overlapping=overlapping)
self.evaluate(t)
if __name__ == "__main__":
test.main()
Related news
### Impact If [`FractionMaxPoolGrad`](https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/kernels/fractional_max_pool_op.cc) is given outsize inputs `row_pooling_sequence` and `col_pooling_sequence`, TensorFlow will crash. ```python import tensorflow as tf tf.raw_ops.FractionMaxPoolGrad( orig_input = [[[[1, 1, 1, 1, 1]]]], orig_output = [[[[1, 1, 1]]]], out_backprop = [[[[3], [3], [6]]]], row_pooling_sequence = [-0x4000000, 1, 1], col_pooling_sequence = [-0x4000000, 1, 1], overlapping = False ) ``` ### Patches We have patched the issue in GitHub commit [d71090c3e5ca325bdf4b02eb236cfb3ee823e927](https://github.com/tensorflow/tensorflow/commit/d71090c3e5ca325bdf4b02eb236cfb3ee823e927). The fix will be included in TensorFlow 2.11. We will also cherrypick this commit on TensorFlow 2.10.1, 2.9.3, and TensorFlow 2.8.4, as these are also affected and still in supported range. ### For more information Please consult [our security guide](https://git...