CVE-2021-29601
Description
TensorFlow is an end-to-end open source platform for machine learning. The TFLite implementation of concatenation is vulnerable to an integer overflow issue(https://github.com/tensorflow/tensorflow/blob/7b7352a724b690b11bfaae2cd54bc3907daf6285/tensorflow/lite/kernels/concatenation.cc#L70-L76). An attacker can craft a model such that the dimensions of one of the concatenation input overflow the values of `int`. TFLite uses `int` to represent tensor dimensions, whereas TF uses `int64`. Hence, valid TF models can trigger an integer overflow when converted to TFLite format. The fix will be included in TensorFlow 2.5.0. We will also cherrypick this commit on TensorFlow 2.4.2, TensorFlow 2.3.3, TensorFlow 2.2.3 and TensorFlow 2.1.4, as these are also affected and still in supported range.
Predictions
Heuristic predictions, AS-IS, for prioritization only.
Mitigations
Vendor advisory: debian — https://security-tracker.debian.org/tracker/CVE-2021-29601
OS impact
| OS | Version | Status | Fixed in |
|---|---|---|---|
| arch | fixed | 2.5.0-1 | |
| debian | forky | fixed | 0 |
| debian | sid | fixed | 0 |
Package impact
| Ecosystem | Package | Vulnerable | Fixed |
|---|---|---|---|
| PyPI | tensorflow | <2.1.4 | 2.1.4 |
| PyPI | tensorflow | >=2.2.0,<2.2.3 | 2.2.3 |
| PyPI | tensorflow | >=2.3.0,<2.3.3 | 2.3.3 |
| PyPI | tensorflow | >=2.4.0,<2.4.2 | 2.4.2 |
| PyPI | tensorflow-cpu | <2.1.4 | 2.1.4 |
| PyPI | tensorflow-cpu | >=2.2.0,<2.2.3 | 2.2.3 |
| PyPI | tensorflow-cpu | >=2.3.0,<2.3.3 | 2.3.3 |
| PyPI | tensorflow-cpu | >=2.4.0,<2.4.2 | 2.4.2 |
| PyPI | tensorflow-gpu | <2.1.4 | 2.1.4 |
| PyPI | tensorflow-gpu | >=2.2.0,<2.2.3 | 2.2.3 |
| PyPI | tensorflow-gpu | >=2.3.0,<2.3.3 | 2.3.3 |
| PyPI | tensorflow-gpu | >=2.4.0,<2.4.2 | 2.4.2 |
| PyPI | tensorflow | <4253f96a58486ffe84b61c0415bb234a4632ee73||>=2.4.0,<2.4.2 | 4253f96a58486ffe84b61c0415bb234a4632ee73 |
| PyPI | tensorflow-cpu | <4253f96a58486ffe84b61c0415bb234a4632ee73||>=2.4.0,<2.4.2 | 4253f96a58486ffe84b61c0415bb234a4632ee73 |
| PyPI | tensorflow-gpu | <4253f96a58486ffe84b61c0415bb234a4632ee73||>=2.4.0,<2.4.2 | 4253f96a58486ffe84b61c0415bb234a4632ee73 |
References
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-9c84-4hx6-xmm4
- https://nvd.nist.gov/vuln/detail/CVE-2021-29601
- https://github.com/tensorflow/tensorflow/commit/4253f96a58486ffe84b61c0415bb234a4632ee73
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2021-529.yaml
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2021-727.yaml
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow/PYSEC-2021-238.yaml
- https://github.com/tensorflow/tensorflow
- https://github.com/tensorflow/tensorflow/blob/7b7352a724b690b11bfaae2cd54bc3907daf6285/tensorflow/lite/kernels/concatenation.cc#L70-L76
- https://security-tracker.debian.org/tracker/CVE-2021-29601
Verify integrity in audit chain (admin only). AS-IS.