CVE-2020-26266: Uninitialized memory access in TensorFlow
(updated )
Under certain cases, a saved model can trigger use of uninitialized values during code execution. This is caused by having tensor buffers be filled with the default value of the type but forgetting to default initialize the quantized floating point types in Eigen:
struct QUInt8 {
QUInt8() {}
// ...
uint8_t value;
};
struct QInt16 {
QInt16() {}
// ...
int16_t value;
};
struct QUInt16 {
QUInt16() {}
// ...
uint16_t value;
};
struct QInt32 {
QInt32() {}
// ...
int32_t value;
};
References
- github.com/advisories/GHSA-qhxx-j73r-qpm2
- github.com/pypa/advisory-database/tree/main/vulns/tensorflow-cpu/PYSEC-2020-297.yaml
- github.com/pypa/advisory-database/tree/main/vulns/tensorflow-gpu/PYSEC-2020-332.yaml
- github.com/pypa/advisory-database/tree/main/vulns/tensorflow/PYSEC-2020-254.yaml
- github.com/tensorflow/tensorflow
- github.com/tensorflow/tensorflow/commit/ace0c15a22f7f054abcc1f53eabbcb0a1239a9e2
- github.com/tensorflow/tensorflow/security/advisories/GHSA-qhxx-j73r-qpm2
- nvd.nist.gov/vuln/detail/CVE-2020-26266
Detect and mitigate CVE-2020-26266 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →