Skip to content

Int overflow in `RaggedRangeOp`

Low
pak-laura published GHSA-x989-q2pq-4q5x Sep 15, 2022

Package

pip tensorflow, tensorflow-cpu, tensorflow-gpu (pip)

Affected versions

< 2.10.0

Patched versions

2.7.4, 2.8.3, 2.9.2, 2.10.0

Description

Impact

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.

import tensorflow as tf
tf.raw_ops.RaggedRange(starts=[1.1,0.1],limits=[10.0,1e20],deltas=[1,1])

Patches

We have patched the issue in GitHub commit 37cefa91bee4eace55715eeef43720b958a01192.

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.

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 Jingyi Shi.

Severity

Low

CVE ID

CVE-2022-35940

Weaknesses

No CWEs