4 Jahre Spectre: So steht es um die Sicherheitslücke

Stellen Hardware-Schwachstellen in der CPU eine reale Gefahr für Unternehmen dar?

spectre meltdown

Vier Jahre sind seit der ersten Veröffentlichung der Forschungsergebnisse zu Spectre und Meltdown, zwei Hardware-Schwachstellen in modernen Prozessoren, vergangen. Seither haben Forscher weitere ähnliche Sicherheitslücken entdeckt, die vertrauliche Daten preisgeben könnten. Zur Veranschaulichung präsentierten sie mögliche Angriff-Szenarien unter Einsatz dieser Schwachstellen, obwohl die meisten von ihnen vermutlich niemals in freier Wildbahn eingesetzt werden. In diesem Beitrag möchten wir einen Blick auf den aktuellen Stand der erwähnten Hardwareprobleme und ihren potenziellen Exploit für Angriffe auf Unternehmen werfen.

Spectre und seine Varianten

In der ursprünglichen Bekanntmachung vom August 2018 wurden drei Schwachstellen enthüllt: Spectre v1 und v2 sowie Meltdown. Alle drei Schwachstellen weisen mehrere gemeinsame Merkmale auf:

  • Ihr Exploit umfasst in der Regel die Ausführung von Schadcode auf einem anfälligen System. Am gefährlichsten ist ein Angriff über einen Browser beim Besuch einer „infizierten“ Website.
  • Der Exploit erfordert eine Reihe von Rahmenbedingungen. Der Code der angepeilten Anwendung muss Datenlecks zulassen und über ein sogenanntes „Gadget“ verfügen, über das der Angriff erst ermöglicht wird.
  • Das Datenleck selbst erfolgt über Seitenkanäle. Aus diesem Grund ist die Geschwindigkeit des Datenlecks gering.
  • Ein erfolgreicher Angriff hinterlässt keinerlei Spuren eines unbefugten Datenzugriffs.

Insbesondere diese letzte Eigenschaft hat das Interesse an dieser scheinbar rein theoretischen wissenschaftlichen Arbeit geweckt. In allen Fällen nutzten die Forscher das System zur Sprungvorhersage aus. Dieser Mechanismus wurde bereits vor mehr als 20 Jahren eingeführt und ermöglicht eine Leistungssteigerung, indem eine Reihe von Anweisungen ausgeführt wird, noch bevor eine explizite Aufforderung zur Ausführung durch das Programm erfolgt. Ist die Vorhersage korrekt, werden die Prozessorressourcen effizienter genutzt. Ist die Vorhersage wiederrum falsch, werden die Berechnungen einfach verworfen.

Der PoC für Spectre v1 zeigte, dass der Prozessor Daten liest, die für das Programm nicht zugänglich sein sollten. Diese werden im Cache gespeichert und können von dort über Seitenkanäle abgerufen werden. Dieser Mechanismus galt als sicher, da die fälschlicherweise gelesenen Daten nicht an das Programm übermittelt wurden. Dennoch haben Forscher einen Weg gefunden, diese Daten indirekt einzusehen.

Nach der Veröffentlichung von Analysedaten zu Spectre und Meltdown wurden mehrere weitere ähnliche Sicherheitslücken entdeckt. Und noch heute suchen Forscher nach neuen Methoden zum Extrahieren geheimer Daten, indem sie die Schwachstellen von Prozessoren ausnutzen. Die Übersichtstabelle von Intel listet mehr als 20 dieser Probleme auf, die sich zu den ursprünglichen drei Sicherheitslücken (Spectre v1 & v2 sowie Meltdown) gesellen.

Sagen Sie Spectre den Kampf an

In der Theorie lassen sich drei Möglichkeiten erschliessen, die das Exploit-Risiko einer Prozessor-Schwachstelle minimieren:

1: Anbieter können ein Microcode-Update für vorhandene Prozessoren herausgeben;

2: Sie können neue CPUs modifizieren;

3: Sie können versuchen, das Problem durch Software-Updates zu lösen. In den meisten Fällen ist für ein geringeres Exploit-Risiko eine Kombination aus Firmware- und Software-Updates notwendig. Der neue Mikrocode, der einige der Schwachstellen abdeckt, ist seit der Haswell-Generation 2013 für Intel-Prozessoren verfügbar. Hardwarelösungen wurden erstmals in der achten Generation von Intel-Prozessoren sowie in AMDs Zen 2-CPUs implementiert.

Softwarelösungen können relativ komplex sein: um sich ein genaueres Bild davon zu machen, kann man einen Blick auf die möglichen Modifikationen im Linux-Kernel werfen, die Spectre v1 und v2 verursachen können. Abhängig von den Anforderungen an ein bestimmtes System wurden eine Vielzahl von Maßnahmen diskutiert, darunter die vollständige Deaktivierung der spekulativen Codeausführung mit schwerwiegenden Folgen für die CPU-Leistung.

