CVE-2022-3176 Use-after-free in io_uring in Linux Kernel

High 7.8 Published Updated

A use-after-free in the Linux kernel io_uring subsystem allows local attackers to potentially execute code or escalate privileges via signalfd or binder polling.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2022-3176?

CVE-2022-3176 is a high-severity use after free vulnerability in Debian Debian Linux, published on 16 Sep 2022. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

There exists a use-after-free in io_uring in the Linux kernel. Signalfd_poll() and binder_poll() use a waitqueue whose lifetime is the current task. It will send a POLLFREE notification to all waiters before the queue is freed. Unfortunately, the io_uring poll doesn't handle POLLFREE. This allows a use-after-free to occur if a signalfd or binder fd is polled with io_uring poll, and the waitqueue gets freed. We recommend upgrading past commit fc78b2fc21f10c4c9c4d5d659a685710ffa63659

Weakness: CWE-416

Which versions are affected by CVE-2022-3176?

It affects 2 products.

Products include Debian Debian Linux, Linux kernel.

How do I fix CVE-2022-3176?

Apply the vendor's patch.

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-2022-3176 being exploited?

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

All Debian Debian Linux vulnerabilities

Sources

Also known as DEBIAN-CVE-2022-3176, GHSA-63jf-69f4-24f6, UBUNTU-CVE-2022-3176.

Is CVE-2022-3176 in your software?

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

Check your SBOMs for free