Every CVE Search/ Get API key

CVE-2020-15112

Improper Input Validation in etcd

6.5 MediumFix available

In etcd before versions 3.3.23 and 3.4.10, it is possible to have an entry index greater then the number of entries in the ReadAll method in wal/wal.go. This could cause issues when WAL entries are being read during consensus as an arbitrary etcd consensus participant could go down from a runtime panic when reading the entry.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
None
Availability
High

Exploit likelihood

1.26%Up 0.6 points since Apr 14, 2021
90%50%10%1%

What each source reports

CVE List Score used 6.5

Improper Input Validation in etcd

In etcd before versions 3.3.23 and 3.4.10, it is possible to have an entry index greater then the number of entries in the ReadAll method in wal/wal.go. This could cause issues when WAL entries are being read during consensus as an arbitrary etcd consensus participant could go down from a runtime panic when reading the entry.

Record
CVE-2020-15112
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Weakness
CWE-20
Updated
2026-11-02
EUVDEUVD-2022-7121 6.5

In etcd before versions 3.3.23 and 3.4.10, it is possible to have an entry index greater then the number of entries in the ReadAll method in wal/wal.go. This could cause issues when WAL entries are being read during consensus as an arbitrary etcd consensus participant could go down from a runtime panic when reading the entry.

Record
EUVD-2022-7121
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-03
GitHub AdvisoriesGHSA-m332-53r6-2w93 5.3

etcd's WAL `ReadAll` method vulnerable to an entry with large index causing panic

Vulnerability type

Data Validation

Detail

In the ReadAll method in wal/wal.go, it is possible to have an entry index greater then the number of entries. This could cause issues when WAL entries are being read during consensus as an arbitrary etcd consensus participant could go down from a runtime panic when reading the entry.

References

Find out more on this vulnerability in the security audit report

For more information

If you have any questions or comments about this advisory:

Record
GHSA-m332-53r6-2w93
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-20, CWE-129
Updated
2026-11-02
NVD 6.5

In etcd before versions 3.3.23 and 3.4.10, it is possible to have an entry index greater then the number of entries in the ReadAll method in wal/wal.go. This could cause issues when WAL entries are being read during consensus as an arbitrary etcd consensus participant could go down from a runtime panic when reading the entry.

Record
CVE-2020-15112
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
CVSS 2.0
4.0 MediumAV:N/AC:L/Au:S/C:N/I:N/A:P
Weakness
CWE-20, CWE-129
Updated
2026-11-02
OSVAZL-6389 6.5

CVE-2020-15112 affecting package etcd for versions less than 3.5.0-3

In etcd before versions 3.3.23 and 3.4.10, it is possible to have an entry index greater then the number of entries in the ReadAll method in wal/wal.go. This could cause issues when WAL entries are being read during consensus as an arbitrary etcd consensus participant could go down from a runtime panic when reading the entry.

Record
AZL-6389
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVCVE-2020-15106 6.5

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.

Record
CVE-2020-15106
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
Show 14 moreShow less
OSV 6.5

In etcd before versions 3.3.23 and 3.4.10, it is possible to have an entry index greater then the number of entries in the ReadAll method in wal/wal.go. This could cause issues when WAL entries are being read during consensus as an arbitrary etcd consensus participant could go down from a runtime panic when reading the entry.

Record
CVE-2020-15112
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVDEBIAN-CVE-2020-15112 6.5

In etcd before versions 3.3.23 and 3.4.10, it is possible to have an entry index greater then the number of entries in the ReadAll method in wal/wal.go. This could cause issues when WAL entries are being read during consensus as an arbitrary etcd consensus participant could go down from a runtime panic when reading the entry.

Record
DEBIAN-CVE-2020-15112
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVGHSA-m332-53r6-2w93 5.3

etcd's WAL `ReadAll` method vulnerable to an entry with large index causing panic

Vulnerability type

Data Validation

Detail

In the ReadAll method in wal/wal.go, it is possible to have an entry index greater then the number of entries. This could cause issues when WAL entries are being read during consensus as an arbitrary etcd consensus participant could go down from a runtime panic when reading the entry.

References

Find out more on this vulnerability in the security audit report

