Der Fehler steckt im Linux-Kernel, genauer in der KVM-Virtualisierungsunterstützung für die ARM64-Architektur. Beim Verwerfen zwischengespeicherter Adressübersetzungen (TLB-Invalidierung) muss der Kernel bestimmen, wie groß der betroffene Speicherbereich ist. Diese Größe leitet er aus der Granulatgröße und der Ebene der Übersetzungstabelle ab – was jedoch voraussetzt, dass die Speicherverwaltungseinheit der ersten Übersetzungsstufe überhaupt aktiv ist. Ist sie abgeschaltet, wird die Ebene intern mit einem negativen Sonderwert markiert. Die zuständige Umrechnungsfunktion verarbeitete negative Werte nicht korrekt: Sie interpretierte sie als vorzeichenlose Zahl und wertete nur die untersten Bits aus, wodurch eine Invalidierungsgröße von null herauskam. In der Folge wurden Übersetzungseinträge nicht wie vorgesehen verworfen, was zu inkonsistentem Speicherverhalten in virtuellen Maschinen führen kann. Die Korrektur behandelt negative Ebenen explizit und liefert bei fehlender gültiger Angabe einen definierten Ersatzwert.
CVE-2026-89775
9,3
CRITICAL
CVSS Basis-Score
Beschreibung