Out-of-bounds Read in Google Tensorflow

CVE-2020-15265

In Tensorflow before version 2.4.0, an attacker can pass an invalid `axis` value to `tf.quantization.quantize_and_dequantize`. This results in accessing a dimension outside the rank of the input tensor in the C++ kernel implementation. However, dim_size only does a DCHECK to validate the argument and then uses it to access the corresponding element of an array. Since in normal builds, `DCHECK`-like macros are no-ops, this results in segfault and access out of bounds of the array. The issue is patched in eccb7ec454e6617738554a255d77f08e60ee0808 and TensorFlow 2.4.0 will be released containing the patch. TensorFlow nightly packages after this commit will also have the issue resolved.

Vulnerability class: Buffer Overflow

EPSS: 0.009 (56.3th percentile) — read the EPSS interpretation.

CVSS v3 metric

CVSS v3 base score 5.9 (Medium). Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H.

Affected products

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2020-15265?
CVE-2020-15265 is a medium-severity vulnerability in Google Tensorflow, classified under Out-of-bounds Read. CVSS score: 5.9/10. Published 2020-10-21.
How severe is CVE-2020-15265?
Medium severity. CVSS v3 base score is 5.9 out of 10.