For more information

If you have any questions or comments about this advisory:

Record
GHSA-m332-53r6-2w93
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-129, CWE-20
Updated
2026-11-02
OSVGHSA-p4g4-wgrh-qrg2 3.7

Panic due to malformed WALs in go.etcd.io/etcd

Vulnerability type

Data Validation

Detail

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.

Specific Go Packages Affected

github.com/etcd-io/etcd/wal

References

Find out more on this vulnerability in the security audit report

For more information

If you have any questions or comments about this advisory:

Record
GHSA-p4g4-wgrh-qrg2
CVSS 3.1
3.7 LowCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L
Weakness
CWE-20
Updated
2026-11-02
OSVRHSA-2021:0916 7.7

Red Hat Security Advisory: Red Hat OpenStack Platform 16.1.4 (etcd) security update

Record
RHSA-2021:0916
CVSS 3.1
7.7 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:N/A:H
Updated
2026-11-02
OSVRHSA-2021:1407 6.5

Red Hat Security Advisory: etcd security update

Record
RHSA-2021:1407
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2020-15112 6.5

In etcd before versions 3.3.23 and 3.4.10, it is possible to have an entry index greater then the number of entries in the ReadAll method in wal/wal.go. This could cause issues when WAL entries are being read during consensus as an arbitrary etcd consensus participant could go down from a runtime panic when reading the entry.

Record
UBUNTU-CVE-2020-15112
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Updated
2026-11-02
OSVBIT-etcd-2020-15106 No score

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.

Record
BIT-etcd-2020-15106
Updated
2026-11-02
OSVBIT-etcd-2020-15112 No score

Improper Input Validation in etcd

In etcd before versions 3.3.23 and 3.4.10, it is possible to have an entry index greater then the number of entries in the ReadAll method in wal/wal.go. This could cause issues when WAL entries are being read during consensus as an arbitrary etcd consensus participant could go down from a runtime panic when reading the entry.

Record
BIT-etcd-2020-15112
Updated
2026-11-02
OSVGO-2020-0005 No score

Panic due to malformed WALs in go.etcd.io/etcd

Malformed WALs can be constructed such that WAL.ReadAll can cause attempted out of bounds reads, or creation of arbitrarily sized slices, which may be used as a DoS vector.

Record
GO-2020-0005
Updated
2026-11-02
OSVSUSE-SU-2020:3760-1 No score

Security changes in Kubernetes, etcd, and helm; Bugfix in cri-o package

= Required Actions

== Kubernetes & etcd (Security fixes)

This fix involves an upgrade of Kubernetes and some add-ons. See https://documentation.suse.com/suse-caasp/4.2/html/caasp-admin/_cluster_updates.html#_updating_kubernetes_components for the upgrade procedure.

== Skuba & helm/helm3

In order to update skuba and helm or helm 3, you need to update the management workstation. See detailed instructions at https://documentation.suse.com/suse-caasp/4.2/html/caasp-admin/_cluster_updates.html#_update_management_workstation

= Known Issues

Modifying the file /etc/sysconfig/kubelet directly is not supported: documentation at https://documentation.suse.com/suse-caasp/4.2/html/caasp-admin/_miscellaneous.html#_configuring_kubelet

Be sure to check the Release Notes at https://www.suse.com/releasenotes/x86_64/SUSE-CAASP/4/#_changes_in_4_2_4 for any additional known issues or behavioral changes.

Record
SUSE-SU-2020:3760-1
Updated
2026-11-02
OSVSUSE-SU-2024:3656-1 No score

Security update for etcd

This update for etcd fixes the following issues:

Update to version 3.5.12:

