Description
Tensorflow is an Open Source Machine Learning Framework. In multiple places, TensorFlow uses `tempfile.mktemp` to create temporary files. While this is acceptable in testing, in utilities and libraries it is dangerous as a different process can create the file between the check for the filename in `mktemp` and the actual creation of the file by a subsequent operation (a TOC/TOU type of weakness). In several instances, TensorFlow was supposed to actually create a temporary directory instead of a file. This logic bug is hidden away by the `mktemp` function usage. We have patched the issue in several commits, replacing `mktemp` with the safer `mkstemp`/`mkdtemp` functions, according to the usage pattern. Users are advised to upgrade as soon as possible.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| tensorflow | tensorflow | >= 2.7.0, < 2.7.1, >= 2.6.0, < 2.6.3, < 2.5.3 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| PyPI | tensorflow | < 2.5.3 | 2.5.3 | GHSA-wc4g-r73w-x8mm |
| PyPI | tensorflow | >= 2.6.0, < 2.6.3 | 2.6.3 | GHSA-wc4g-r73w-x8mm |
| PyPI | tensorflow | >= 2.7.0, < 2.7.1 | 2.7.1 | GHSA-wc4g-r73w-x8mm |
| PyPI | tensorflow | < 2.5.3 · >= 2.6.0, < 2.6.3 · >= 2.7.0, < 2.7.1 | 2.5.3, 2.6.3, 2.7.1 | PYSEC-2026-3253 |
| PyPI | tensorflow-cpu | < 2.5.3 | 2.5.3 | GHSA-wc4g-r73w-x8mm |
| PyPI | tensorflow-cpu | >= 2.6.0, < 2.6.3 | 2.6.3 | GHSA-wc4g-r73w-x8mm |
| PyPI | tensorflow-cpu | >= 2.7.0, < 2.7.1 | 2.7.1 | GHSA-wc4g-r73w-x8mm |
| PyPI | tensorflow-cpu | < 2.5.3 · >= 2.6.0, < 2.6.3 | 2.5.3, 2.6.3 | PYSEC-2022-72 |
| PyPI | tensorflow-gpu | < 2.5.3 | 2.5.3 | GHSA-wc4g-r73w-x8mm |
| PyPI | tensorflow-gpu | >= 2.6.0, < 2.6.3 | 2.6.3 | GHSA-wc4g-r73w-x8mm |
| PyPI | tensorflow-gpu | >= 2.7.0, < 2.7.1 | 2.7.1 | GHSA-wc4g-r73w-x8mm |
| PyPI | tensorflow-gpu | < 2.5.3 · >= 2.6.0, < 2.6.3 | 2.5.3, 2.6.3 | PYSEC-2022-127 |