Skip to content
HighVulnerability

CVE-2021-37651: TensorFlow out-of-bounds read in tf.raw_ops.FractionalAvgPoolGrad

Identifier
CVE-2021-37651
Published
Record updated
View JSON
Affected
  • tensorflow < 2.3.4, fixed in 2.3.4, released August 10, 2021, 3 days before disclosure
  • tensorflow >= 2.4.0, < 2.4.3, fixed in 2.4.3, released August 10, 2021, 3 days before disclosure
  • tensorflow = 2.5.0, fixed in 2.5.1, released August 10, 2021, 3 days before disclosure
  • and 6 more
Known exploitation
Not listed in the CISA Known Exploited Vulnerabilities catalog at the last check.
EPSS
0.2%

Summary

TensorFlow's implementation of tf.raw_ops.FractionalAvgPoolGrad in affected versions can be made to read data outside the bounds of heap-allocated buffers. The cause is that the code does not check whether the input tensor is non-empty, so it builds an empty EigenDoubleMatrixMap and then indexes past its end.

Mitigation

Patched in GitHub commit 0f931751fb20f565c4e94aa6df58d54a003cdb30. The fix will be included in TensorFlow 2.6.0, and the commit will be cherry-picked to TensorFlow 2.5.1, TensorFlow 2.4.3 and TensorFlow 2.3.4.