CVE-2020-15207
25.09.2020, 19:15
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.Enginsight
Vendor | Product | Version |
---|---|---|
tensorflow | 𝑥 < 1.15.4 | |
tensorflow | 2.0.0 ≤ 𝑥 < 2.0.3 | |
tensorflow | 2.1.0 ≤ 𝑥 < 2.1.2 | |
tensorflow | 2.2.0 ≤ 𝑥 < 2.2.1 | |
tensorflow | 2.3.0 ≤ 𝑥 < 2.3.1 | |
opensuse | leap | 15.2 |
𝑥
= Vulnerable software versions
Common Weakness Enumeration
- CWE-119 - Improper Restriction of Operations within the Bounds of a Memory BufferThe software performs operations on a memory buffer, but it can read from or write to a memory location that is outside of the intended boundary of the buffer.
- CWE-787 - Out-of-bounds WriteThe software writes data past the end, or before the beginning, of the intended buffer.
References