CVE-2021-45699 Allocation of Resources Without Limits or Throttling in ckb

High 7.5 Published Updated

Remote attackers can cause a denial of service in the Nervos CKB blockchain by triggering memory allocation failures in the ckb crate.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2021-45699?

CVE-2021-45699 is a high-severity denial of service vulnerability in n/a, published on 26 Dec 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

An issue was discovered in the ckb crate before 0.40.0 for Rust. Remote attackers may be able to conduct a 51% attack against the Nervos CKB blockchain by triggering an inability to allocate memory for the misbehavior HashMap.

Weakness: CWE-770

Which versions are affected by CVE-2021-45699?

5 open source packages ship an affected version, including ckb. It affects 1 product.

PackageAffectedFixed in
ckb crates.ioAll versions0.40.0
ckb crates.ioAll versions0.40.0
ckb crates.ioAll versions0.40.0
ckb crates.ioAll versions0.40.0
ckb crates.ioFrom 0.0.0-00.40.0

Products include Nervos Ckb.

How do I fix CVE-2021-45699?

Upgrade ckb to 0.40.0 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-2021-45699 being exploited?

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

Sources

Also known as GHSA-2969-8hh9-57jc, GHSA-48vq-8jqv-gm6f, RUSTSEC-2021-0108.

Is CVE-2021-45699 in your software?

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

Check your SBOMs for free