mm: fix NULL pointer dereference in alloc_pages_bulk_noprof (Linux Linux)

CVE-2024-53113
MEDIUM 5.5

En bref

Source
NVD
EPSS
EPSS 0.25 % · centile 16 ()
État
PUBLISHED
Publiée
Mise à jour
Attribuée par
Linux
Statut NVD
Modified

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.

Faiblesses (CWE)

  • CWE-476 — Déréférencement de pointeur nul

Références

Scores

VersionScoreVecteurÉvalué par
CVSS 3.1MEDIUM 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HNVD · nvd@nist.gov (Primary)

Références européennes

Avis du CERT-FR

Configurations affectées (CPE NVD)

Produits affectés

ProduitVersions
Linux · Linuxaffected 387ba26fb1cb9be9e35dc14a6d97188e916eda05 < 903d896448c2e50e8652aaba529a30d4d1eaa0e5 ; affected 387ba26fb1cb9be9e35dc14a6d97188e916eda05 < 6addb2d9501ec866d7b3a3b4e665307c437e9be2 ; affected 387ba26fb1cb9be9e35dc14a6d97188e916eda05 < d0f16cec79774c3132df006cf771eddd89d08f58 ; affected 387ba26fb1cb9be9e35dc14a6d97188e916eda05 < 31502374627ba9ec3e710dbd0bb00457cc6d2c19 ; affected 387ba26fb1cb9be9e35dc14a6d97188e916eda05 < 8ce41b0f9d77cca074df25afd39b86e2ee3aa68e
Linux · Linuxaffected 5.13 ; unaffected 0 < 5.13 ; unaffected 5.15.174 ≤ 5.15.* ; unaffected 6.1.119 ≤ 6.1.* ; unaffected 6.6.63 ≤ 6.6.* ; unaffected 6.11.10 ≤ 6.11.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD