CVE-2024-36890 mm/slab: make __free(kfree) accept error pointers

High 7.8 Published Updated

A flaw in the Linux kernel's slab allocator causes a crash when automatically freeing error pointers, leading to denial of service.

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-2024-36890?

CVE-2024-36890 is a high-severity vulnerability in Linux kernel, published on 30 May 2024. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

In the Linux kernel, the following vulnerability has been resolved:

mm/slab: make __free(kfree) accept error pointers

Currently, if an automatically freed allocation is an error pointer that will lead to a crash. An example of this is in wm831x_gpio_dbg_show().

171 char *label __free(kfree) = gpiochip_dup_line_label(chip, i); 172 if (IS_ERR(label)) { 173 dev_err(wm831x->dev, "Failed to duplicate label\n"); 174 continue; 175 }

The auto clean up function should check for error pointers as well, otherwise we're going to keep hitting issues like this.

Weakness: CWE-763

Which versions are affected by CVE-2024-36890?

It affects 1 product.

Products include Linux kernel.

How do I fix CVE-2024-36890?

Apply the vendor's patch.

Is CVE-2024-36890 being exploited?

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

All Linux kernel vulnerabilities

Sources

Also known as BELL-CVE-2024-36890, DEBIAN-CVE-2024-36890, UBUNTU-CVE-2024-36890.

Is CVE-2024-36890 in your software?

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

Check your SBOMs for free