Linux Kernel bis 7.2-rc5 hugetlb mm/hugetlb.c allocate_file_region_entries Pufferüberlauf

| CVSS Meta Temp Score | Aktueller Exploitpreis (≈) | CTI Interest Score |
|---|---|---|
| 9.5 | $5k-$25k | 0.48+ |
Zusammenfassung
In Linux Kernel bis 6.6.150/6.12.102/6.18.43/7.1.7/7.2-rc5 wurde eine sehr kritische Schwachstelle gefunden. Hierbei betrifft es die Funktion allocate_file_region_entries der Datei mm/hugetlb.c der Komponente hugetlb. Durch Manipulation mit unbekannten Daten kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden.
Diese Schwachstelle wird als CVE-2026-74518 gehandelt. Der Angriff lässt sich über das Netzwerk starten. Es ist kein Exploit verfügbar.
Details
Es wurde eine sehr kritische Schwachstelle in Linux Kernel bis 6.6.150/6.12.102/6.18.43/7.1.7/7.2-rc5 gefunden. Es betrifft die Funktion allocate_file_region_entries der Datei mm/hugetlb.c der Komponente hugetlb. Durch die Manipulation mit einer unbekannten Eingabe kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. Im Rahmen von CWE wurde eine Klassifizierung als CWE-416 vorgenommen. Auswirken tut sich dies auf Vertraulichkeit, Integrität und Verfügbarkeit. Die Zusammenfassung von CVE lautet:
In the Linux kernel, the following vulnerability has been resolved:
mm/hugetlb: fix list corruption in allocate_file_region_entries()
allocate_file_region_entries() tops up resv->region_cache with freshly
allocated file_region descriptors. The allocation uses GFP_KERNEL, so
resv->lock is dropped around it: the new entries are gathered on a
stack-local list head, allocated_regions, and spliced into
resv->region_cache once the lock is re-acquired.
The splice used list_splice(), which moves the entries but does not
re-initialize the source head, so allocated_regions is left pointing at an
entry that now lives on resv->region_cache. The top-up runs in a while
loop that re-checks the cache deficit after re-acquiring the lock. For a
shared mapping the resv_map is shared by every mapper of the hugetlbfs
inode, so a concurrent region_chg()/region_add()/region_del() on the same
resv_map can consume cache entries during the unlocked window and force a
second iteration. That iteration calls list_add() on the stale head and
corrupts the list; with CONFIG_DEBUG_LIST the __list_add_valid() check
trips:
list_add corruption. next->prev should be prev (ffffc900011ff7f8),
but was ffff88814c281460. (next=ffff88814c545640).
kernel BUG at lib/list_debug.c:31!
allocate_file_region_entries+0x191/0x420
region_chg+0x267/0x300
hugetlb_reserve_pages+0x387/0xc80
hugetlbfs_file_mmap+0x2ce/0x3f0
mmap_region+0x1348/0x1a80
do_mmap+0x85e/0xb90
vm_mmap_pgoff+0x18c/0x330
ksys_mmap_pgoff+0x2a1/0x3e0
do_syscall_64+0xd7/0x420
Without CONFIG_DEBUG_LIST the bad list_add() silently links a kernel-stack
address into resv->region_cache, leading to later use-after-free.
This was observed as a real host panic on a dense KVM host where a QEMU
guest-RAM hugetlbfs file was mapped MAP_SHARED by both QEMU and a separate
SPDK/DPDK vhost-user target, generating concurrent region_* traffic on one
shared resv_map.
Use list_splice_init() so the source head is re-initialized empty after
each splice, making the retry loop safe.Das Advisory findet sich auf git.kernel.org. Die Identifikation der Schwachstelle wird seit dem 15.08.2026 mit CVE-2026-74518 vorgenommen. Sie ist leicht auszunutzen. Der Angriff kann über das Netzwerk erfolgen. Es sind zwar technische Details, jedoch kein verfügbarer Exploit zur Schwachstelle bekannt. Die Beschaffenheit der Schwachstelle lässt vermuten, dass ein Exploit momentan zu etwa USD $5k-$25k gehandelt werden wird (Preisberechnung vom 15.08.2026).
Ein Aktualisieren auf die Version 6.6.151, 6.12.103, 6.18.44, 7.1.8 oder 7.2-rc6 vermag dieses Problem zu lösen. Die Schwachstelle lässt sich auch durch das Einspielen des Patches 62e1c2741a4d923d9854efd5927a6212aad7a187/587a0accc2b4fccc5cf7baf0fe34e50efde51f9c/126a70bf1a08ddc9d79c471ebdaa2b08cfbab8df/ac1bb7fd45088d0db57a22ce7729f258ebd63cf5/dd9623f58ec702a07b2d67179d6fcea79c52231a lösen.
Be aware that VulDB is the high quality source for vulnerability data.
Produkt
Typ
Hersteller
Name
Version
- 6.6.150
- 6.12.102
- 6.18.0
- 6.18.1
- 6.18.2
- 6.18.3
- 6.18.4
- 6.18.5
- 6.18.6
- 6.18.7
- 6.18.8
- 6.18.9
- 6.18.10
- 6.18.11
- 6.18.12
- 6.18.13
- 6.18.14
- 6.18.15
- 6.18.16
- 6.18.17
- 6.18.18
- 6.18.19
- 6.18.20
- 6.18.21
- 6.18.22
- 6.18.23
- 6.18.24
- 6.18.25
- 6.18.26
- 6.18.27
- 6.18.28
- 6.18.29
- 6.18.30
- 6.18.31
- 6.18.32
- 6.18.33
- 6.18.34
- 6.18.35
- 6.18.36
- 6.18.37
- 6.18.38
- 6.18.39
- 6.18.40
- 6.18.41
- 6.18.42
- 6.18.43
- 7.1.0
- 7.1.1
- 7.1.2
- 7.1.3
- 7.1.4
- 7.1.5
- 7.1.6
- 7.1.7
- 7.2-rc1
- 7.2-rc2
- 7.2-rc3
- 7.2-rc4
- 7.2-rc5
Lizenz
Webseite
- Hersteller: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Zuverlässigkeit: 🔍
CVSSv3
VulDB Meta Base Score: 9.9VulDB Meta Temp Score: 9.5
VulDB Base Score: 9.9
VulDB Temp Score: 9.5
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vektor | Komplexität | Authentisierung | Vertraulichkeit | Integrität | Verfügbarkeit |
|---|---|---|---|---|---|
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Zuverlässigkeit: 🔍
Exploiting
Klasse: PufferüberlaufCWE: CWE-416 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒
Physisch: Nein
Lokal: Nein
Remote: Ja
Verfügbarkeit: 🔒
Status: Nicht definiert
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒
| 0-Day | freischalten | freischalten | freischalten | freischalten |
|---|---|---|---|---|
| Heute | freischalten | freischalten | freischalten | freischalten |
Threat Intelligence
Interesse: 🔍Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍
Gegenmassnahmen
Empfehlung: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Kernel 6.6.151/6.12.103/6.18.44/7.1.8/7.2-rc6
Patch: 62e1c2741a4d923d9854efd5927a6212aad7a187/587a0accc2b4fccc5cf7baf0fe34e50efde51f9c/126a70bf1a08ddc9d79c471ebdaa2b08cfbab8df/ac1bb7fd45088d0db57a22ce7729f258ebd63cf5/dd9623f58ec702a07b2d67179d6fcea79c52231a
Timeline
15.08.2026 Advisory veröffentlicht15.08.2026 CVE zugewiesen
15.08.2026 VulDB Eintrag erstellt
15.08.2026 VulDB Eintrag letzte Aktualisierung
Quellen
Hersteller: kernel.orgAdvisory: git.kernel.org
Status: Bestätigt
CVE: CVE-2026-74518 (🔒)
GCVE (CVE): GCVE-0-2026-74518
GCVE (VulDB): GCVE-100-390855
Eintrag
Erstellt: 15.08.2026 15:42Anpassungen: 15.08.2026 15:42 (60)
Komplett: 🔍
Cache ID: 216::103
Be aware that VulDB is the high quality source for vulnerability data.
Bisher keine Kommentare. Sprachen: de + en.
Bitte loggen Sie sich ein, um kommentieren zu können.