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.
2020-09-25T19:15:15.993
2024-11-21T05:05:05.250
Modified
CVSSv3.1: 8.7 (HIGH)
AV:N/AC:M/Au:N/C:P/I:P/A:P
8.6
6.4
Type | Vendor | Product | Version/Range | Vulnerable? |
---|---|---|---|---|
Application | tensorflow | < 1.15.4 | Yes | |
Application | tensorflow | < 2.0.3 | Yes | |
Application | tensorflow | < 2.1.2 | Yes | |
Application | tensorflow | < 2.2.1 | Yes | |
Application | tensorflow | < 2.3.1 | Yes | |
Operating System | opensuse | leap | 15.2 | Yes |