CVE-2022-23591: PYSEC-2026-3084 - Stack overflow in TensorFlow

CVE-2022-23591 · Severity: low · CVSS 3.1 · Published 2026-07-09

TensorFlow is an open-source machine learning library widely used to build and deploy AI models. A stack overflow vulnerability exists in how TensorFlow processes GraphDef files (the format used to represent computational graphs). An attacker who can provide a malicious SavedModel file with self-recursive function definitions can trigger a crash during model loading, causing denial of service to applications that load untrusted models.

Technologies: Google TensorFlow, tensorflow (PyPI), tensorflow-cpu (PyPI), tensorflow-gpu (PyPI). Vendors: Google, PyPI.

Quick answers

Is CVE-2022-23591 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2022-23591 being exploited in the wild.
How severe is CVE-2022-23591?
Low severity, with a CVSS score of 3.1, published 9 July 2026.
Which products and versions are affected?
Google TensorFlow before 2.5.3, 2.6.0 before 2.6.3, 2.7.0 before 2.7.1; tensorflow (PyPI) ECOSYSTEM:introduced=0,fixed=2.5.3,introduced=2.6.0,fixed=2.6.3,introduced=2.7.0,fixed=2.7.1; tensorflow-cpu (PyPI) GIT:introduced=0,fixed=448a16182065bd08a202d9057dd8ca541e67996c|ECOSYSTEM:introduced=0,fixed=2.5.3,introduced=2.6.0,fixed=2.6.3; tensorflow-gpu (PyPI) GIT:introduced=0,fixed=448a16182065bd08a202d9057dd8ca541e67996c|ECOSYSTEM:introduced=0,fixed=2.5.3,introduced=2.6.0,fixed=2.6.3.
Is there a fix for CVE-2022-23591?
Yes. tensorflow (PyPI): upgrade to 2.7.1 or later; tensorflow-cpu (PyPI): upgrade to 2.6.3 or later; tensorflow-gpu (PyPI): upgrade to 2.6.3 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2022-23591 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2022-23591?
Check whether you run Google TensorFlow, tensorflow (PyPI), tensorflow-cpu (PyPI) or one of the others listed at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • tensorflow (PyPI): upgrade to 2.7.1 or later
    pip install "tensorflow>=2.7.1"
  • tensorflow-cpu (PyPI): upgrade to 2.6.3 or later
    pip install "tensorflow-cpu>=2.6.3"
  • tensorflow-gpu (PyPI): upgrade to 2.6.3 or later
    pip install "tensorflow-gpu>=2.6.3"

Technical details

The vulnerability is a stack overflow (CWE-400, CWE-674) in TensorFlow's GraphDef parser. The issue occurs because TensorFlow's runtime assumes that GraphDef format does not contain self-recursive functions, but the parser does not enforce this invariant. An attacker can craft a SavedModel containing a self-referential function definition where a node references the containing function, causing unbounded recursion during NodeDef resolution. This can be triggered when loading a SavedModel file. The fix was released in commit 448a16182065bd08a202d9057dd8ca541e67996c and is available in TensorFlow 2.8.0 and backported to 2.7.1, 2.6.3, and 2.5.3.

Affected products

  • Google TensorFlow before 2.5.3, 2.6.0 before 2.6.3, 2.7.0 before 2.7.1
  • Google TensorFlow CPU before 2.5.3, 2.6.0 before 2.6.3, 2.7.0 before 2.7.1
  • Google TensorFlow GPU before 2.5.3, 2.6.0 before 2.6.3, 2.7.0 before 2.7.1

Identifiers

  • CVE-2022-23591
  • GHSA-247x-2f9f-5wp7
  • PYSEC-2022-100
  • PYSEC-2022-155
  • PYSEC-2026-3084

Timeline

  • 2022-02-04: disclosed: GitHub advisory published
  • 2022-02-04: patched: Fix committed in GitHub commit 448a16182065bd08a202d9057dd8ca541e67996c

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.