PT-2021-18320 · Google · Tensorflow
Yakun Zhang
+1
·
Published
2021-05-14
·
Updated
2024-03-06
·
CVE-2021-29569
CVSS v3.1
7.1
High
| Vector | AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H |
Name of the Vulnerable Software and Affected Versions
TensorFlow versions prior to 2.5.0
TensorFlow versions 2.4.2 and earlier
TensorFlow versions 2.3.3 and earlier
TensorFlow versions 2.2.3 and earlier
TensorFlow versions 2.1.4 and earlier
Description
The implementation of
tf.raw ops.MaxPoolGradWithArgmax can cause reads outside of bounds of heap allocated data if an attacker supplies specially crafted inputs. This occurs because the implementation assumes that the input min and input max tensors have at least one element. If the tensors are empty, accessing even the 0th element is a read outside the bounds.Recommendations
For TensorFlow versions prior to 2.5.0, update to version 2.5.0 or later.
For TensorFlow versions 2.4.2 and earlier, update to version 2.4.2 or later.
For TensorFlow versions 2.3.3 and earlier, update to version 2.3.3 or later.
For TensorFlow versions 2.2.3 and earlier, update to version 2.2.3 or later.
For TensorFlow versions 2.1.4 and earlier, update to version 2.1.4 or later.
As a temporary workaround, consider validating the
input min and input max tensors to ensure they are not empty before passing them to tf.raw ops.MaxPoolGradWithArgmax.Exploit
Fix
Out of bounds Read
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Tensorflow