Was ist Meltdown und Spectre?

Eine der größten Neuheiten der Tech-Industrie in den letzten Jahren war die Entdeckung einer Sicherheitslücke in den Prozessoren der Geräte, die wir täglich verwenden. Die Sicherheitsmängel namens Meltdown und Spectre-Designfehler (Hardware-Design), die auf jedem Desktop, Laptop, Tablet oder Telefon verwendet werden können, dessen Prozessoren in den letzten zwei Jahrzehnten entwickelt und hergestellt wurden. Dies bedeutet auch, dass es egal ist, welches Betriebssystem Sie verwenden, Sie können ausgenutzt werden.

Die einfachste Erklärung dafür, was eine Kombination dieser beiden Fehler bewirken könnte, sind zwei Dinge: Verlangsamen Sie Ihren Computer und geben Sie dem Angreifer Zugriff auf Ihre persönlichen Daten. Die technischen Details finden Sie unten.

Wie bereits erwähnt, können diese Exploits aufgrund von Hardware-Designfehlern in den Chips verwendet werden. Zunächst entdeckten die Forscher drei Fehler, von denen zwei Specter und der dritte Meltdown sind. Damit ein Angreifer auf Ihre Daten zugreifen kann, müsste er zwei Techniken nutzen, die Ihren PC beschleunigen. Das sind spekulative Ausführung und Zwischenspeicherung.

Spekulative Ausführung ist die Fähigkeit des Chips, die Zukunft zu "erraten", wodurch er schneller rechnen kann. Heutige Chips sind in der Lage, mehr als eine Anweisung gleichzeitig auszuführen. Das heißt, während die CPU die Anweisung ausführt, die als nächstes in der Zeile ausgeführt wird, berechnet oder rät sie die nächste Anweisung. Wenn zum Beispiel eine Situation angenommen wird, in der wir sagen, dass wenn „Himmel ist blau“ wahr ist, drucken Sie sonnig aus oder wenn „Himmel ist blau“ falsch gedruckt ist (dies kann leicht mit ein paar Zeilen Code angezeigt werden, was wir tun werden) nicht tun). Die spekulative Ausführung bewirkt, dass beide Fälle berechnet werden, wenn es wahr ist, und wenn es gleichzeitig falsch ist. Wenn die Bedingung erfüllt ist (sobald „Himmel ist blau“ wahr oder falsch ist), weiß der Chip bereits, was als Nächstes passiert Schritt wird es sein und wird in der Lage sein, es auszuführen, ohne darauf rechnen zu müssen. Ein ähnliches Beispiel ist, wenn der Chip erkennt, dass eine bestimmte Berechnung häufig ausgeführt wird. Er verwendet seine „freie Zeit“, um die Berechnung fortzusetzen. Wenn das Programm benötigt wird, wird sie bereits berechnet.

Caching ist eine Funktion, die das Abrufen von Daten aus dem RAM beschleunigt. Obwohl jedes Gerät über einen RAM verfügt, unabhängig davon, ob es sich um 1 Gigabyte oder 64 handelt, ist die Zeit, die der Chip benötigt, um Daten aus dem eigentlichen RAM zu erhalten, ein langwieriger Prozess (in Computerausdrücken ist dies in unseren Begriffen weniger als ein Wimpernschlag) ein Auge). Das mag nicht lange klingen, aber wenn man bedenkt, dass die CPU jede Sekunde Millionen Berechnungen durchführt und viele Daten benötigt, um Daten zu durchlaufen, wird das Abrufen von Daten aus dem RAM die Dinge sicherlich sehr verlangsamen. Eine Lösung dafür war das Hinzufügen eines RAM-Speichers zum eigentlichen Chip. Obwohl dieser Arbeitsspeicher nur wenige Megabyte beträgt, speichert der Chip Daten, die in naher Zukunft verwendet werden sollen (die nahe Zukunft für einen Chip könnte einige Millisekunden betragen) oder Daten, die von der CPU häufig verwendet werden, um sie im Cache zu speichern .

Das Ausnutzen beider Techniken führt zu einem Problem, sobald sie auf das System zugreifen geschützter Speicher. Eines der wichtigsten Elemente einer PC-Sicherheit ist der geschützte Speicher. Dies bedeutet, dass Teile der Daten geschützt gespeichert werden, und das einzige, auf das sie Zugriff hat, ist das Programm, das sie verwendet. Alle anderen Programme müssen eine Sicherheitsüberprüfung durchlaufen, die als Privilegprüfung bezeichnet wird. Die Überprüfung, ob ein Programm über Zugriffsrechte auf die Daten im geschützten Speicher verfügt, dauert lange, länger als der Zugriff der CPU auf die Daten. Wenn also die Daten im Cache gespeichert sind, beginnt die CPU mit ihrer spekulativen Ausführung mit der Berechnung, speichert sie jedoch weiterhin im Cache. Durch das Ausnutzen dieser Fehler können die Angreifer Ihre Daten nicht sehen, sondern können sie herausfinden, indem Sie die Standorte herausfinden. Dieser Vorgang wird als Seitenkanalangriff bezeichnet.

Meltdown und Spectre können in einer Kombination alles tun, was in den vorherigen Abschnitten erläutert wird. Beide können sich darauf verlassen, dass dies nicht auf andere Weise zugänglich sein sollte. Spectre kann mit einem bestimmten Code, in den meisten Fällen JavaScript, auf einer Website verwendet werden, die Angreifer mit den Anmeldeinformationen versorgen könnte. Andererseits kann Meltdown verwendet werden, um auf andere Programme oder Benutzer auf demselben Computer oder in Situationen, in denen ein virtueller Server gehostet wird, Zugriff auf Daten zu erhalten.

Alle Hersteller führen bereits Updates ein, um die Exploits zu patchen. Google und Firefox haben auch Updates für ihre Browser gesendet, in der Hoffnung, dass sie die Sicherheit verbessern können. Eines muss klar sein:> Dies sind Hardwarefehler, das heißt, dass jegliche Software oder Updates auf der Hardware ausgeführt werden. Ein sicheres Update wird nie veröffentlicht, wird die Hersteller jedoch mit der Reparatur für zukünftige Chips der Generation beschäftigen.

Im nächsten Artikel erklären wir, wie Sie sich vor diesen Exploits so weit wie möglich schützen können.