Skip to content
LowVulnerability

CVE-2021-29541: TensorFlow null pointer dereference in tf.raw_ops.StringNGrams

Identifier
CVE-2021-29541
Published
Record updated
View JSON
Affected
  • tensorflow < 2.1.4, fixed in 2.1.4, released June 15, 2021, 31 days after disclosure
  • tensorflow >= 2.2.0, < 2.2.3, fixed in 2.2.3, released June 15, 2021, 31 days after disclosure
  • tensorflow >= 2.3.0, < 2.3.3, fixed in 2.3.3, released June 15, 2021, 31 days after disclosure
  • and 9 more
Known exploitation
Not listed in the CISA Known Exploited Vulnerabilities catalog at the last check.
EPSS
0.2%

Summary

A null pointer dereference in `tf.raw_ops.StringNGrams` in TensorFlow lets an attacker trigger a crash. The implementation does not fully validate the `data_splits` argument, so `ngrams_data` becomes a null pointer when the computed output has zero or negative size, and later writes to the output tensor dereference it.

Mitigation

The fix will be included in TensorFlow 2.5.0. The commit will also be cherry-picked to TensorFlow 2.4.2, TensorFlow 2.3.3, TensorFlow 2.2.3 and TensorFlow 2.1.4, which are also affected and still in supported range.