CVE-2021-41196
Crash in `max_pool3d` when size argument is 0 or negative
Description
TensorFlow is an open source platform for machine learning. In affected versions the Keras pooling layers can trigger a segfault if the size of the pool is 0 or if a dimension is negative. This is due to the TensorFlow's implementation of pooling operations where the values in the sliding window are not checked to be strictly positive. The fix will be included in TensorFlow 2.7.0. We will also cherrypick this commit on TensorFlow 2.6.1, TensorFlow 2.5.2, and TensorFlow 2.4.4, as these are also affected and still in supported range.
How to fix CVE-2021-41196
To remediate CVE-2021-41196, upgrade the affected package to a fixed version below.
- —upgrade to 2.4.4 or later
- —upgrade to 2.6.1 or later
- —upgrade to 12b1ff82b3f26ff8de17e58703231d5a02ef1b8b or later
- —upgrade to 12b1ff82b3f26ff8de17e58703231d5a02ef1b8b or later
- —upgrade to 2.6.1 or later
- —upgrade to 12b1ff82b3f26ff8de17e58703231d5a02ef1b8b or later
- —upgrade to 2.6.1 or later
Is CVE-2021-41196 being exploited?
Low — EPSS is 0.0%, meaning exploitation activity has not been observed at scale.
Affected packages (7)
- from 0, < 2.4.4, >= 2.5.0, < 2.5.2, >= 2.6.0, < 2.6.1
- >= 2.6.0, < 2.6.1
- from 0, < 12b1ff82b3f26ff8de17e58703231d5a02ef1b8b | from 0, < 2.4.4, >= 2.5.0, < 2.5.2, >= 2.6.0, < 2.6.1, >= 2.7.0rc0, < 2.7.0
- from 0, < 12b1ff82b3f26ff8de17e58703231d5a02ef1b8b | from 0, < 2.4.4, >= 2.5.0, < 2.5.2, >= 2.6.0, < 2.6.1, >= 2.7.0rc0, < 2.7.0
- >= 2.6.0, < 2.6.1
- from 0, < 12b1ff82b3f26ff8de17e58703231d5a02ef1b8b | from 0, < 2.4.4, >= 2.5.0, < 2.5.2, >= 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 4.0 | — | CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
| osv | CVSS 3.1 | MEDIUM5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |