p PatchFirst

CVE-2021-41213

CVE-2021-41213 · Deadlock in mutually recursive `tf.function` objects

This page contains facts from public vulnerability sources. Check the original advisory before updating.

TensorFlow is an open source platform for machine learning. In affected versions the code behind `tf.function` API can be made to deadlock when two `tf.function` decorated Python functions are mutually recursive. This occurs due to using a non-reentrant `Lock` Python object. Loading any model which contains mutually recursive functions is vulnerable. An attacker can cause denial of service by causing users to load such models and calling a recursive `tf.function`, although this is not a frequent scenario. The fix will be included in TensorFlow 2.7.0. We will also cherrypick this commit on TensorFlow 2.6.1, TensorFlow 2.5.2, and TensorFlow 2.4.4, as these are also affected and still in supported range.

CVSS 5.5 · Medium · EPSS 0.2% · Fix available

Published
Updated

Stack: python

Affected products and versions

  • tensorflow

    Versions
    • >= 2.6.0, < 2.6.1: Affected
    • >= 2.5.0, < 2.5.2: Affected
    • < 2.4.4: Affected

    No fix published

  • tensorflow PyPI

    Versions
    • 2.6.0
    Affected ranges
    • ECOSYSTEM: ≥ 2.6.0, < 2.6.1

    Update to 2.6.1

  • tensorflow PyPI

    Versions
    • 2.5.0
    • 2.5.1
    Affected ranges
    • ECOSYSTEM: ≥ 2.5.0, < 2.5.2

    Update to 2.5.2

  • tensorflow PyPI

    Versions
    • 0.12.0
    • 0.12.1
    • 1.0.0
    • 1.0.1
    • 1.1.0
    • 1.10.0
    • 1.10.1
    • 1.11.0
    • 1.12.0
    • 1.12.2
    • 1.12.3
    • 1.13.1
    • 1.13.2
    • 1.14.0
    • 1.15.0
    • 1.15.2
    • 1.15.3
    • 1.15.4
    • 1.15.5
    • 1.2.0
    • 1.2.1
    • 1.3.0
    • 1.4.0
    • 1.4.1
    • 1.5.0
    • 1.5.1
    • 1.6.0
    • 1.7.0
    • 1.7.1
    • 1.8.0
    • 1.9.0
    • 2.0.0
    • 2.0.1
    • 2.0.2
    • 2.0.3
    • 2.0.4
    • 2.1.0
    • 2.1.1
    • 2.1.2
    • 2.1.3
    • 2.1.4
    • 2.2.0
    • 2.2.1
    • 2.2.2
    • 2.2.3
    • 2.3.0
    • 2.3.1
    • 2.3.2
    • 2.3.3
    • 2.3.4
    • 2.4.0
    • 2.4.1
    • 2.4.2
    • 2.4.3
    Affected ranges
    • ECOSYSTEM: < 2.4.4

    Update to 2.4.4

  • tensorflow-cpu PyPI

    Versions
    • 2.6.0
    Affected ranges
    • ECOSYSTEM: ≥ 2.6.0, < 2.6.1

    Update to 2.6.1

  • tensorflow-cpu PyPI

    Versions
    • 2.5.0
    • 2.5.1
    Affected ranges
    • ECOSYSTEM: ≥ 2.5.0, < 2.5.2

    Update to 2.5.2

  • tensorflow-cpu PyPI

    Versions
    • 1.15.0
    • 2.1.0
    • 2.1.1
    • 2.1.2
    • 2.1.3
    • 2.1.4
    • 2.2.0
    • 2.2.1
    • 2.2.2
    • 2.2.3
    • 2.3.0
    • 2.3.1
    • 2.3.2
    • 2.3.3
    • 2.3.4
    • 2.4.0
    • 2.4.1
    • 2.4.2
    • 2.4.3
    Affected ranges
    • ECOSYSTEM: < 2.4.4

    Update to 2.4.4

  • tensorflow-gpu PyPI

    Versions
    • 2.6.0
    Affected ranges
    • ECOSYSTEM: ≥ 2.6.0, < 2.6.1

    Update to 2.6.1

  • tensorflow-gpu PyPI

    Versions
    • 2.5.0
    • 2.5.1
    Affected ranges
    • ECOSYSTEM: ≥ 2.5.0, < 2.5.2

    Update to 2.5.2

  • tensorflow-gpu PyPI

    Versions
    • 0.12.0
    • 0.12.1
    • 1.0.0
    • 1.0.1
    • 1.1.0
    • 1.10.0
    • 1.10.1
    • 1.11.0
    • 1.12.0
    • 1.12.2
    • 1.12.3
    • 1.13.1
    • 1.13.2
    • 1.14.0
    • 1.15.0
    • 1.15.2
    • 1.15.3
    • 1.15.4
    • 1.15.5
    • 1.2.0
    • 1.2.1
    • 1.3.0
    • 1.4.0
    • 1.4.1
    • 1.5.0
    • 1.5.1
    • 1.6.0
    • 1.7.0
    • 1.7.1
    • 1.8.0
    • 1.9.0
    • 2.0.0
    • 2.0.1
    • 2.0.2
    • 2.0.3
    • 2.0.4
    • 2.1.0
    • 2.1.1
    • 2.1.2
    • 2.1.3
    • 2.1.4
    • 2.2.0
    • 2.2.1
    • 2.2.2
    • 2.2.3
    • 2.3.0
    • 2.3.1
    • 2.3.2
    • 2.3.3
    • 2.3.4
    • 2.4.0
    • 2.4.1
    • 2.4.2
    • 2.4.3
    Affected ranges
    • ECOSYSTEM: < 2.4.4

    Update to 2.4.4

  • tensorflow PyPI

    Versions
    • 0.12.0
    • 0.12.1
    • 1.0.0
    • 1.0.1
    • 1.1.0
    • 1.10.0
    • 1.10.1
    • 1.11.0
    • 1.12.0
    • 1.12.2
    • 1.12.3
    • 1.13.1
    • 1.13.2
    • 1.14.0
    • 1.15.0
    • 1.15.2
    • 1.15.3
    • 1.15.4
    • 1.15.5
    • 1.2.0
    • 1.2.1
    • 1.3.0
    • 1.4.0
    • 1.4.1
    • 1.5.0
    • 1.5.1
    • 1.6.0
    • 1.7.0
    • 1.7.1
    • 1.8.0
    • 1.9.0
    • 2.0.0
    • 2.0.1
    • 2.0.2
    • 2.0.3
    • 2.0.4
    • 2.1.0
    • 2.1.1
    • 2.1.2
    • 2.1.3
    • 2.1.4
    • 2.2.0
    • 2.2.0rc0
    • 2.2.0rc1
    • 2.2.0rc2
    • 2.2.0rc3
    • 2.2.0rc4
    • 2.2.1
    • 2.2.2
    • 2.2.3
    • 2.3.0
    • 2.3.0rc0
    • 2.3.0rc1
    • 2.3.0rc2
    • 2.3.1
    • 2.3.2
    • 2.3.3
    • 2.3.4
    • 2.4.0
    • 2.4.0rc0
    • 2.4.0rc1
    • 2.4.0rc2
    • 2.4.0rc3
    • 2.4.0rc4
    • 2.4.1
    • 2.4.2
    • 2.4.3
    • 2.5.0
    • 2.5.1
    • 2.6.0
    • 2.7.0rc0
    • 2.7.0rc1
    Affected ranges
    • GIT: < afac8158d43691661ad083f6dd9e56f327c1dcb7
    • ECOSYSTEM: < 2.4.4 ∪ ≥ 2.5.0, < 2.5.2 ∪ ≥ 2.6.0, < 2.6.1 ∪ ≥ 2.7.0rc0, < 2.7.0

    Update to 2.4.4; Update to 2.5.2; Update to 2.6.1; Update to 2.7.0

  • tensorflow-cpu PyPI

    Versions
    • 1.15.0
    • 2.1.0
    • 2.1.1
    • 2.1.2
    • 2.1.3
    • 2.1.4
    • 2.2.0
    • 2.2.1
    • 2.2.2
    • 2.2.3
    • 2.3.0
    • 2.3.1
    • 2.3.2
    • 2.3.3
    • 2.3.4
    • 2.4.0
    • 2.4.1
    • 2.4.2
    • 2.4.3
    • 2.5.0
    • 2.5.1
    • 2.6.0
    • 2.7.0rc0
    • 2.7.0rc1
    Affected ranges
    • GIT: < afac8158d43691661ad083f6dd9e56f327c1dcb7
    • ECOSYSTEM: < 2.4.4 ∪ ≥ 2.5.0, < 2.5.2 ∪ ≥ 2.6.0, < 2.6.1 ∪ ≥ 2.7.0rc0, < 2.7.0

    Update to 2.4.4; Update to 2.5.2; Update to 2.6.1; Update to 2.7.0

  • tensorflow-gpu PyPI

    Versions
    • 0.12.0
    • 0.12.1
    • 1.0.0
    • 1.0.1
    • 1.1.0
    • 1.10.0
    • 1.10.1
    • 1.11.0
    • 1.12.0
    • 1.12.2
    • 1.12.3
    • 1.13.1
    • 1.13.2
    • 1.14.0
    • 1.15.0
    • 1.15.2
    • 1.15.3
    • 1.15.4
    • 1.15.5
    • 1.2.0
    • 1.2.1
    • 1.3.0
    • 1.4.0
    • 1.4.1
    • 1.5.0
    • 1.5.1
    • 1.6.0
    • 1.7.0
    • 1.7.1
    • 1.8.0
    • 1.9.0
    • 2.0.0
    • 2.0.1
    • 2.0.2
    • 2.0.3
    • 2.0.4
    • 2.1.0
    • 2.1.1
    • 2.1.2
    • 2.1.3
    • 2.1.4
    • 2.2.0
    • 2.2.1
    • 2.2.2
    • 2.2.3
    • 2.3.0
    • 2.3.1
    • 2.3.2
    • 2.3.3
    • 2.3.4
    • 2.4.0
    • 2.4.1
    • 2.4.2
    • 2.4.3
    • 2.5.0
    • 2.5.1
    • 2.6.0
    • 2.7.0rc0
    • 2.7.0rc1
    Affected ranges
    • GIT: < afac8158d43691661ad083f6dd9e56f327c1dcb7
    • ECOSYSTEM: < 2.4.4 ∪ ≥ 2.5.0, < 2.5.2 ∪ ≥ 2.6.0, < 2.6.1 ∪ ≥ 2.7.0rc0, < 2.7.0

    Update to 2.4.4; Update to 2.5.2; Update to 2.6.1; Update to 2.7.0

Original sources

Check your server →