CVE-2020-15207
Description
In tensorflow-lite before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, to mimic Python's indexing with negative values, TFLite uses `ResolveAxis` to convert negative values to positive indices. However, the only check that the converted index is now valid is only present in debug builds. If the `DCHECK` does not trigger, then code execution moves ahead with a negative index. This, in turn, results in accessing data out of bounds which results in segfaults and/or data corruption. The issue is patched in commit 2d88f470dea2671b430884260f3626b1fe99830a, and is released in TensorFlow versions 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1.
How to fix
- google tensorflow1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 or later
- tensorflow1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 or later
- tensorflow-cpu1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 or later
- tensorflow-gpu1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| google tensorflow | v < 1.15.4, 2.0.0 ≤ v < 2.0.3, 2.1.0 ≤ v < 2.1.2, 2.2.0 ≤ v < 2.2.1, 2.3.0 ≤ v < 2.3.1 | 1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 |
| opensuse leap | 15.2 | — |
| tensorflowPyPI | v < 1.15.4, 2.0.0 ≤ v < 2.0.3, 2.1.0 ≤ v < 2.1.2, 2.2.0 ≤ v < 2.2.1, 2.3.0 ≤ v < 2.3.1 | 1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 |
| tensorflow-cpuPyPI | v < 1.15.4, 2.0.0 ≤ v < 2.0.3, 2.1.0 ≤ v < 2.1.2, 2.2.0 ≤ v < 2.2.1, 2.3.0 ≤ v < 2.3.1 | 1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 |
| tensorflow-gpuPyPI | v < 1.15.4, 2.0.0 ≤ v < 2.0.3, 2.1.0 ≤ v < 2.1.2, 2.2.0 ≤ v < 2.2.1, 2.3.0 ≤ v < 2.3.1 | 1.15.4, 2.0.3, 2.1.2, 2.2.1, 2.3.1 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.