Vulnerability · Published Sep 25, 2020 · Assigned by GitHub_M
CVE-2020-15206Denial of Service in Tensorflow
Critical 9.0
In plain English
A critical-severity improper input validation in tensorflow from tensorflow. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 1.0% (higher than 62% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
In Tensorflow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, changing the TensorFlow's `SavedModel` protocol buffer and altering the name of required keys results in segfaults and data corruption while loading the model. This can cause a denial of service in products using `tensorflow-serving` or other inference-as-a-service installments. Fixed were added in commits f760f88b4267d981e13f4b302c437ae800445968 and fcfef195637c6e365577829c4d67681695956e7d (both going into TensorFlow 2.2.0 and 2.3.0 but not yet backported to earlier versions). However, this was not enough, as #41097 reports a different failure mode. The issue is patched in commit adf095206f25471e864a8e63a0f1caef53a0e3a6, and is released in TensorFlow versions 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| PyPI | tensorflow | 2.1.2 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow | 2.2.1 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow | 2.3.1 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow | 1.15.4 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow | 1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 | PYSEC-2020-129 |
| PyPI | tensorflow | 2.0.3 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow-cpu | 2.3.1 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow-cpu | 1.15.4 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow-cpu | 2.0.3 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow-cpu | 2.1.2 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow-cpu | 2.2.1 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow-cpu | 1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 | PYSEC-2020-286 |
| PyPI | tensorflow-gpu | 2.1.2 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow-gpu | 2.2.1 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow-gpu | 2.3.1 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow-gpu | 1.15.4 | GHSA-w5gh-2wr2-pm6g |
| PyPI | tensorflow-gpu | 1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 | PYSEC-2020-321 |
| PyPI | tensorflow-gpu | 2.0.3 | GHSA-w5gh-2wr2-pm6g |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| tensorflow | tensorflow | < 1.15.4>= 2.0.0, < 2.0.3>= 2.1.0, < 2.1.2>= 2.2.0, < 2.2.1>= 2.3.0, < 2.3.1 |
Weakness: CWE-20 · Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H
References
- https://github.com/tensorflow/tensorflow/releases/tag/v2.3.1 x_refsource_MISC
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-w5gh-2wr2-pm6g x_refsource_CONFIRM
- https://github.com/tensorflow/tensorflow/commit/adf095206f25471e864a8e63a0f1caef53a0e3a6 x_refsource_MISC
- openSUSE-SU-2020:1766 vendor-advisory, x_refsource_SUSE