Sicherheit
23.04.2018
Leistungseinbußen und Ausfälle
1. Teil: „Das sind die Folgen von Meltdown und Spectre“

Das sind die Folgen von Meltdown und Spectre

Meltdown und SpectreMeltdown und SpectreMeltdown und Spectre
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.
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.
Tabelle:

2. Teil: „Patches machen Probleme“

Patches machen Probleme

Cloud-Provider und Rechenzentrumsbetreiber hatten deshalb von Anfang an auch das größte Interesse daran, Patches so schnell wie möglich einzuspielen. Wirklich beheben lassen sich die Hardware-Schwachstellen dadurch zwar nicht, dazu müsste man die spekulative Ausführung oder auch das Hyperthreading komplett ausschalten. „Das führt zu massiven Leistungseinbrüchen“, betont Charles Kionga von Bechtle.
Ganz ohne Nebenwirkungen waren die ersten Patches allerdings auch nicht. Von Performance-Einbußen bis zu 50 Prozent, lahmenden SSDs und wiederholten Neustarts wurde berichtet. „Die Reaktion und das Testing der Hersteller waren nicht optimal, obwohl der Fehler schon seit Juni 2017 bekannt gewesen ist“, kritisiert Thilo Langenhorst, Teamleiter für Service & Management bei Axians IT Solutions. Die Auswirkungen hängen dabei stark von den Work­loads und deren Nutzung von I/O-Subsystemen oder Systemaufrufen ab, ergänzt Alan Priestley, Research Director,Technology & Service Providers bei Gartner: „Die Maßnahmen haben einen Einfluss auf die Performance, das ist mittlerweile gut dokumentiert.“
Langenhorst ist allerdings zuversichtlich, dass die Probleme schnell in den Griff zu bekommen sind: „Die Nacharbeiten sind in vollem Gange und es ist zu erwarten, dass alle Systeme in Kürze voll funktionsfähig gepatcht werden können.“
Nur wenige Cloud-Provider und Rechenzentrumsbetreiber wollten konkret zu den Auswirkungen der Patches auf ihre Infrastruktur Stellung nehmen. Amazon Web Services (AWS) hat nach eigenen Angaben bei der Mehrzahl der EC2-Instanzen keine Beeinträchtigungen beobachtet. „Für die geringe Anzahl der Fälle, bei denen wir Abstürze oder unvorhergesehene Effekte festgestellt haben, haben wir am 12. Januar 2018 die betroffenen Teile des neuen Intel-CPU-Microcodes de­aktiviert. Dadurch konnten diese Effekte beseitigt werden“, heißt es in einem Statement des Providers.
Manfred Kessler, CEO des Cloud-Anbieters Global Access Services, konnte keine Auswirkungen auf Verfügbarkeit und Sicherheit feststellen. „Die eingespielten Fixes der Hersteller führten jedoch zu einem erhöhten personellen Aufwand unserer IT-Abteilung und zu einer Zunahme der Prozessorbelastung um circa 7 Prozent“, berichtet Kessler. Im Internet äußern sich zudem eine Reihe weiterer Unternehmen zu den Auswirkungen.
Patch-Probleme vermeiden
Was Rechenzentrumsbetreiber tun sollten:
  • Überwachen Sie die Antwortzeiten Ihrer Systeme unter verschiedenen Lastbedingungen.
  • Prüfen Sie die Dimensionierung Ihrer virtuellen Maschinen und passen Sie diese gegebenenfalls an.
  • Analysieren Sie bei Problemen das Systemverhalten und finden Sie durch eine Drilldown-Analyse den verursachenden Prozess.
  • Monitoren Sie auch Ihre Cloud-Instanzen auf Verände­rungen in Leistung und Antwortverhalten.
3. Teil: „Was Provider tun sollten“

Was Provider tun sollten

Gartner-Research-Director Priestley rät, zumindest die am höchsten gefährdeten Server zu aktualisieren: „Für die meisten Rechenzen­trumsbetreiber empfiehlt sich ein sorgfältig geplanter Roll-out der Patches, wobei Risiko und potenzielle Leistungseinbußen für jeden Work­load einzeln betrachtet werden sollten.“ Eine wirkliche Alternative zum Patchen sieht Priestley nicht: „Die Mikroprozessor-Hersteller werden voraussichtlich nicht vor Ende dieses Jahres redesignte CPUs herausbringen, die nicht anfällig für die Exploits sind.“

Die Aktualisierung muss auf folgenden Ebenen erfolgen:

