VYPR
Moderate severityNVD Advisory· Published Dec 11, 2020· Updated Aug 4, 2024

LES Server DoS via GetProofsV2

CVE-2020-26264

Description

Go Ethereum, or "Geth", is the official Golang implementation of the Ethereum protocol. In Geth before version 1.9.25 a denial-of-service vulnerability can make a LES server crash via malicious GetProofsV2 request from a connected LES client. This vulnerability only concerns users explicitly enabling les server; disabling les prevents the exploit. The vulnerability was patched in version 1.9.25.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
github.com/ethereum/go-ethereumGo
< 1.9.251.9.25

Affected products

1

Patches

1
bddd103a9f0a

les: fix GetProofsV2 bug (#21896)

https://github.com/ethereum/go-ethereumFelföldi ZsoltNov 24, 2020via ghsa
1 file changed · +2 4
  • les/server_handler.go+2 4 modified
    @@ -610,6 +610,7 @@ func (h *serverHandler) handleMsg(p *clientPeer, wg *sync.WaitGroup) error {
     		var (
     			lastBHash common.Hash
     			root      common.Hash
    +			header    *types.Header
     		)
     		reqCnt := len(req.Reqs)
     		if accept(req.ReqID, uint64(reqCnt), MaxProofsFetch) {
    @@ -624,10 +625,6 @@ func (h *serverHandler) handleMsg(p *clientPeer, wg *sync.WaitGroup) error {
     						return
     					}
     					// Look up the root hash belonging to the request
    -					var (
    -						header *types.Header
    -						trie   state.Trie
    -					)
     					if request.BHash != lastBHash {
     						root, lastBHash = common.Hash{}, request.BHash
     
    @@ -654,6 +651,7 @@ func (h *serverHandler) handleMsg(p *clientPeer, wg *sync.WaitGroup) error {
     					// Open the account or storage trie for the request
     					statedb := h.blockchain.StateCache()
     
    +					var trie state.Trie
     					switch len(request.AccKey) {
     					case 0:
     						// No account key specified, open an account trie
    

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

News mentions

0

No linked articles in our index yet.