CVE-2020-15106: Improper Input Validation in etcd
In etcd before versions 3.3.23 and 3.4.10, a large slice causes panic in decodeRecord method. The size of a record is stored in the length field of a WAL file and no additional validation is done on this data. Therefore, it is possible to forge an extremely large frame size that can unintentionally panic at the expense of any RAFT participant trying to decode the WAL.
References
- github.com/advisories/GHSA-p4g4-wgrh-qrg2
- github.com/etcd-io/etcd/blob/master/security/SECURITY_AUDIT.pdf
- github.com/etcd-io/etcd/commit/4571e528f49625d3de3170f219a45c3b3d38c675
- github.com/etcd-io/etcd/commit/f4b650b51dc4a53a8700700dc12e1242ac56ba07
- github.com/etcd-io/etcd/pull/11793
- github.com/etcd-io/etcd/security/advisories/GHSA-p4g4-wgrh-qrg2
- lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/L6B6R43Y7M3DCHWK3L3UVGE2K6WWECMP/
- nvd.nist.gov/vuln/detail/CVE-2020-15106
- pkg.go.dev/vuln/GO-2020-0005
Detect and mitigate CVE-2020-15106 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 →