CVE-2021-41211
Heap OOB read in shape inference for `QuantizeV2`
Description
TensorFlow is an open source platform for machine learning. In affected versions the shape inference code for `QuantizeV2` can trigger a read outside of bounds of heap allocated array. This occurs whenever `axis` is a negative value less than `-1`. In this case, we are accessing data before the start of a heap buffer. The code allows `axis` to be an optional argument (`s` would contain an `error::NOT_FOUND` error code). Otherwise, it assumes that `axis` is a valid index into the dimensions of the `input` tensor. If `axis` is less than `-1` then this results in a heap OOB read. The fix will be included in TensorFlow 2.7.0. We will also cherrypick this commit on TensorFlow 2.6.1, as this version is the only one that is also affected.
How to fix CVE-2021-41211
To remediate CVE-2021-41211, upgrade the affected package to a fixed version below.
- —upgrade to 2.6.1 or later
- —upgrade to 2.6.1 or later
- —upgrade to a0d64445116c43cf46a5666bd4eee28e7a82f244 or later
- —upgrade to a0d64445116c43cf46a5666bd4eee28e7a82f244 or later
- —upgrade to 2.6.1 or later
- —upgrade to a0d64445116c43cf46a5666bd4eee28e7a82f244 or later
- —upgrade to 2.6.1 or later
Is CVE-2021-41211 being exploited?
Low — EPSS is 0.0%, meaning exploitation activity has not been observed at scale.
Affected packages (7)
- >= 2.6.0, < 2.6.1
- >= 2.6.0, < 2.6.1
- from 0, < a0d64445116c43cf46a5666bd4eee28e7a82f244 | >= 2.6.0, < 2.6.1, >= 2.7.0rc0, < 2.7.0
- from 0, < a0d64445116c43cf46a5666bd4eee28e7a82f244 | >= 2.6.0, < 2.6.1, >= 2.7.0rc0, < 2.7.0
- >= 2.6.0, < 2.6.1
- from 0, < a0d64445116c43cf46a5666bd4eee28e7a82f244 | >= 2.6.0, < 2.6.1, >= 2.7.0rc0, < 2.7.0
- >= 2.6.0, < 2.6.1
CVSS scores
| Source | Version | Severity | Vector |
|---|---|---|---|
| osv | CVSS 3.1 | HIGH7.1 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H |