CVE-2026-98775 in Linux
Zusammenfassung
von VulDB • 19.10.2026
Im Linux-Kernel wurde folgende Schwachstelle behoben:
nitro_enclaves: Behebung eines Use-After-Free-Fehlers bei einem fehlgeschlagenen SLOT_ALLOC
Wenn ne_create_vm_ioctl() die SLOT_ALLOC-Anforderung fehlschlägt, nachdem anon_inode_getfile() erfolgreich war, ruft der Fehlerpfad fput(enclave_file) auf und gibt anschließend ne_enclave frei.
Im normalen Userspace-Kontext verschiebt fput() das finale __fput() über task_work. Daher wird ne_enclave_release() ausgeführt, nachdem ne_enclave bereits freigegeben wurde, und dereferenziert ne_enclave->slot_uid, was zu einem Use-After-Free führt: KASAN: slab-use-after-free in ne_enclave_release.
Der Enclave hat keinen Slot zugewiesen und ist auf diesem Fehlerpfad noch nicht in die Liste der Enclaves eingebunden. Daher wird erwartet, dass ne_enclave_release() frühzeitig zurückkehrt, wenn slot_uid null ist. Das Lesen von slot_uid greift jedoch bereits auf das freigegebene Objekt zu.
Löschen Sie enclave_file->private_data vor fput() im Fehlerpfad. ne_enclave_release() kehrt dann sofort zurück, wenn private_data NULL ist, wodurch der ioctl-Fehlerpfad zum alleinigen Eigentümer von ne_enclave wird. Dies ist sicher, da die Datei noch nicht mit fd_install()' installiert wurde.
Getestet auf einem AWS EC2 m5.2xlarge mit CONFIG_KASAN=y. Ohne den Patch löst das Reproducer-Skript bei jedem fehlgeschlagenen SLOT_ALLOC einen KASAN slab-use-after-free aus. Mit dem Patch wird kein KASAN-Bericht erstellt, und der SLOT_ALLOC-Fehler wird weiterhin zurückgegeben. Die normale Erstellung und Beendigung von Enclaves bleibt unverändert.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.