In Tensorflow before versions 1.15.4, 2.0.3, 2.1.2, 2.2.1 and 2.3.1, the implementation of `SparseFillEmptyRowsGrad` uses a double indexing pattern. It is possible for `reverse_index_map(i)` to be an index outside of bounds of `grad_values`, thus resulting in a heap buffer overflow. The issue is patched in commit 390611e0d45c5793c7066110af37c8514e6a6c54, and is released in TensorFlow versions 1.15.4, 2.0.3, 2.1.2, 2.2.1, or 2.3.1.
| Package (Ecosystem) | Introduced | Fixed | Limit |
|---|---|---|---|
| tensorflow(PyPI) | 0 | 1.15.4 | N/A |
| tensorflow(PyPI) | 2.0.0 | 2.0.3 | N/A |
| tensorflow(PyPI) | 2.1.0 | 2.1.2 | N/A |
| tensorflow(PyPI) | 2.2.0 | 2.2.1 | N/A |
| tensorflow(PyPI) | 2.3.0 | 2.3.1 | N/A |
| tensorflow-cpu(PyPI) | 0 | 1.15.4 | N/A |
| tensorflow-cpu(PyPI) | 2.0.0 | 2.0.3 | N/A |
| tensorflow-cpu(PyPI) | 2.1.0 | 2.1.2 | N/A |
| tensorflow-cpu(PyPI) | 2.2.0 | 2.2.1 | N/A |
| tensorflow-cpu(PyPI) | 2.3.0 | 2.3.1 | N/A |
| tensorflow-gpu(PyPI) | 0 | 1.15.4 | N/A |
| tensorflow-gpu(PyPI) | 2.0.0 | 2.0.3 | N/A |
| tensorflow-gpu(PyPI) | 2.1.0 | 2.1.2 | N/A |
| tensorflow-gpu(PyPI) | 2.2.0 | 2.2.1 | N/A |
| tensorflow-gpu(PyPI) | 2.3.0 | 2.3.1 | N/A |
CVSS Metrics