CVE-2020-35711 Dangling reference in `access::Map` with Constant

High 7.5 Published Updated

A use-after-free vulnerability in the arc-swap Rust library allows attackers to trigger dangling references, potentially leading to crashes or arbitrary code execution.

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

What is CVE-2020-35711?

CVE-2020-35711 is a high-severity use after free vulnerability in n/a, published on 25 Dec 2020. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

An issue has been discovered in the arc-swap crate before 0.4.8 (and 1.x before 1.1.0) for Rust. Use of arc_swap::access::Map with the Constant test helper (or with a user-supplied implementation of the Access trait) could sometimes lead to dangling references being returned by the map.

Which versions are affected by CVE-2020-35711?

5 open source packages ship an affected version, including arc-swap. It affects 1 product.

PackageAffectedFixed in
arc-swap crates.ioFrom 0.4.20.4.8, 1.1.0
arc-swap crates.ioFrom 0.4.20.4.8
arc-swap crates.ioFrom 0.4.20.4.8
arc-swap crates.ioFrom 1.0.01.1.0
arc-swap crates.ioFrom 1.0.01.1.0

Products include Arc-Swap Project Arc-Swap.

How do I fix CVE-2020-35711?

Upgrade arc-swap to a fixed version for your release line: 0.4.8 or 1.1.0.

Upgrade to the fixed version. These bugs are found with fuzzing and sanitisers and avoided by memory-safe languages. More about Use after free.

Is CVE-2020-35711 being exploited?

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

Sources

Also known as DEBIAN-CVE-2020-35711, GHSA-9pqx-g3jh-qpqq, RUSTSEC-2020-0091, UBUNTU-CVE-2020-35711.

Is CVE-2020-35711 in your software?

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

Check your SBOMs for free