Hardware: AMD, Intel, IBM und weitere Hersteller haben Microcode- beziehungsweise Firmware-Aktualisierungen veröffentlicht, für einige Mainboard-Systeme stehen zudem BIOS-Updates zur Verfügung.
Die ersten Patch-Versionen waren häufig Schnellschüsse, die erhebliche Probleme mit sich brachten und wieder zurückgezogen wurden. Aktuelle Versionen sollten nur noch geringe Auswirkungen auf die Performance der Systeme haben. Noch liegen aber nicht für alle betroffenen Systeme und Versionen funktionsfähige Patches vor, gerade im BIOS-Bereich ist die Situation unübersichtlich. Anders als bei den Betriebssystemen werden BIOS-Updates nicht automatisch eingespielt, sondern müssen aktiv gesucht und geladen werden.
Axians-Experte Langenhorst sieht die Anbieter in der Pflicht: „Alle Hersteller müssen Supportanfragen bezüglich Verfügbarkeit beantworten.“
Betriebssystem: Für Windows 7, 8.1 und 10 liegen Updates vor, ebenso für Windows Server 2008 R2 und 2012 R2. Apple hat entsprechende Patches in Mac OS X 10.13.2 und iOS 11.2.2 integriert. Für die Linux-Kernel-Versionen 4.14 und 4.15 sowie für die Distributionen Debian GNU, Red Hat Enterprise Linux (RHEL), Suse und Ubuntu sind ebenfalls Updates vorhanden. Für Android wurden die Patches mit dem Security Patch Level (SPL) 2018-01-05 ausgeliefert, das Google bereits im Dezember 2017 an die Partner verteilt hatte.
Axians-Mitarbeiter Langenhorst rät, auch an Hyperconverged- und Storage-Lösungen von Cisco, IBM, EMC und anderen zu denken: „Alles, was auf x64-, x86- und ARM-Systemen läuft, ist betroffen.“ Auf Windows-Systemen kann allerdings Antiviren-Software Probleme bereiten, die unter Umständen eine Aktivierung der Patches verhindert. Antiviren-Programme sollten daher vor dem Betriebssystem-Update auf den neuesten Stand gebracht werden. Mit dem PowerShell-Skript Speculation Control Validation lässt sich überprüfen, ob der Schutz erfolgreich aktiviert werden konnte.
Hypervisor: Für VMware ESXi, Xen, und XenServer liegen Patches vor oder sind zumindest in Vorbereitung. Hyper-V wurde mit den Windows-Server-Versionen gepatcht.
Applikationen: Die wichtigsten Browser sind mittlerweile gepatcht. Mozilla Firefox ab Version 57.0.4, Google Chrome 64 und Apple Safari ab 11.0.2 enthalten entsprechende Sicherheits-Updates, Microsoft hat die Programme Edge und Internet Explorer 11 aktualisiert und für Opera 50 liegt ebenfalls ein Patch vor.
Linux-Entwickler sollten außerdem ihre Programme mit einem aktuellen Compiler neu kompilieren, der die von Google entwickelte Technik Retpoline (Return Trampoline) unterstützt. Sie soll vor Spectre-2-Angriffen schützen, ohne die Performance nennenswert zu beeinträchtigen.
Thilo Langenhorst von Axians empfiehlt darüber hinaus, den Perimeter-Schutz durch Firewalls, privilegierte Administrationssysteme und Berechtigungen zu auditieren, um Zugriffe von außen so schwierig wie möglich zu machen. „Da­rüber hinaus ist ein Penetrationstest nie verkehrt“, so der Teamleiter. Mitarbeiter sollten zudem für die Gefahren sensibilisiert werden, die von E-Mail-Anhängen und Social Engineering ausgehen.
4. Teil: „Die Rolle des Kunden“

Die Rolle des Kunden

Cloud- und Rechenzentrumsbetreiber stehen in der Pflicht, ihre Infrastruktur so weit wie möglich zu schützen. „Die großen Cloud-Provider Amazon, Google und Microsoft haben be­reits bekannt gegeben, dass ihre Umgebungen vor Spectre und Meltdown sicher sind“, erklärt Bechtle-Consultant Kionga. „Bei anderen Cloud- und RZ-Betreibern sollten sich die Kunden aktiv über den Stand der Sicherheitsmaßnahmen in­formieren.“
Das Bundesamt für Sicherheit in der Informationstechnik (BSI) hat mit dem Standard C5 einen Anforderungskatalog entwickelt, der ganz grundsätzlich aufzeigt, über welche Sicherheitseigenschaften ein Cloud-Dienst verfügen sollte. „Die Nutzung von Cloud-Diensten ist mit Risiken und Vorteilen verbunden, die vom jeweiligen Kunden geeignet gewichtet werden müssen“, erklärt ein Sprecher des BSI gegenüber com! professional, „er muss dazu eine entsprechende Risikoanalyse durchführen.“
Da die Infrastrukturanbieter jedoch nur Angriffe zwischen virtuellen Maschinen absichern können, sind laut Kionga weitere Maßnahmen nötig: „Kunden müssen nach wie vor Hersteller-Patches bei ihren virtuellen Maschinen aufspielen, um Angriffe innerhalb der VM wirksam zu unterbinden.“ AWS empfiehlt Nutzern außerdem, von paravirtualisierten Instanzen (PV) auf HVMs (Hardware Virtual Machine) umzusteigen, um auch Prozesse, die innerhalb derselben Instanz laufen, wirkungsvoll gegeneinander absichern zu können. „Auch wenn unsere Hypervisor-Patches dafür sorgen, dass kein Speicher zwischen virtuellen Maschinen ausgelesen werden kann, sollten Kunden ihre Betriebssysteme patchen, um Angriffsszenarien abzudecken, bei denen Speicher zwischen Prozessen oder dem Kernel innerhalb ihrer Instanzen betroffen sein könnte“, rät der Cloud-Anbieter weiter.

Fazit

Die eigentlich bewährte Sicherheitsstrategie, Patches möglichst zeitnah einzuspielen, hat bei den Updates gegen Meltdown- und Spectre-Angriffe zum Teil zu erheblichen Problemen geführt. Dennoch bleibt Administratoren und IT-Verantwortlichen in Rechenzentren wohl gar nichts anderes übrig, als ihre Systeme immer auf dem neuesten Stand zu halten. Eine zweigleisige Strategie mit einem Failover-Konzept, bei dem zunächst nur ein Teil der Server gepatcht wird, kann die Folgen fehlerhafter Patches begrenzen.
Rechenzentrumsbetreiber sollten ihre Systeme außerdem lückenlos und in Echtzeit überwachen, um auf Probleme so schnell wie möglich reagieren zu können. Abwarten ist dagegen keine wirkliche Alternative. „Ein Ausfall von ein paar Systemen wiegt nicht so schwer, wie die Übernahme der gesamten IT Infrastruktur durch dritte unbefugte Personen“, so die Einschätzung von Thilo Langenhorst von Axians IT Solutions.
Auswirkungen der Patches

mehr zum Thema