Security fixes:

  • CVE-2018-16873: Fixed remote command execution in cmd/go (bsc#1118897)
  • CVE-2018-16874: Fixed directory traversal in cmd/go (bsc#1118898)
  • CVE-2018-16875: Fixed CPU denial of service in crypto/x509 (bsc#1118899)
  • CVE-2018-16886: Fixed improper authentication issue when RBAC and client-cert-auth is enabled (bsc#1121850)
  • CVE-2020-15106: Fixed panic in decodeRecord method (bsc#1174951)
  • CVE-2020-15112: Fixed improper checks in entry index (bsc#1174951)
  • CVE-2021-28235: Fixed information discosure via debug function (bsc#1210138)
  • CVE-2022-41723: Fixed quadratic complexity in HPACK decoding in net/http (bsc#1208270, bsc#1208297)
  • CVE-2023-29406: Fixed insufficient sanitization of Host header in go net/http (bsc#1213229)
  • CVE-2023-47108: Fixed DoS vulnerability in otelgrpc (bsc#1217070)
  • CVE-2023-48795: Fixed prefix truncation breaking ssh channel integrity (aka Terrapin Attack) in crypto/ssh (bsc#1217950, bsc#1218150)

Other changes:

  • Added hardening to systemd service(s) (bsc#1181400)
  • Fixed static /tmp file issue (bsc#1199031)
  • Fixed systemd service not starting (bsc#1183703)

Full changelog:

https://github.com/etcd-io/etcd/compare/v3.3.1...v3.5.12

Record
SUSE-SU-2024:3656-1
Updated
2026-11-02
OSVUSN-5628-1 No score

etcd vulnerabilities

It was discovered that etcd incorrectly handled certain specially crafted WAL files. An attacker could possibly use this issue to cause a denial of service. (CVE-2020-15106, CVE-2020-15112)

It was discovered that etcd incorrectly handled directory permissions when trying to create a directory that exists already. An attacker could possibly use this issue to obtain sensitive information. (CVE-2020-15113)

It was discovered that etcd incorrectly handled endpoint setup. An attacker could possibly use this issue to cause a denial of service. (CVE-2020-15114)

Record
USN-5628-1
Updated
2026-11-02
OSVUSN-5628-2 No score

etcd vulnerabilities

USN-5628-1 fixed vulnerabilities in etcd. This update provides the corresponding updates for Ubuntu 18.04 ESM.

Original advisory details:

It was discovered that etcd incorrectly handled certain specially crafted WAL files. An attacker could possibly use this issue to cause a denial of service. (CVE-2020-15106, CVE-2020-15112)

It was discovered that etcd incorrectly handled directory permissions when trying to create a directory that exists already. An attacker could possibly use this issue to obtain sensitive information. (CVE-2020-15113)

It was discovered that etcd incorrectly handled endpoint setup. An attacker could possibly use this issue to cause a denial of service. (CVE-2020-15114)

Record
USN-5628-2
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
go.etcd.io/etcd/v3
Go
before 3.3.23
3.3.23
go.etcd.io/etcd/v3
Go
3.4.0 up to 3.4.10
3.4.10
etcd
Azure Linux:2
before 3.5.0-3
3.5.0-3
etcd
Bitnami
From an advisory covering 2 CVEs
before 3.3.23, 3.4.0 up to 3.4.10
3.3.233.4.10
etcd
Debian:12
before 3.3.25+dfsg-5
3.3.25+dfsg-5
etcd
Debian:13
before 3.3.25+dfsg-5
3.3.25+dfsg-5
etcd
Debian:14
before 3.3.25+dfsg-5
3.3.25+dfsg-5
go.etcd.io/etcd/v3
Go
From an advisory covering 2 CVEs
before 3.3.23
3.3.23
go.etcd.io/etcd/v3
Go
From an advisory covering 2 CVEs
3.4.0 up to 3.4.10
3.4.10
go.etcd.io/etcd
Go
From an advisory covering 2 CVEs
before 0.5.0-alpha.5.0.20200423152442-f4b650b51dc4
0.5.0-alpha.5.0.20200423152442-f4b650b51dc4
Show 18 moreShow less
Affected packages
PackageAffectedFixed
etcd
Red Hat:openstack:16.1::el8
From an advisory covering 6 CVEs
before 0:3.3.23-1.el8ost
0:3.3.23-1.el8ost
etcd-debuginfo
Red Hat:openstack:16.1::el8
From an advisory covering 6 CVEs
before 0:3.3.23-1.el8ost
0:3.3.23-1.el8ost
etcd-debugsource
Red Hat:openstack:16.1::el8
From an advisory covering 6 CVEs
before 0:3.3.23-1.el8ost
0:3.3.23-1.el8ost
etcd
Red Hat:rhel_extras_other:7
From an advisory covering 2 CVEs
before 0:3.2.32-1.el7_9
0:3.2.32-1.el7_9
etcd-debuginfo
Red Hat:rhel_extras_other:7
From an advisory covering 2 CVEs
before 0:3.2.32-1.el7_9
0:3.2.32-1.el7_9
kubernetes
SUSE:Linux Enterprise Module for Containers 15 SP1
From an advisory covering 8 CVEs
before 1.17.13-4.21.2
1.17.13-4.21.2
etcd
openSUSE:Leap 15.5
From an advisory covering 11 CVEs
before 3.5.12-150000.7.6.1
3.5.12-150000.7.6.1
etcd
openSUSE:Leap 15.6
From an advisory covering 11 CVEs
before 3.5.12-150000.7.6.1
3.5.12-150000.7.6.1
etcd
Ubuntu:16.04:LTS
All versions, plus listed versions
2.2.0+dfsg-22.2.1+dfsg-12.2.2+dfsg-12.2.2+dfsg-22.2.3+dfsg-12.2.5+dfsg-12.2.5+dfsg-1ubuntu1
None known
etcd
Ubuntu:Pro:18.04:LTS
before 3.2.17+dfsg-1ubuntu0.1~esm1, plus listed versions
3.1.0-13.2.9+dfsg-23.2.9+dfsg-33.2.17+dfsg-1
3.2.17+dfsg-1ubuntu0.1~esm1
etcd
Ubuntu:20.04:LTS
before 3.2.26+dfsg-6ubuntu0.1, plus listed versions
3.2.26+dfsg-33.2.26+dfsg-43.2.26+dfsg-6
3.2.26+dfsg-6ubuntu0.1
etcd
Ubuntu:Pro:22.04:LTS
All versions, plus listed versions
3.3.25+dfsg-63.3.25+dfsg-73.3.25+dfsg-7ubuntu0.22.04.13.3.25+dfsg-7ubuntu0.22.04.1+esm13.3.25+dfsg-7ubuntu0.22.04.23.3.25+dfsg-7ubuntu0.22.04.2+esm13.3.25+dfsg-7ubuntu0.22.04.2+esm23.3.25+dfsg-7ubuntu0.22.04.2+esm3
None known
etcd
Ubuntu:Pro:24.04:LTS
All versions, plus listed versions
3.4.23-4ubuntu23.4.30-13.4.30-1build13.4.30-1ubuntu0.24.04.13.4.30-1ubuntu0.24.04.2
Show 4 moreShow less
3.4.30-1ubuntu0.24.04.2+esm13.4.30-1ubuntu0.24.04.33.4.30-1ubuntu0.24.04.3+esm13.4.30-1ubuntu0.24.04.3+esm2
None known
etcd
Ubuntu:25.10
All versions, plus listed versions
3.5.16-4
None known
etcd
Ubuntu:26.10
All versions, plus listed versions
3.5.16-103.5.30-2
None known
etcd
Ubuntu:Pro:26.04:LTS
All versions, plus listed versions
3.5.16-43.5.16-103.5.16-10ubuntu0.26.04.1~esm1
None known
etcd
Ubuntu:20.04:LTS
From an advisory covering 4 CVEs
before 3.2.26+dfsg-6ubuntu0.1, plus listed versions
3.2.26+dfsg-33.2.26+dfsg-43.2.26+dfsg-6
3.2.26+dfsg-6ubuntu0.1
etcd
Ubuntu:Pro:18.04:LTS
From an advisory covering 4 CVEs
before 3.2.17+dfsg-1ubuntu0.1~esm1, plus listed versions
3.1.0-13.2.9+dfsg-23.2.9+dfsg-33.2.17+dfsg-1
3.2.17+dfsg-1ubuntu0.1~esm1

History

History
RecordedChangedSources
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2020-15112 is a medium vulnerability (CVSS 6.5) in Etcd, published August 5, 2020. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.26%, the 69th percentile. Fixed in go.etcd.io/etcd/v3 3.3.23.

References

Show 88 moreShow less
MoveEnter Open