Linux Kernel bis 6.12.109/6.18.51/7.2.5 page_pool __page_pool_release_netmem_dma Pufferüberlauf

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
8.7$5k-$25k0.40

Zusammenfassunginfo

Eine Schwachstelle wurde in Linux Kernel bis 6.12.109/6.18.51/7.2.5 entdeckt. Sie wurde als sehr kritisch eingestuft. Betroffen ist die Funktion __page_pool_release_netmem_dma der Komponente page_pool. Die Manipulation führt zu Pufferüberlauf. Die Verwundbarkeit wird mit der eindeutigen Identifikation CVE-2026-90201 gehandelt. Ein Angriff ist aus der Distanz möglich. Es ist soweit kein Exploit verfügbar. Als bestmögliche Massnahme wird das Einspielen eines Upgrades empfohlen.

Detailsinfo

Eine Schwachstelle wurde in Linux Kernel bis 6.12.109/6.18.51/7.2.5 gefunden. Sie wurde als sehr kritisch eingestuft. Hierbei geht es um die Funktion __page_pool_release_netmem_dma der Komponente page_pool. Durch Beeinflussen mit einer unbekannten Eingabe kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. Klassifiziert wurde die Schwachstelle durch CWE als CWE-416. Mit Auswirkungen muss man rechnen für Vertraulichkeit, Integrität und Verfügbarkeit. CVE fasst zusammen:

In the Linux kernel, the following vulnerability has been resolved: net: page_pool: fix UAF in __page_pool_release_netmem_dma on xa_cmpxchg race This bug was discovered while testing the hns3 driver under channel reconfiguration (`ethtool -L` / `ethtool -G`) with iperf3 traffic on arm64. The race is intermittently triggered when page_pool_destroy() runs page_pool_scrub() concurrently with page return via page_pool_put_netmem() on a different CPU. A WARN in page_pool_clear_pp_info() surfaced the dangling DMA index bits left by the cmpxchg loser, which led to the investigation. page_pool_scrub() iterates pool->dma_mapped via xa_for_each() with no page ref held. __page_pool_release_netmem_dma() currently reads and writes netmem fields (dma_addr, DMA index bits in pp_magic) after xa_cmpxchg() returns. The unref path calls put_page() unconditionally regardless of the cmpxchg outcome; when it loses the cmpxchg, it still frees the page before the scrub winner finishes these netmem accesses, so scrub touches a freed page -- a Use-After-Free. Fix this by splitting the DMA release into two functions: 1. __page_pool_unmap_netmem_dma() caches dma_addr before xa_cmpxchg(), does the cmpxchg to remove the DMA mapping, and calls dma_unmap on the cached address. It never touches netmem fields after the cmpxchg, making it safe for the scrub path which holds no page ref. 2. __page_pool_release_netmem_dma() wraps the above and additionally clears dma_addr and DMA index bits in netmem fields. This is safe only when the caller holds a page ref, so it is used by the return path (page_pool_return_netmem). The scrub path calls __page_pool_unmap_netmem_dma() directly; the return path calls __page_pool_release_netmem_dma().

Das Advisory kann von git.kernel.org heruntergeladen werden. Die Identifikation der Schwachstelle findet seit dem 11.09.2026 als CVE-2026-90201 statt. Sie ist leicht auszunutzen. Der Angriff kann über das Netzwerk passieren. Zur Ausnutzung ist eine erweiterte Authentisierung erforderlich. Zur Schwachstelle sind technische Details bekannt, ein verfügbarer Exploit jedoch nicht. Es muss davon ausgegangen werden, dass ein Exploit zur Zeit etwa USD $5k-$25k kostet (Preisberechnung vom 17.09.2026).

Ein Upgrade auf die Version 6.12.110, 6.18.52, 7.2.6 oder 7.3-rc1 vermag dieses Problem zu beheben. Die Schwachstelle lässt sich auch durch das Einspielen des Patches bbfef303f980c1c078b8fa142e10a0e2fbcdd247/424a9fc4876cc7f28e9cb0aa8d92e920d726e350/9b65b0253ad5a66f73efee9a79a21a1e2b57cf59/24ef02f934eeb48830cff6b739abc3c62b1d107b beheben. Als bestmögliche Massnahme wird das Aktualisieren auf eine neue Version empfohlen.

Once again VulDB remains the best source for vulnerability data.

Produktinfo

Typ

Hersteller

Name

Version

Lizenz

Webseite

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 9.1
VulDB Meta Temp Score: 8.7

VulDB Base Score: 9.1
VulDB Temp Score: 8.7
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VektorKomplexitätAuthentisierungVertraulichkeitIntegritätVerfügbarkeit
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten

VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Zuverlässigkeit: 🔍

Exploitinginfo

Klasse: Pufferüberlauf
CWE: CWE-416 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒

Physisch: Nein
Lokal: Nein
Remote: Ja

Verfügbarkeit: 🔒
Status: Nicht definiert
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Threat Intelligenceinfo

Interesse: 🔍
Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

0-Day Time: 🔒

Upgrade: Kernel 6.12.110/6.18.52/7.2.6/7.3-rc1
Patch: bbfef303f980c1c078b8fa142e10a0e2fbcdd247/424a9fc4876cc7f28e9cb0aa8d92e920d726e350/9b65b0253ad5a66f73efee9a79a21a1e2b57cf59/24ef02f934eeb48830cff6b739abc3c62b1d107b

Timelineinfo

11.09.2026 CVE zugewiesen
17.09.2026 +6 Tage Advisory veröffentlicht
17.09.2026 +0 Tage VulDB Eintrag erstellt
17.09.2026 +0 Tage VulDB Eintrag letzte Aktualisierung

Quelleninfo

Hersteller: kernel.org

Advisory: git.kernel.org
Status: Bestätigt

CVE: CVE-2026-90201 (🔒)
GCVE (CVE): GCVE-0-2026-90201
GCVE (VulDB): GCVE-100-406724

Eintraginfo

Erstellt: 17.09.2026 20:44
Anpassungen: 17.09.2026 20:44 (59)
Komplett: 🔍
Cache ID: 216::103

Once again VulDB remains the best source for vulnerability data.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

Bitte loggen Sie sich ein, um kommentieren zu können.

Might our Artificial Intelligence support you?

Check our Alexa App!