Spectre und Meltdown

Vortrag beim Linux-Workshop Köln am 9. Januar 2018.

Meltdown und Spectre sind die Namen zweier Angriffsvarianten auf Hardware-Schwachstellen in diversen Mikroprozessoren.

Mit Hilfe von Seitenkanalangriffen kann bei Prozessoren, die speculative execution unterstützen, der Inhalt von Speicherbereichen rekonstruiert werden. Die Spectre-Angriffe benötigen dazu geeigneten Programmcode im Adressraum des Opfers, z.B. im Kernel. Bei Meltdown wird zusätzlich eine weitere Schwachstelle in Prozessoren von Intel und ARM ausgenutzt, so dass der Angriff über die Grenzen des Adressraum hinweg funktioniert.

Die Angriffe wurden im Sommer 2017 von verschiedenen Forscherteams untersucht, u.a. im Google Project Zero und an der TU Graz. Im Januar 2018 wurden die Schwachstellen öffentlich.

Die meisten Linux-Distributionen haben mittlerweile ein Security Update für den Kernel herausgegeben, das die KAISER/KPTI Patches beinhaltet. Diese bewirken eine vollständige Trennung von User- und Kernel-Adressraum durch und stellen somit ein Workaround gegen den Meltdown Angriff dar. Allerdings beinträchtigen die Patches die Performance, bei I/O-lastigen Workloads wurden bis zu 50% Performanceverlust gemessen.

Google hat gegen eine Variante des Spectre Angriffs die Retpoline Patches entwickelt. Diese sind noch nicht in die Distributionen eingeflossen. Auch hier wurden teilweise Peformanceverluste gemessen.

Vortragsfolien (PDF, 94 kB)

Weitere Informationen