CVE-2024-36891 maple_tree: fix mas_empty_area_rev() null pointer dereference
A local attacker can cause a kernel oops and denial of service by unmapping all VMAs and mapping a new one, triggering a null pointer dereference in the maple tree implementation.
- 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-36891?
CVE-2024-36891 is a medium-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:
maple_tree: fix mas_empty_area_rev() null pointer dereference
Currently the code calls mas_start() followed by mas_data_end() if the maple state is MA_START, but mas_start() may return with the maple state node == NULL. This will lead to a null pointer dereference when checking information in the NULL node, which is done in mas_data_end().
Avoid setting the offset if there is no node by waiting until after the maple state is checked for an empty or single entry state.
A user could trigger the events to cause a kernel oops by unmapping all vmas to produce an empty maple tree, then mapping a vma that would cause the scenario described above.
Weakness: CWE-476
Which versions are affected by CVE-2024-36891?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2024-36891?
Apply the vendor's patch.
Is CVE-2024-36891 being exploited?
There is no known exploitation of CVE-2024-36891 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as AZL-42474, BELL-CVE-2024-36891, DEBIAN-CVE-2024-36891, UBUNTU-CVE-2024-36891.