CVE-2022-23578
MEDIUM4.3EPSS 0.20%Memory leak in Tensorflow
Description
### Impact If a graph node is invalid, TensorFlow can leak memory in the [implementation of `ImmutableExecutorState::Initialize`](https://github.com/tensorflow/tensorflow/blob/a1320ec1eac186da1d03f033109191f715b2b130/tensorflow/core/common_runtime/immutable_executor_state.cc#L84-L262): ```cc Status s = params_.create_kernel(n->properties(), &item->kernel); if (!s.ok()) { item->kernel = nullptr; s = AttachDef(s, *n); return s; } ``` Here, we set `item->kernel` to `nullptr` but it is a simple `OpKernel*` pointer so the memory that was previously allocated to it would leak. ### Patches We have patched the issue in GitHub commit [c79ccba517dbb1a0ccb9b01ee3bd2a63748b60dd](https://github.com/tensorflow/tensorflow/commit/c79ccba517dbb1a0ccb9b01ee3bd2a63748b60dd). The fix will be included in TensorFlow 2.8.0. We will also cherrypick this commit on TensorFlow 2.7.1, TensorFlow 2.6.3, and TensorFlow 2.5.3, as these are also affected and still in supported range. ### For more information Please consult [our security guide](https://github.com/tensorflow/tensorflow/blob/master/SECURITY.md) for more information regarding the security model and how to contact us with issues and questions.
Affected packages (6)
- Bitnami/tensorflowfrom 0, < 2.5.3, >= 2.6.0, < 2.6.3, >= 2.7.0, < 2.7.1
- PyPI/tensorflowfrom 0, < 2.5.3
- PyPI/tensorflow-cpufrom 0, < 2.5.3
- PyPI/tensorflow-cpufrom 0, < c79ccba517dbb1a0ccb9b01ee3bd2a63748b60dd | from 0, < 2.5.3, >= 2.6.0, < 2.6.3
- PyPI/tensorflow-gpufrom 0, < 2.5.3
- PyPI/tensorflow-gpufrom 0, < c79ccba517dbb1a0ccb9b01ee3bd2a63748b60dd | from 0, < 2.5.3, >= 2.6.0, < 2.6.3
CVSS scores
| Source | Version | Severity | Vector |
|---|---|---|---|
| osv | CVSS 4.0 | — | CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N |
| osv | CVSS 3.1 | MEDIUM4.3 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L |
References (7)
- ADVISORYhttps://nvd.nist.gov/vuln/detail/CVE-2022-23578
- WEBhttps://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2022-87.yaml
- WEBhttps://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2022-142.yaml
- WEBhttps://github.com/tensorflow/tensorflow
- WEBhttps://github.com/tensorflow/tensorflow/blob/a1320ec1eac186da1d03f033109191f715b2b130/tensorflow/core/common_runtime/immutable_executor_state.cc#L84-L262
- WEBhttps://github.com/tensorflow/tensorflow/commit/c79ccba517dbb1a0ccb9b01ee3bd2a63748b60dd
- WEBhttps://github.com/tensorflow/tensorflow/security/advisories/GHSA-8r7c-3cm2-3h8f