CVE-2024-53113

MEDIUM EPSS 16.0%
Published Dec 2, 20241y ago · Modified Jun 17, 20261w ago
5.5 CVSS 3.1
Medium
Find Similar
Published Dec 2, 2024 1y ago
Last Modified Jun 17, 2026 1w ago

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.

CVSS Details

Base Score
5.5
Exploitability
1.8
Impact
3.6
Vector string
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Attack Vector Local
Attack Complexity Low
Privileges Required Low
User Interaction None
Scope Unchanged
Confidentiality None
Integrity None
Availability High

Threat Intelligence

EPSS Exploit Probability
16.0% percentile
Exploit & Patch Status
No Known Exploit
Patch Available

Weaknesses 1

CWE-476 NULL Pointer Dereference Memory Safety

Affected Products 10

VendorProductVersionRange
linuxlinux_kernel*≥5.13  –  <6.1.119
linuxlinux_kernel*≥6.2  –  <6.6.63
linuxlinux_kernel*≥6.7  –  <6.11.10
linuxlinux_kernel6.12any
linuxlinux_kernel6.12any
linuxlinux_kernel6.12any
linuxlinux_kernel6.12any
linuxlinux_kernel6.12any
linuxlinux_kernel6.12any
linuxlinux_kernel6.12any

References 6

  • git.kernel.org https://git.kernel.org/stable/c/31502374627ba9ec3e710dbd0bb00457cc6d2c19
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/6addb2d9501ec866d7b3a3b4e665307c437e9be2
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/8ce41b0f9d77cca074df25afd39b86e2ee3aa68e
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/903d896448c2e50e8652aaba529a30d4d1eaa0e5
  • git.kernel.org https://git.kernel.org/stable/c/d0f16cec79774c3132df006cf771eddd89d08f58
    Patch
  • lists.debian.org https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html

Remediation

  • git.kernel.org https://git.kernel.org/stable/c/31502374627ba9ec3e710dbd0bb00457cc6d2c19
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/6addb2d9501ec866d7b3a3b4e665307c437e9be2
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/8ce41b0f9d77cca074df25afd39b86e2ee3aa68e
    Patch
  • git.kernel.org https://git.kernel.org/stable/c/d0f16cec79774c3132df006cf771eddd89d08f58
    Patch