Für die meisten Unternehmen, deren Geschäftsmodell von der Leistung einer großen Serverflotte abhängt, zählt ein solcher Leistungsabfall zu den schwerwiegendsten Auswirkungen von Anti-Spectre-Maßnahmen. Ein relativ neuer Benchmark auf der Phoronix-Website, der die Leistung verschiedener Serveranwendungen untersucht, zeigt einen Leistungsabfall von durchschnittlich 25%, wenn alle Anti-Spectre-Vorkehrungen im Linux-Betriebssystem aktiviert sind.

Angriffe in der Praxis und Proofs of Concept

Trotz der zahlreichen Angriffsarten ist der Datendiebstahl durch den Einsatz von Spectre noch immer eine Bedrohung, die bislang nur in der Theorie existiert. Obwohl in allen Analysen und Untersuchungen ein Code existiert, der ein mögliches Datenleck vertritt, bedeutet dies nicht, dass der Code gegen ein reales System eingesetzt werden kann. Typische Einschränkungen dieser Demos oder Proofs of Concept sind Folgende:

  • Sie repräsentieren ein zufälliges Datenleck, das möglicherweise keinen praktischen Wert hat, da es sich lediglich um zufällige Informationen handelt, auf die der Angreifer zuvor keinen Zugriff hatte.
  • Forscher haben die idealen Rahmenbedingungen für einen solchen Angriff geschaffen und simuliert. Beispielsweise in Form von unbegrenztem Zugriff auf das System. In diesem Fall ist es nicht notwendig komplexe Datenexfiltrationsmethoden anzuwenden.
  • Das Datenleck ist real, tritt aber unter den gegebenen Bedingungen nur sehr unwahrscheinlich ein.

Die wohl beeindruckendste theoretische Arbeit (in Bezug auf mögliche Folgen der Sicherheitslücke) ist die NetSpectre-Attacke. So gelang es Forschern, einen Remote-Exploit mit Datenexfiltration mit einer Geschwindigkeit von 15 bis 60 Bit pro Stunde zu simulieren. Die Rahmenbedingungen des Angriffs sind klar: eine niedrige Datenübertragungsrate, exfiltrierte Daten mit jeder Menge Junk-Traffic, sowie anfälliger Code auf dem angegriffenen Server, der darüber hinaus „am richtigen Ort“ platziert ist.

Im vergangenen Jahr wurden zwei praktische Angriffe unter idealen ITW-Bedingungen (Into the Wild) vorgestellt. Im März präsentierte Google ein Leaky.page-Konzept: eine Website, die Daten aus dem Arbeitsspeicher extrahieren kann. Im September wurde ein Spook.js-Angriff auf die damalige neueste Version von Google Chrome (92) mit Spectre-Schutz (die Isolation von Websites in separaten Browserprozessen) demonstriert. Diese Methode ermöglichte einen realen Datendiebstahl: Forscher erhielten Zugriff auf Zugangsdaten für ein soziales Netzwerk, Passwort-Manager-Daten und ein Bild, das von einem Benutzer in eine private Cloud hochgeladen wurde. Aber in all diesen Fällen benötigte man für ein erfolgreiches Datenleck eine „infizierte“ Seite, gehostet auf derselben Domain. So erfordert der Diebstahl eines Tumblr-Passworts beispielsweise eine mit bösartigem Javascript-Code versehene Seite im selben sozialen Netzwerk.

Wie gefährlich ist die Bedrohung wirklich?

Spook.js konnte mit einem Software-Patch für den Google Chrome-Browser neutralisiert werden. Daher besteht derzeit keine unmittelbare Exploit-Gefahr von Spectre-Schwachstellen unter realen Bedingungen. Alle bekannten Angriffe sind äußerst komplex und erfordern höchste Kompetenzen des Angreifers.

Die wahrscheinlichsten Proofs of Concept wurden gepatcht, und selbst ohne Patches müssten für einen erfolgreichen Exploit zahlreiche Rahmenbedingungen erfüllt werden. Auch wenn Medienberichte über echte „Spectre-Exploits“ nicht bestätigt wurden, haben Sicherheitsanbieter ihre Lösungen angepasst, um bekannte Angriffe erkennen zu können. Vorhandene Malware-Erkennungsmechanismen können auf diesem Weg zum Schutz Ihres Unternehmens beitragen.

Dennoch sollten wir Spectre nicht vollständig ignorieren und Forschungsarbeiten auch in Zukunft weiterführen. Denn es besteht eine minimale Chance, dass im Laufe der Zeit das „Worst-Case-Szenario“ eintritt: ein Angriff, der keine Installation von Malware erfordert und ein Datenleck ohne bleibende Spuren ermöglicht.

Rein theoretisch ist ein zielgerichteter Angriff über Hardware-Schwachstellen möglich, wenn der Wert der gestohlenen Daten diesen rechtfertigt. Der Schutz vor solchen Risiken erfordert ernsthafte Investitionen in die Identifizierung potenzieller Angriffsvektoren, die Befolgung der Empfehlungen von Betriebssystementwicklern oder die Implementierung einer Schutzlösung, selbst wenn dies einen erheblichen Leistungsabfall zur Folge haben kann. Aber für die meisten Unternehmen sollte es ausreichend sein, sich auf Software- und Betriebssystementwickler, Prozessorhersteller und Sicherheitslösungen zu verlassen.

Tipps