CVE-2020-26242 Denial of service in geth

Medium 6.5 Published Updated

An attacker can cause a crash in the Geth Ethereum client during block processing, leading to a denial of service.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2020-26242?

CVE-2020-26242 is a medium-severity denial of service vulnerability in go-ethereum, published on 25 Nov 2020. Any signed-in user can exploit it over the network, with no action from the victim.

Official description

Go Ethereum, or "Geth", is the official Golang implementation of the Ethereum protocol. In Geth before version 1.9.18, there is a Denial-of-service (crash) during block processing. This is fixed in 1.9.18.

Which versions are affected by CVE-2020-26242?

5 open source packages ship an affected version, including github.com/ethereum/go-ethereum and github.com/holiman/uint256. It affects 1 product.

PackageAffectedFixed in
github.com/ethereum/go-ethereum GoFrom 1.9.161.9.18
github.com/ethereum/go-ethereum GoFrom 1.9.161.9.18
github.com/holiman/uint256 GoFrom 0.1.01.1.1
github.com/holiman/uint256 GoFrom 0.1.01.1.1
github.com/holiman/uint256 GoFrom 0.1.01.1.1

Products include Ethereum Go Ethereum.

How do I fix CVE-2020-26242?

Upgrade github.com/ethereum/go-ethereum to 1.9.18 or later.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2020-26242 being exploited?

There is no known exploitation of CVE-2020-26242 in the wild and no public exploit code.

Sources

Also known as GHSA-jm5c-rv3w-w83m, GO-2021-0103.

Is CVE-2020-26242 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free