Erinnert sich noch jemand an Meltdown und Spectre? Nene, das war kein Komikerduo aus dem 80ern, sondern Anfang 2018 bekanntgewordene eklatante Sicherheitslücken in den meisten der in letzten rund 20 Jahren verkauften Prozessoren. Es ist zwar still geworden um diese Verwundbarkeiten, aus der Welt sind sie damit aber nicht.
Sicherheitsmaßnahmen greifen zu kurz
Gerade stellt sich heraus, dass die gegen Spectre V2 ergriffenen Sicherheitsmaßnahmen die Lücke bei älteren CPUs nicht komplett schließen. Dabei geht es um Intel Core CPUs der Generationen 6 bis 8 und AMD Zen 1, 1+ und 2.Der neuen Verwundbarkeit, die an der ETH Zürich entdeckt wurde, wurde der Name RETBleed (PDF) mitgegeben. Das ist ein Kofferwort aus RETund Bleed. RET steht in dem Zusammenhang für Return, stark vereinfacht ausgedrückt nach der Ausführung von Instruktionen für die Rückkehr des Prozessors zum Ausgangspunkt im Programm. Bleed daher, weil die CPU vertrauliche Informationen aus dem Kernel-Adressraum des RAM ausbluten kann, analog zur Sicherheitslücke Heartbleed bei OpenSSL.
Kaum Gefahr für Home-Computing
Die Schwachstellen wurden als CVE-2022-29901 für Intel und CVE-2022-2990 für AMD katalogisiert. Die Forscher am ETH wiesen nach, dass die Lücken auch bei mit allen Spectre-Patches versehenen Systemen unabhängig vom Betriebssystem theoretisch ausgenutzt werden können. Die Lücken, die die Seitenkanalangriffsmethode nutzen, sind komplex und stellen wegen des hohen Aufwands für das Home-Computing keine Gefahr dar.
Bereits gepatched
Die 2018 für Spectre entwickelten Gegenmaßnahmen namens Retpoline sorgen dafür, dass indirekte Sprünge und Calls durch RET-Anweisungen ersetzt werden. Das soll verhindern, dass bei der [wiki title=”Speculative_execution”]spekulativen Ausführung[/wiki] Informationen aus dem RAM abgegriffen werden können. Einige CPUs machen falsche Spekulationen nicht vollständig rückgängig und lassen zum Beispiel die Ergebnisse der spekulativen Ausführung im Cache.
Diese bei Google entwickelten Gegenmaßnahmen hatte ihren Preis in einem erhöhten Overhead, der besonders im Cloud-Computing durch Verlangsamung negativ auswirkte. Für Linux-Systeme sind Patches bereits in den Mainline-Kernel eingeflossen und sollten zeitnah zur Verfügung stehen.