GitHub Advisoryadvisory · PyPI
GHSA-4c4g-crqm-xrxw Use of unitialized value in TFLite
MEDIUM
Official page ↗
- Aliases
- CVE-2021-37682
- Ecosystem
- PyPI
- Packages
- tensorflow, tensorflow-cpu, tensorflow-gpu
- Severity
- Moderate
- CVSS vector
- CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L
- Weaknesses
- CWE-908
- Reviewed
- 2021-08-24
Affected packages
• PyPI tensorflow: < 2.3.4 → fixed in 2.3.4
• PyPI tensorflow: >= 2.4.0, < 2.4.3 → fixed in 2.4.3
• PyPI tensorflow: >= 2.5.0, < 2.5.1 → fixed in 2.5.1
• PyPI tensorflow-cpu: < 2.3.4 → fixed in 2.3.4
• PyPI tensorflow-cpu: >= 2.4.0, < 2.4.3 → fixed in 2.4.3
• PyPI tensorflow-cpu: >= 2.5.0, < 2.5.1 → fixed in 2.5.1
• PyPI tensorflow-gpu: < 2.3.4 → fixed in 2.3.4
• PyPI tensorflow-gpu: >= 2.4.0, < 2.4.3 → fixed in 2.4.3
• PyPI tensorflow-gpu: >= 2.5.0, < 2.5.1 → fixed in 2.5.1
Description
Impact
All TFLite operations that use quantization can be made to use unitialized values. For example:
```cc
const auto* affine_quantization =
reinterpret_cast(
filter->quantization.params);
```
The issue stems from the fact that `quantization.params` is only valid if `quantization.type` is different that `kTfLiteNoQuantization`. However, these checks are missing in large parts of the code.
Patches
We have patched the issue in GitHub commits 537bc7c723439b9194a358f64d871dd326c18887,
4a91f2069f7145aab6ba2d8cfe41be8a110c18a5 and 8933b8a21280696ab119b63263babdb54c298538.
The fix will be included in TensorFlow 2.6.0. We will also cherrypick this commit on TensorFlow 2.5.1, TensorFlow 2.4.3, and TensorFlow 2.3.4, as these are also affected and still in supported range.
For more information
Please consult our security guide for more information regarding the security model and how to contact us with issues and questions.
Attribution
This vulnerability has been reported by members of the Aivul Team from Qihoo 360.
Related
Alias · CVE (1)
- CVE-2021-37682 TensorFlow is an end-to-end open source platform for machine learning. vulnerability
Weakness · CWE (1)
- CWE-908 Use of Uninitialized Resource weakness
References
- https://github.com/tensorflow/tensorflow/security/advisories/GHSA-4c4g-crqm-xrxw web
- https://nvd.nist.gov/vuln/detail/CVE-2021-37682 advisory
- https://github.com/tensorflow/tensorflow/commit/4a91f2069f7145aab6ba2d8cfe41be8a110c18a5 web
- https://github.com/tensorflow/tensorflow/commit/537bc7c723439b9194a358f64d871dd326c18887 web
- https://github.com/tensorflow/tensorflow/commit/8933b8a21280696ab119b63263babdb54c298538 web
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2021-595.yaml web
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2021-793.yaml web
- https://github.com/pypa/advisory-database/tree/main/vulns/tensorflow/PYSEC-2021-304.yaml web
- https://github.com/tensorflow/tensorflow package
- https://github.com/tensorflow/tensorflow/blob/460e000de3a83278fb00b61a16d161b1964f15f4/tensorflow/lite/kernels/depthwise_conv.cc#L198-L200 web