Leistungseinbußen und Ausfälle

Das sind die Folgen von Meltdown und Spectre

von - 23.04.2018
Meltdown und Spectre
Foto: Jaiz Anuar / shutterstock.com
Cloud- und Rechenzentrums-Provider müssen auf die Bedrohung reagieren – doch wie? Die bereitgestellten Patches haben teilweise zu erheblichen Problemen geführt.
Aus Sicht der IT-Sicherheit fing das Jahr 2018 gar nicht gut an. Die Hardware-Schwachstellen Meltdown und Spectre, die in den meisten aktuellen Prozessoren vorhanden seien, so die Meldungen, ermöglichten es Angreifern, Daten anderer Prozesse oder Nutzer aus dem Speicher auszulesen, für die sie eigentlich keine Zugriffsberechtigungen haben. „In Rechenzentren, speziell in Mehrbenutzer- oder virtualisierten Umgebungen, kann ein Angreifer so auf sensible Daten wie Kennwörter oder geheime Schlüssel zugreifen“, erklärt Charles Kionga, Principal Consultant, Bereichsleitung IT-Security Competence Center Bechtle Internet Security & Services.
Charles Kionga
Charles Kionga
Principal Consultant, Bereichsleitung IT-Security Competence Center BISS beim Bechtle
IT-Systemhaus Neckarsulm
Foto: Bechtle
„Kunden müssen nach wie vor Hersteller-Patches bei ihren virtuellen Maschinen aufspielen, um Angriffe innerhalb der VM wirksam zu unterbinden.“
Genau genommen sind Meltdown und Spectre allerdings keine Schwachstellen oder Sicherheitslücken, sondern Angriffsszenarien, die von der Google-Gruppe Project Zero, dem Unternehmen Cyberus Technology und der Universität Graz entdeckt und beschrieben wurden. Spectre ist zudem ein Sammelbegriff für zwei unterschiedlich funktionierende Methoden, die auch als Spectre 1 und Spectre 2 bezeichnet werden. Die Schwachstellen selbst werden unter den CVE-Nummern (Common Vulnerabilities and Exposures) CVE-2017-5715 (Branch Target Injection), -5753 (Bounds Check Bypass) und -5754 (Rogue Data Cache Load) gelistet.

Schwachstellen-Analyse

Moderne Prozessoren verwenden eine Reihe von Mechanismen, um die Ausführung von Programmen zu beschleunigen, darunter die sogenannte Out-of-Order Execution. Dabei werden Instruktionen in einer anderen als der im Programmcode vorgesehenen Reihenfolge abgearbeitet, wenn sich dadurch die Rechenkapazität besser nutzen lässt. Außerdem versuchen aktuelle CPUs, dem Nutzer immer einen Schritt voraus zu sein, um so schneller Ergebnisse zu liefern. Dafür laden sie auf Basis des Nutzerverhaltens spekulativ Daten in den Cache, die der Anwender noch gar nicht angefordert hat, Speculative Execution genannt.
Diese Mechanismen werden von den Angriffszenarien ausgenutzt. Bei Meltdown fordert ein Nutzer Daten von einer Kernel-Adresse eines anderen Nutzers an. Der Prozessor prüft, ob der Anwender berechtigt ist, auf die Adresse zuzugreifen (Permission Check). Da dies nicht der Fall ist, blockt er den Zugriff ab. Aufgrund der nicht linearen und spekulativen Ausführung wurden die angeforderten Daten aber womöglich bereits in den Cache geladen, bevor der Zugriff verweigert wird. Aus diesem kann der Angreifer sie dann auslesen.
Spectre nutzt für den Angriff die Eigenschaft der Prozessoren, Sprungmarken vorherzusehen (Branch Prediction). Dabei kann in Variante 1 der Code auch über interpretierte Sprachen wie Javascript untergeschoben werden, was einen Angriff über Browser möglich macht. So könnte ein Angreifer Daten eines Prozesses auslesen, der gerade in einem anderen Fenster oder Tab des Browsers ausgeführt wird. Variante 2 ermöglicht es dem Angreifer, in einer virtuellen Umgebung einer „Opfer-VM“ Code unterzuschieben und ihn dort ausführen zu lassen.
Auch wenn Meltdown und Spectre große öffentliche Aufmerksamkeit erfahren haben und bis auf wenige Ausnahmen praktisch alle prozessorgesteuerten Endgeräte betroffen sind, bleiben die Auswirkungen auf PCs, Server, Smart­phones oder Tablets überschaubar, so lange sich die Geräte im direkten Zugriff des Nutzers oder Administrators befinden. Spectre 1 funktioniert zwar auch remote über einen Browser, für die gängigen Internetprogramme gibt es mittlerweile aber Patches beziehungsweise neue Versionen, die ein Tab-übergreifendes Auslesen verhindern oder zumindest erschweren. Wer auf Nummer sicher gehen möchte, kann zudem die Ausführung von Javascript verhindern oder mit Zusatzprogrammen wie dem Firefox-Add-on NoScript einschränken.
Wesentlich gravierender sind die Auswirkungen auf Cloud- und Rechenzentrumsumgebungen, in denen viele Nutzer sich über virtuelle Maschinen die Rechenleistung einer CPU teilen. In einer solchen Umgebung wäre es prinzipiell möglich, aus einer virtuellen Maschine heraus die Daten anderer Anwender auszulesen.

Mehr zum Thema Cloud-Strategien erfahren Sie auf der Next IT Con am 25. Juni 2018 in Nürnberg

Cloud Computing ist in der Praxis meist ein komplexer Mix aus Public und Private Clouds, Plattformen und Portalen. Die Next IT Con zeigt, wie sich Cloud-Infrastrukturen effizient planen, aufbauen und managen lassen.

Hier geht's zur Anmeldung

Verwandte Themen