Moderate severityNVD Advisory· Published Nov 5, 2021· Updated Aug 4, 2024
Heap OOB read in `SparseBinCount`
CVE-2021-41226
Description
TensorFlow is an open source platform for machine learning. In affected versions the implementation of SparseBinCount is vulnerable to a heap OOB access. This is because of missing validation between the elements of the values argument and the shape of the sparse output. 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.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
tensorflowPyPI | >= 2.6.0, < 2.6.1 | 2.6.1 |
tensorflowPyPI | >= 2.5.0, < 2.5.2 | 2.5.2 |
tensorflowPyPI | < 2.4.4 | 2.4.4 |
tensorflow-cpuPyPI | >= 2.6.0, < 2.6.1 | 2.6.1 |
tensorflow-cpuPyPI | >= 2.5.0, < 2.5.2 | 2.5.2 |
tensorflow-cpuPyPI | < 2.4.4 | 2.4.4 |
tensorflow-gpuPyPI | >= 2.6.0, < 2.6.1 | 2.6.1 |
tensorflow-gpuPyPI | >= 2.5.0, < 2.5.2 | 2.5.2 |
tensorflow-gpuPyPI | < 2.4.4 | 2.4.4 |
Affected products
1- Range: >= 2.6.0, < 2.6.1
Patches
1f410212e373ePrevent out-of-bound accesses in SparseBincount.
1 file changed · +10 −0
tensorflow/core/kernels/bincount_op.cc+10 −0 modified@@ -405,6 +405,16 @@ class SparseBincountOp : public OpKernel { for (int64_t i = 0; i < indices_mat.dimension(0); ++i) { const int64_t batch = indices_mat(i, 0); const Tidx bin = values(i); + OP_REQUIRES( + ctx, batch < out.dimension(0), + errors::InvalidArgument("Index out of bound. `batch` (", batch, + ") must be less than the dimension size (", + out.dimension(0), ").")); + OP_REQUIRES( + ctx, bin < out.dimension(1), + errors::InvalidArgument("Index out ouf bound. `bin` (", bin, + ") must be less then the dimension size (", + out.dimension(1), ").")); if (bin < size) { if (binary_output_) { out(batch, bin) = T(1);
Vulnerability mechanics
Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.
References
7- github.com/advisories/GHSA-374m-jm66-3vj8ghsaADVISORY
- nvd.nist.gov/vuln/detail/CVE-2021-41226ghsaADVISORY
- github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2021-635.yamlghsaWEB
- github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2021-833.yamlghsaWEB
- github.com/pypa/advisory-database/tree/main/vulns/tensorflow/PYSEC-2021-418.yamlghsaWEB
- github.com/tensorflow/tensorflow/commit/f410212e373eb2aec4c9e60bf3702eba99a38abaghsax_refsource_MISCWEB
- github.com/tensorflow/tensorflow/security/advisories/GHSA-374m-jm66-3vj8ghsax_refsource_CONFIRMWEB
News mentions
0No linked articles in our index yet.