Was sind die Spectre- und Meltdown-Sicherheitslücken?

Zwei der am häufigsten veröffentlichten Schwachstellen in den 2010er Jahren waren sehr eng miteinander verbunden. Spectre und Meltdown sind keine Sicherheitslücken in der Software, sondern Schwachstellen im grundlegenden Design von CPUs, die die Behebung des Problems erschweren. Die Probleme selbst sind besonders schwerwiegend und ermöglichen die Offenlegung von Speicher durch andere Anwendungen und das Betriebssystem.

Überblick

CPUs verwenden unglaublich fortschrittliche Designs, um die höchste Leistung zu erzielen, einschließlich Techniken wie spekulative Ausführung und Verzweigungsvorhersage. Bei der spekulativen Ausführung beginnt die CPU mit der Ausführung eines Prozesses, bevor sie weiß, ob dies erforderlich ist, um Zeit zu sparen, wenn sie feststellt, dass dies erforderlich ist. Die Verzweigungsvorhersage ist eine Teilmenge der spekulativen Ausführung, die versucht, das Ergebnis eines Prozesses vorherzusagen und dann beginnt mit der Berechnung des nächsten Schritts basierend auf diesem vorhergesagten Wert, sodass die CPU eine Reihe von Anweisungen ausführen kann Auftrag.

Die Spectre-Sicherheitslücke beruht auf der Implementierung dieser beiden Funktionen. Es ermöglicht einer Anwendung, die in den meisten modernen Software integrierten Speicherisolationstechniken zu durchbrechen, die die Offenlegung von Speicher, einschließlich Geheimnissen wie Passwörtern und Verschlüsselungsschlüsseln, ermöglichen. Eines der Probleme bei Spectre besteht darin, dass auf Daten von Anwendungen zugegriffen werden kann, die keine Sicherheitslücken aufweisen, da nur ein bösartiges Programm erforderlich ist.

Die Meltdown-Schwachstelle basiert auf einigen Speichertechniken sowie dem oben erwähnten spekulativen Ausführungssystem. Es nutzt eine „Race Condition“ zwischen der Prozessausführung und der Berechtigungsprüfung und ermöglicht einem Schadprogramm den Zugriff auf den Speicher anderer Anwendungen und des Betriebssystems.

Tipp: Eine „Rennbedingung“ ist ein Problem, bei dem eine Aufgabe auf eine andere angewiesen sein soll, aber die richtige Ausführungsreihenfolge nicht erzwungen wird. Dies kann dazu führen, dass der „zweite“ Prozess zuerst ausgeführt wird und nicht initialisierten Speicher verwendet, der das Ergebnis des „ersten“ Prozesses hätte enthalten sollen, wodurch der vorherige Inhalt dieses Speichers verloren geht. In diesem speziellen Fall sollte der Prozess nicht ausgeführt werden, bis eine Berechtigungsprüfung bestätigt hat, dass dies zulässig ist, aber die Berechtigungsprüfung kann aufgrund von Leistungsoptimierungen an zweiter Stelle erfolgen.

Auswirkungen

Mitte 2017 entdeckten mehrere Teams unabhängig voneinander sowohl Meltdown als auch Spectre und meldeten sie privat an CPU-Hersteller, die Patches entwickelten. Aufgrund der Patches, die auf Leistungsoptimierungen abzielten, reduzierten sie die Leistung der CPUs um bis zu 30 % im schlimmsten Fall, wobei ein Leistungsabfall von 2 bis 14 % repräsentativer für die Menschen ist Erfahrungen.

Die Schwachstellen betrafen viele x86-CPUs, IBM POWER-CPUs und einige ARM-basierte CPUs. Meltdown betrifft die Hardware, die typischerweise in PCs und Cloud-Servern zu finden ist. Spectre betrifft PCs, Cloud-Server und mobile Geräte. Alle Intel-CPUs von 1995 bis Mitte 2018 waren anfällig für die Probleme (mit Ausnahme der Itanium- und Atom-Linien vor 2013). AMD-CPUs waren von Meltdown nicht betroffen, aber anfällig für Spectre.

Software-Mitigation-Patches wurden von Betriebssystemanbietern entwickelt und veröffentlicht, die die meisten Probleme beheben. Seit Mitte 2018 hat Intel sein CPU-Design aktualisiert, um Hardware-Mitigationen für die Probleme aufzunehmen.

Beide Probleme können über bösartige Webseiten mit erstelltem JavaScript ausgenutzt werden, daher ist es wirklich wichtig, Stellen Sie sicher, dass die Sicherheitspatches auf jedem System installiert sind, auch wenn der Leistungsverlust groß sein wird schwer. Leider können die Probleme nicht mit einem einzigen Patch behoben werden, da es sich um äußerst komplexe Probleme mit tiefen Integration in die Hardware, Sicherheitspatches werden im Laufe der Zeit mit neueren Varianten weiter ausgerollt entdeckt.