CVEvulnerability
CVE-2024-53113
5.5 MEDIUM
Official page ↗
- Status
- Modified
- Published
- 2024-12-02
- Last modified
- 2026-06-17
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- CVSS 3.1 ([email protected])
- 5.5 MEDIUM — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
- Weaknesses
- CWE-476
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
¤t->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.
Affected configurations
• linux linux kernel (>= 5.13 < 6.1.119)
• linux linux kernel (>= 6.2 < 6.6.63)
• linux linux kernel (>= 6.7 < 6.11.10)
• linux linux kernel 6.12
Related
Weakness · CWE (1)
- CWE-476 NULL Pointer Dereference weakness
References
- https://git.kernel.org/stable/c/31502374627ba9ec3e710dbd0bb00457cc6d2c19 Patch
- https://git.kernel.org/stable/c/6addb2d9501ec866d7b3a3b4e665307c437e9be2 Patch
- https://git.kernel.org/stable/c/8ce41b0f9d77cca074df25afd39b86e2ee3aa68e Patch
- https://git.kernel.org/stable/c/903d896448c2e50e8652aaba529a30d4d1eaa0e5 git.kernel.org
- https://git.kernel.org/stable/c/d0f16cec79774c3132df006cf771eddd89d08f58 Patch
- https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html lists.debian.org