Login
Newsletter
Werbung

So, 21. Januar 2018, 13:11

Software::Security

Status der Kernel-Patches gegen Meltdown und Spectre

Der Linux-Kernel-Entwickler Greg Kroah-Hartman hat eine aktuelle Übersicht über den Stand der Maßnahmen gegen die Prozessorfehler Meltdown und Spectre gegeben. Aktualisierte Kernel verfügen jetzt über eine Möglichkeit, die Anfälligkeit gegen die beiden Probleme zu überprüfen.

Natascha Eibl

Meltdown und Spectre sind katastrophale Hardware-Fehler, die das unbemerkte Auslesen des Speichers des Rechners ermöglichen und somit Passwörter und andere sensible Daten verraten können. Fast alle modernen Prozessoren sind mehr oder weniger stark betroffen. Einzelheiten zu den am 3. Januar publizierten Lücken wurden in einer Nachricht vom 8. Januar gegeben und sollen hier nicht wiederholt werden.

Bis umfassende Hardware-Korrekturen zur Verfügung stehen, müssen die Lücken mit Software-Änderungen umgangen werden, was zahlreiche Entwickler in den letzten Wochen bis zur Erschöpfung beschäftigte. Fraglich ist noch, ob die Lücken jemals komplett durch Updates der CPU-Microcodes geschlossen werden können. In einigen Fällen liegen Lösungen der Hersteller vor, die aber höhere Geschwindigkeitsverluste mit sich bringen als reine Software-Lösungen oder kaum dokumentiert sind. Absehbar ist, dass die komplette Absicherung aller Systeme noch eine langwierige Sache sein und und in manchen Fällen nicht möglich sein wird.

Natascha Eibl

Nicht nur im Kernel, sondern auch in Anwendungen sind Maßnahmen möglich oder erforderlich. Für den Linux-Kernel hat Greg Kroah-Hartman, der neben vielen anderen Dingen für die Pflege der langfristig unterstützten Kernel-Versionen zuständig ist, eine neue Statusaktualisierung veröffentlicht. Demnach verfügen aktualisierte Kernel über eine Möglichkeit, sich über die Anfälligkeit gehen die beiden Probleme zu informieren. Durch das Kommando grep . /sys/devices/system/cpu/vulnerabilities/* wird eine Ausgabe wie beispielsweise

$ grep . /sys/devices/system/cpu/vulnerabilities/*
/sys/devices/system/cpu/vulnerabilities/meltdown:Mitigation: PTI
/sys/devices/system/cpu/vulnerabilities/spectre_v1:Vulnerable
/sys/devices/system/cpu/vulnerabilities/spectre_v2:Vulnerable: Minimal generic SM retpoline

geliefert. Existieren die angesprochenen Pseudodateien nicht, ist der Kernel auf jeden Fall noch gefährdet und sollte aktualisiert werden, es sein denn, man verwendet einen aktualisierten Kernel einer Unternehmens-Distribution, der zwar die Sicherheitslücken (teilweise) behebt, aber nicht die Erweiterung des Sysfs-Dateisystems enthält. Außerdem gilt diese Ausgabe nur für die x86_64-Architektur.

Einzelheiten zu den Software-Lösungen gegen Meltdown und Spectre findet man in einem Artikel auf LWN, der vorerst nur den zahlenden Abonnenten zugänglich ist. Gegen die Variante 1 von Spectre, die vermutlich das größte Problem darstellt, existiert ein trickreicher und recht effizienter Patch, der aber wohl erst nach Version 4.15 in den Kernel kommen wird. Der Patch schafft mit einem neuen Makro die Grundlagen, die Lücke zu schließen; das eigentliche Problem ist, die zahllosen Stellen im Kernel zu finden, die verwundbar sind und das neue Makro verwenden sollten.

Variante 2 von Spectre wird mit dem »Retpoline«-Patch und Modifikationen in GCC erledigt. Der Patch ist in Linux 4.15-rc8 enthalten, die gepatchte Version von GCC dagegen hat noch kein normaler Benutzer im Einsatz, was den Patch zunächst wirkungslos macht. Ein zweites Problem ist die noch nicht restlos geklärte Frage, ob der Patch auf Intel Skylake-Prozessoren alle Lücken schließt. Gegen Variante 2 von Spectre soll außerdem ein Microcode-Update von Intel mit der Neuerung »IBRS« helfen. Noch ist unklar, ob IBRS eine bessere Lösung ist als Retpolines, und wenn ja, auf welchen Prozessoren. Die Lösung scheint mit erheblichen Leistungseinbußen verbunden und schlecht dokumentiert zu sein.

Die Meltdown-Lücke sollte in Linux 4.15 mit der Kernel Page-Table Isolation (KPTI) erledigt sein. Nach der hastigen Integration in Linux 4.15-rc5 mussten noch ein paar Fehler korrigiert werden, doch ansonsten änderte sich nichts mehr. KPTI kostet, wie inzwischen von mehreren Seiten bestätigt wurde, zwischen 5 und 30 Prozent an Leistung je nach Anwendung. Für Prozessoren, die nicht anfällig sind, beispielsweise die AMD-CPUs, bleibt es deaktiviert, und wer kein Risiko für sich sieht, kann es mit einer Kernel-Option abschalten. In der näheren Zukunft wird noch die Möglichkeit hinzukommen, KPTI für spezifische Prozesse abzuschalten, bei denen die Leistung kritisch ist.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung