CVE-2026-64561 sitzt in KVM/x86 und genauer in der Shadow Memory Management Unit. Diese Komponente verwaltet Shadow-Page-Tabellen, die bei der Speicherübersetzung in verschachtelten Gastumgebungen verwendet werden. Nach Angaben von Hyunwoo Kim handelt es sich um einen Fehler in der Reihenfolge der Prüfungen auf veraltete Root-Einträge in der Shadow-MMU-Verwaltung, der in einen Use-after-free-Zustand münden kann.

Ausgelöst wird das Problem während der Behandlung von durch den Gast verursachten Seitenfehlern. KVM kann dabei MMU-Seiten zurückgewinnen und die Shadow-MMU-Root-Seite ungültig machen, die im laufenden Fehlerbehandlungspfad noch verwendet wird. Weil dieser Pfad die Root-Seite anschließend nicht erneut prüft, arbeitet KVM unter dem inzwischen ungültigen Root weiter.

In einer technischen Analyse beschreibt Kim den Fehler als Use-after-free im rekursiven „Zap“-Pfad, der verwendet wird, wenn KVM Shadow-Seiten zurückfordert. KVM prüfte demnach zunächst, ob der aktuelle Root-Eintrag veraltet ist, bevor mit make_mmu_pages_available() weitere MMU-Seiten bereitgestellt wurden. Die Rückgewinnung konnte genau diesen Root-Eintrag danach ungültig machen, KVM setzte den Fehlerpfad aber fort und legte darunter neue Shadow-Unterseiten an.

Diese untergeordneten Seiten übernahmen den ungültigen Zustand ihres Elterneintrags und landeten dennoch in KVMs Liste aktiver MMU-Seiten. Spätere Aufräumarbeiten konnten dadurch denselben Listenverweis gleichzeitig an zwei Listen hängen, die Seite freigeben und dabei veraltete Listenreferenzen zurücklassen. Daraus entsteht laut Kim ein hängender Verweis mit Schreibzugriff nach der Freigabe.

Sein öffentliches Proof-of-Concept nutzt genau diesen primitiven Baustein für eine vollständige Exploit-Kette, die auf einem verwundbaren KVM-Host eine Root-eigene Datei namens “/Zapscape” anlegt. Das Demonstrationsprogramm zielt auf AMD Nested SVM/NPT unter Linux 7.1.3. Für sicheres Testen empfiehlt Kim QEMU TCG. QEMU sei jedoch nicht die verwundbare Komponente; der Fehler stecke in KVM im Kernel und lasse sich unabhängig von der Emulation durch QEMU auslösen.

Voraussetzung für den Angriff sind Kernel-Rechte im L1-Gast, in der Praxis also üblicherweise Root im Gast. Auf Intel-Systemen müssen zusätzlich sowohl EPT-Page-Walk-Länge 4 als auch 5 an den L1-Gast durchgereicht werden. Für AMD nennt der Quelltext keine entsprechende Zusatzbedingung.

Kim betont in seiner Veröffentlichung vom 6. August, dass kein Hinweis auf Ausnutzung in freier Wildbahn vorliegt. Er beschreibt den Stand zudem als keinen „sofort einsetzbaren“ Exploit für Cloud-Umgebungen: Für einen realen Einsatz müssten die Aktionen im L1-Gast in ein Kernel-Modul verlagert und der Exploit an die Kernel-Konfiguration des Hosts sowie an das verwendete Speicher-Backend angepasst werden.

Der Fix wurde bereits übernommen und als Commit 2abd5287f083 eingespielt. Er verschiebt die Prüfung auf einen veralteten Root-Eintrag hinter make_mmu_pages_available(). Wenn die Rückgewinnung den aktuellen Root ungültig macht, startet KVM den Seitenfehler nun mit RET_PF_RETRY neu, statt mit der Abbildung oder dem Nachladen unter einem ungültigen Root fortzufahren.

Die National Vulnerability Database nennt Linux 5.9 und spätere Versionen bis zu den korrigierten stabilen Releases als betroffen, darunter 6.6.148, 6.12.101, 6.18.42, 7.1.6 und 7.2-rc5. Red Hat vergab in seinem Sicherheitshinweis vorläufig einen CVSS-Wert von 7,0 und ordnete die Schwachstelle als CWE-825 ein, also als Dereferenzierung eines abgelaufenen Zeigers. Red Hat weist außerdem darauf hin, dass Paketstände vom jeweiligen Distributor abhängen und Patches oft zurückportiert werden, ohne auf eine neue Upstream-Version zu wechseln.

Zum Stand vom 6. August 2026 führte Debians Tracker die Kernel-Pakete von bullseye, bookworm und trixie einschließlich ihrer Sicherheits-Repositories als verwundbar. Auch forky war dort als verwundbar vermerkt, während sid ab Version 7.1.6-1 als korrigiert galt.

Aus der Offenlegungszeitleiste geht hervor, dass Kim den Fehler am 11. Juli 2026 an security@kernel.org meldete. Ein Patch wurde am 21. Juli veröffentlicht und übernommen. Am 1. August wurde das Problem unter einem fünftägigen Embargo an die linux-distros-Liste gemeldet, am 4. August erhielt es die Kennung CVE-2026-64561, und am 6. August folgte die öffentliche Offenlegung.

Zapscape ist nicht Kims erste KVM-Arbeit. Zuvor veröffentlichte er bereits Januscape, geführt als CVE-2026-53359, eine weitere Shadow-MMU-Schwachstelle in KVM/x86, sowie ITScape, CVE-2026-46316, einen KVM/arm64-Ausbruch.