Skip to content
HighVulnerability

CVE-2022-23591: Tensorflow GraphDef self recursive functions cause stack overflow

Identifier
CVE-2022-23591
Published
Record updated
View JSON
Affected
  • tensorflow < 2.5.3, fixed in 2.5.3, released February 2, 2022, 3 days before disclosure
  • tensorflow >= 2.6.0, < 2.6.3, fixed in 2.6.3, released February 2, 2022, 3 days before disclosure
  • tensorflow = 2.7.0, fixed in 2.7.1, released February 2, 2022, 3 days before disclosure
  • and 6 more
Known exploitation
Not listed in the CISA Known Exploited Vulnerabilities catalog at the last check.
EPSS
0.8%

Summary

CVE-2022-23591 affects TensorFlow's `GraphDef` format, which should not allow self-recursive functions but does not enforce this, and the runtime assumes the invariant holds. A crafted `GraphDef` fragment loaded through a `SavedModel` can trigger a stack overflow during execution, because resolving each `NodeDef` requires resolving the function and its nodes again.

Mitigation

The fix will be included in TensorFlow 2.8.0. The same commit will be cherry-picked to TensorFlow 2.7.1, 2.6.3 and 2.5.3, which are also affected and still within the supported range.