Track vulnerabilities like this one.
Sign up free to get alerted when software you use is affected.
2.0
CVE-2021-29566: TensorFlow: Attacker can write to wrong memory locations
CVE-2021-29566 · published 5 years ago
Summary
An attacker can exploit a weakness in TensorFlow's machine learning platform, potentially causing it to write to incorrect memory locations. This can happen when the platform processes input from an attacker. To protect your system, update TensorFlow to version 2.5.0 or apply the fix to versions 2.4.2, 2.3.3, 2.2.3, and 2.1.4.
What to do
- Update google inc. tensorflow to version 2.1.4.
- Update google inc. tensorflow to version 2.2.3.
- Update google inc. tensorflow to version 2.3.3.
- Update google inc. tensorflow to version 2.4.2.
- Update google inc. tensorflow-cpu to version 2.1.4.
- Update google inc. tensorflow-cpu to version 2.2.3.
- Update google inc. tensorflow-cpu to version 2.3.3.
- Update google tensorflow-gpu to version 2.1.4.
- Update google tensorflow-gpu to version 2.2.3.
- Update google tensorflow-gpu to version 2.3.3.
- Update google tensorflow-gpu to version 2.4.2.
- Update google inc. tensorflow-cpu to version 2.4.2.
Affected software
| Ecosystem | Vendor | Product | Affected versions |
|---|---|---|---|
| pip | google inc. | tensorflow |
< 2.1.4 >= 2.2.0, < 2.2.3 >= 2.3.0, < 2.3.3 >= 2.4.0, < 2.4.2 Fix: upgrade to 2.1.4
|
| pip | google inc. | tensorflow-cpu |
< 2.1.4 >= 2.2.0, < 2.2.3 >= 2.3.0, < 2.3.3 >= 2.4.0, < 2.4.2 Fix: upgrade to 2.1.4
|
| pip | tensorflow-gpu |
< 2.1.4 >= 2.2.0, < 2.2.3 >= 2.3.0, < 2.3.3 >= 2.4.0, < 2.4.2 Fix: upgrade to 2.1.4
|
|
| – | tensorflow |
< 2.1.4 >= 2.2.0, < 2.2.3 >= 2.3.0, < 2.3.3 >= 2.4.0, < 2.4.2 cpe:2.3:a:google:tensorflow:*:*:*:*:*:*:*:* |
Original advisory text
TensorFlow is an end-to-end open source platform for machine learning. An attacker can write outside the bounds of heap allocated arrays by passing invalid arguments to `tf.raw_ops.Dilation2DBackpr...
TensorFlow is an end-to-end open source platform for machine learning. An attacker can write outside the bounds of heap allocated arrays by passing invalid arguments to `tf.raw_ops.Dilation2DBackpropInput`. This is because the implementation(https://github.com/tensorflow/tensorflow/blob/afd954e65f15aea4d438d0a219136fc4a63a573d/tensorflow/core/kernels/dilation_ops.cc#L321-L322) does not validate before writing to the output array. The values for `h_out` and `w_out` are guaranteed to be in range for `out_backprop` (as they are loop indices bounded by the size of the array). However, there are no similar guarantees relating `h_in_max`/`w_in_max` and `in_backprop`. The fix will be included in TensorFlow 2.5.0. We will also cherrypick this commit on TensorFlow 2.4.2, TensorFlow 2.3.3, TensorFlow 2.2.3 and TensorFlow 2.1.4, as these are also affected and still in supported range.
References
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-pvrc-hg3f-58r6
- https://nvd.nist.gov/vuln/detail/CVE-2021-29566
- https://github.com/tensorflow/tensorflow/commit/3f6fe4dfef6f57e768260b48166c27d1...
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2...
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2...
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow/PYSEC-2021-...
- https://github.com/advisories/GHSA-pvrc-hg3f-58r6
Internet-facing
60 days
Internal
At next upgrade
- Not known to be exploited
- Needs hands-on effort to exploit (estimated)
- Gives an attacker partial control (estimated)
Type
CWE-787Out-of-bounds Write
Timeline
Published14 May 2021
Updated29 Oct 2026
First seen6 Mar 2026
Track software like this
Free during beta