CVE-2022-2584 Panic when decoding invalid blocks in github.com/ipld/go-codec-dagpb
An attacker can cause a denial of service by providing invalid blocks to the dag-pb codec, crashing the application.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2022-2584?
CVE-2022-2584 is a high-severity denial of service vulnerability in github.com/ipld/go-codec-dagpb, published on 27 Dec 2022. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
The dag-pb codec can panic when decoding invalid blocks.
Weakness: CWE-119
Which versions are affected by CVE-2022-2584?
5 open source packages ship an affected version, including github.com/ipld/go-codec-dagpb. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
github.com/ipld/go-codec-dagpb Go | All versions | 1.3.1 |
github.com/ipld/go-codec-dagpb Go | All versions | 1.3.1 |
github.com/ipld/go-codec-dagpb Go | All versions | 1.3.1 |
github.com/ipld/go-codec-dagpb Go | All versions | 1.3.1 |
github.com/ipld/go-codec-dagpb Go | All versions | 1.3.1 |
Products include Protocol Go-Codec-Dagpb.
How do I fix CVE-2022-2584?
Upgrade github.com/ipld/go-codec-dagpb to 1.3.1 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-2022-2584 being exploited?
There is no known exploitation of CVE-2022-2584 in the wild and no public exploit code.
Sources
Also known as GHSA-967g-cjx4-h7j6, GHSA-g3vv-g2j5-45f2, GO-2022-0422.