CVE-2026-31787
xen/privcmd: Behebung des doppelten Free via VMA-Splitting
- Veröffentlicht
- 30.04.2026
- Aktualisiert
- 14.06.2026
- CNA zuweisen
- Linux
- Beweise beobachtet
- 04.09.2026
Primäres CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HNiedrig · nächste 30 Tage
- Perzentil
- 8,2 %
- Modelldatum
- 21.09.2026
EPSS ist eine statistische Schätzung, keine Gewissheit oder ein Maß für die Auswirkung. Kombinieren Sie es mit CVSS, KEV-Status, Belichtung und Ihrer Umgebung.
Zusammenfassung
Im Linux-Kernel wurde die folgende Schwachstelle behoben: xen/privcmd: Doppel-Freigabe durch VMA-Splitting behoben. privcmd_vm_ops definiert .close (privcmd_close), aber weder .may_split noch .open. Wenn Userspace ein partielles munmap() auf einem privcmd-Mapping durchführt, teilt der Kernel die VMA über __split_vma(). Da may_split NULL ist, ist das Splitting erlaubt. vm_area_dup() kopiert vm_private_data (ein pages-Array, das in alloc_empty_pages() zugewiesen wurde) ohne jegliche Korrektur in die neue VMA, da es keinen .open-Callback gibt. Beide VMAs zeigen nun auf dasselbe pages-Array. Wenn der abgebildete Teil geschlossen wird, ruft privcmd_close() Folgendes auf: - xen_unmap_domain_gfn_range() - xen_free_unpopulated_pages() - kvfree(pages) Die verbleibende VMA hält weiterhin den verwaisten Zeiger. Wenn sie später zerstört wird, läuft dieselbe Sequenz erneut ab, was zu einer Doppel-Freigabe führt. Beheben Sie dieses Problem, indem Sie einen .may_split-Callback hinzufügen, der das VMA-Splitting verweigert. Dies ist XSA-487 / CVE-2026-31787
Quellen
1- CVE-2026-31787Informativ
Linux-Kernel-Doppelfree im Xen-privcmd-Treiber
Verantwortungsvoller Umgang
Verwenden Sie Schwachstelleninformationen nur auf Systemen, die Sie besitzen oder zu deren Testen Sie berechtigt sind. Kitploit verlinkt auf öffentliche Forschungsmetadaten und speichert keinen Exploit-Code oder bösartige Payloads.