CVE-2024-53113 mm: fix NULL pointer dereference in alloc_pages_bulk_noprof

Medium 5.5 Published Updated

A race condition during cpuset migration causes a NULL pointer dereference in the Linux kernel memory allocator, leading to a system crash.

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

CVE-2024-53113 is a medium-severity vulnerability in Linux kernel, published on 2 Dec 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: fix NULL pointer dereference in alloc_pages_bulk_noprof

We triggered a NULL pointer dereference for ac.preferred_zoneref->zone in alloc_pages_bulk_noprof() when the task is migrated between cpusets.

When cpuset is enabled, in prepare_alloc_pages(), ac->nodemask may be &current->mems_allowed. when first_zones_zonelist() is called to find preferred_zoneref, the ac->nodemask may be modified concurrently if the task is migrated between different cpusets. Assuming we have 2 NUMA Node, when traversing Node1 in ac->zonelist, the nodemask is 2, and when traversing Node2 in ac->zonelist, the nodemask is 1. As a result, the ac->preferred_zoneref points to NULL zone.

In alloc_pages_bulk_noprof(), for_each_zone_zonelist_nodemask() finds a allowable zone and calls zonelist_node_idx(ac.preferred_zoneref), leading to NULL pointer dereference.

__alloc_pages_noprof() fixes this issue by checking NULL pointer in commit ea57485af8f4 ("mm, page_alloc: fix check for NULL preferred_zone") and commit df76cee6bbeb ("mm, page_alloc: remove redundant checks from alloc fastpath").

To fix it, check NULL pointer for preferred_zoneref->zone.

Weakness: CWE-476

Which versions are affected by CVE-2024-53113?

It affects 1 product.

Products include Linux kernel.

How do I fix CVE-2024-53113?

Apply the vendor's patch.

Is CVE-2024-53113 being exploited?

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

All Linux kernel vulnerabilities

Sources

Also known as AZL-54117, AZL-54188, BELL-CVE-2024-53113, DEBIAN-CVE-2024-53113, GHSA-8x6v-8q4g-xh9f, UBUNTU-CVE-2024-53113.

Is CVE-2024-53113 in your software?

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

Check your SBOMs for free