CVE-2026-64416
Beschreibung
Im Linux-Kernel wurde die folgende Sicherheitslücke behoben: mm: swap cgroup: fix NULL deref in lookup swap cgroup id auf dem austauschlosen Host lookup swap cgroup id() übergibt swap cgroup ctrl[type].map zu swap cgroup id lookup(), ohne zu überprüfen, ob der Typ jemals über swap cgroup swapon() registriert wurde. Auf einem austauschlosen Host ist jede ctrl->map NULL, also swap cgroup id lookup() dereferences NULL + a scaled swp offset(). Seit Commit bea67dcc5eea ("mm: try to batch free swap entry for zap pte range()") ruft zap pte range() -> swap pte batch() lookup swap cgroup id() auf jedem nicht vorhandenen, nicht vorhandenen PTE auf, der als echter Swap-Eintrag dekodiert, ohne ihn vorher gegen swap info[] zu validieren. Ein einzelner PTE, der in einen Typ-0-Swap-Eintrag beschädigt wurde, führt den Host beim Prozessausgang herunter. Wir haben dies in der Produktion auf einem austauschlosen 6.12.58-Host erreicht: ~1s von "get swap device: Bad swap file entry 3f800204222bb" (do swap page() ist korrekt defensiv gegenüber dem gleichen Eintrag), gefolgt von BUG: unfähig, den Seitenfehler für die Adresse zu behandeln: 000003f800204220 RIP: 0010:lookup swap cgroup id+0x2b/0x60 Call Trace: swap pte batch+0xbf/0x230 zap pte range+0x4c8/0x780 unmap page range+0x190/0x3e0 exit mmap+0xd9/0x3c0 do exit+0x20c/0x4b0 syzbot hat den identischen Stack gemeldet. Die Quelle der PTE-Korruption ist ein separater Fehler; diese Änderung macht den Abreißpfad so robust wie der Fehlerpfad bereits ist. Jeder andere Aufrufer von lookup swap cgroup id() befindet sich hinter einem get swap device(), der den Eintrag bereits validiert hat, sodass der neue Branch kalt ist.
Quellen & weiterführende Informationen
Hier werden ausschließlich tatsächlich zu dieser Schwachstelle gespeicherte Quellenbelege angezeigt.
Was ist zur Behebung zu tun?
Herstellerhinweise prüfen und das betroffene Produkt kurzfristig patchen oder kompensierende Schutzmaßnahmen aktivieren.
Empfohlene Schritte
- Betroffene Systeme identifizieren: linux linux kernel.
- Exposition prüfen: Internet-Erreichbarkeit, Admin-Oberflächen, VPN, Mail- oder Webdienste.
- Hersteller-Advisory öffnen und verfügbare Updates, Workarounds oder Deaktivierungen prüfen.
- Nacharbeiten dokumentieren: betroffene Assets, Maßnahme, Zeitpunkt, Restrestrisiko.
Übergangsmaßnahmen
- Zugriff auf betroffene Dienste auf vertrauenswürdige Netze einschränken.
- WAF/IDS/EDR-Regeln und Hersteller-IOCs aktivieren, sofern verfügbar.
- Nicht benötigte Funktionen, Plugins oder Dienste temporär deaktivieren.
- Administrative Zugänge besonders absichern: MFA, Passwortrotation, Session-Invalidierung.