CVE-2021-45707 Out-of-bounds Write in nix

Critical 9.8 Published Updated

An out-of-bounds write in the nix crate allows attackers to cause memory corruption or denial of service when processing users with many groups.

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-45707?

CVE-2021-45707 is a critical memory corruption 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 nix crate 0.16.0 and later before 0.20.2, 0.21.x before 0.21.2, and 0.22.x before 0.22.2 for Rust. unistd::getgrouplist has an out-of-bounds write if a user is in more than 16 /etc/groups groups.

Weakness: CWE-787

Which versions are affected by CVE-2021-45707?

13 open source packages ship an affected version, including nix. It affects 1 product.

PackageAffectedFixed in
nix crates.ioFrom 0.16.00.20.2, 0.21.2, 0.22.2, 0.23.0
nix crates.ioFrom 0.16.00.20.2
nix crates.ioFrom 0.16.00.20.2
nix crates.ioFrom 0.16.00.20.2
nix crates.ioFrom 0.16.00.20.2
nix crates.ioFrom 0.21.00.21.2
7 more packages
nix crates.ioFrom 0.21.00.21.2
nix crates.ioFrom 0.21.00.21.2
nix crates.ioFrom 0.21.00.21.2
nix crates.ioFrom 0.22.00.22.2
nix crates.ioFrom 0.22.00.22.2
nix crates.ioFrom 0.22.00.22.2
nix crates.ioFrom 0.22.00.22.2

Products include Nix Project Nix.

How do I fix CVE-2021-45707?

Upgrade nix to a fixed version for your release line: 0.20.2, 0.21.2, 0.22.2 or 0.23.0.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is CVE-2021-45707 being exploited?

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

Sources

Also known as DEBIAN-CVE-2021-45707, GHSA-76w9-p8mg-j927, GHSA-wgrg-5h56-jg27, RUSTSEC-2021-0119, UBUNTU-CVE-2021-45707.

Is CVE-2021-45707 in your software?

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

Check your SBOMs for free