Spectre: Wenn Prozessoren beim Raten Geheimnisse verraten
Ein Designfehler in Prozessoren von Intel, AMD und Arm ließ Programme fremden Speicher lesen. Wie er wirkt, was die Fixes kosten und was jetzt zu tun ist.

Sofortmaßnahmen
- Installiere alle Updates für dein Betriebssystem und deinen Browser: Sie enthalten den Schutz gegen Spectre.
- Installiere Prozessor-Updates (Mikrocode), sobald dein Betriebssystem oder der Hersteller deines Geräts sie anbietet.
- Lass die Schutzmaßnahmen eingeschaltet; Linux aktiviert sie auf anfälligen Prozessoren standardmäßig.
- Jahr
- 2018
- CVSS-3.1-Wert
- 5,6 mittel
- Windows-Editionen brauchten Patches; für 41 gab es sie sechs Tage nach der Veröffentlichung
- 45
- Leistungsverlust mit allen Meltdown- und Spectre-Fixes in den von Red Hat getesteten Anwendungen, mit Retpoline
- 1–8 %
- Reichweite erfüllt
Die Lücke steckt in Prozessoren von Intel, AMD und Arm, die in Milliarden von Geräten arbeiten, vom Smartphone bis zum Cloud-Server (Spectre-Studie und Website der Forscher, 2018).
- Massenausnutzung nicht erfüllt
Kein echter Angriff ist bestätigt und keine der beiden Spectre-CVEs steht auf der CISA-Liste ausgenutzter Schwachstellen (NVD, Oktober 2026).
- Schaden nicht erfüllt
Schäden durch Angriffe sind nicht dokumentiert; die Kosten lagen in den Fixes, die manche Systeme langsamer machten.
- Außergewöhnliche Reaktion erfüllt
Fixes von Prozessorherstellern sowie für Betriebssysteme, Compiler und Browser zugleich, mit Windows-Patches für 41 von 45 Editionen binnen sechs Tagen (Microsoft, 9. Januar 2018).
| Betroffen | Prozessoren von Intel, AMD und Arm, in Milliarden von Geräten |
|---|---|
| CVE | CVE-2017-5753, CVE-2017-5715 |
| CVSS-Vektor | CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:C/C:H/I:N/A:N |
| Schwachstellentyp (CWE) | CWE-203 |
| Behoben in | Kein einzelner Fix: Updates für Betriebssysteme, Browser, Compiler und Prozessor-Mikrocode, ab dem 3. Januar 2018 |
| Gefunden von | Google Project Zero und, unabhängig davon, Forscher von Universitäten und Unternehmen |
- 1Dem Hersteller gemeldet
- 2Sechs Tage früher als geplant veröffentlicht, zusammen mit den ersten Updates+216 Tage
- 3Der ursprünglich geplante Termin; Windows-Patches für 41 von 45 Editionen verfügbar+222 Tage
Am 3. Januar 2018 machten Google Project Zero und, unabhängig davon, Forscher mehrerer Universitäten und Unternehmen eine Schwachstelle im Design moderner Prozessoren öffentlich. Die Lücke heißt Spectre. Mit ihr kann ein Programm den Prozessor täuschen. Er gibt dann Speicher preis, den das Programm nie lesen dürfte, etwa Daten des Betriebssystems oder anderer Programme. Die betroffenen Prozessoren von Intel, AMD und Arm stecken in Milliarden von Geräten. Laut Google gab es die Lücke schon seit fast 20 Jahren in den meisten Computern.
Spectre ist kein Fehler in einem einzelnen Produkt, den ein einziges Update beseitigt. Die Lücke liegt in der Arbeitsweise der Prozessoren, deshalb mussten die Fixes von vielen Seiten zugleich kommen.
So funktionierte der Angriff
Um schnell zu sein, wartet ein moderner Prozessor nicht ab, bis er weiß, welchen Weg ein Programm als Nächstes nimmt. Er rät und arbeitet schon voraus. Das nennt man spekulative Ausführung. War die Vermutung falsch, verwirft der Prozessor die Ergebnisse. Er hinterlässt aber Spuren in seinem Cache, einem kleinen, schnellen Speicher, der kürzlich genutzte Daten griffbereit hält.
Spectre gibt es in zwei Varianten. Die erste missbraucht eine Prüfung, die sorgfältige Programme vornehmen. Bevor sie Eintrag Nummer x einer Liste lesen, prüfen sie, ob x innerhalb der Liste liegt. Zuerst trainiert der Angreifer den Prozessor so, dass er mit einer bestandenen Prüfung rechnet. Dann fragt er nach einem Eintrag weit außerhalb der Liste. Während die Prüfung noch läuft, rät der Prozessor und liest ein geheimes Byte hinter dem Ende der Liste. Mit diesem Byte lädt er ein Stück Speicher in den Cache. Das Ergebnis wird verworfen. Doch der Angreifer misst, wie schnell verschiedene Speicherstellen antworten. So erkennt er, welche geladen wurde, und schließt daraus auf das geheime Byte.
Bei der zweiten Variante trainiert der Angreifer die Vermutungen des Prozessors über Sprünge in einem anderen Programm. Das kann das Betriebssystem sein oder ein Hypervisor, die Software, die in einer Cloud die virtuellen Maschinen betreibt. Das Opfer führt dann kurz Codestücke aus, die der Angreifer ausgewählt hat. Sie verraten auf dieselbe Weise Daten.
- Programm des Angreiferstrainiert die Vermutungen des Prozessors
- Prozessorrät falsch und liest vorab ein geheimes Byte
- Cachebehält eine Spur des Bytes
- Zeitmessungschneller und langsamer Speicher verraten das Byte
Das Programm des Angreifers muss schon auf demselben Gerät laufen. Der Angriff ist schwer durchzuführen und kann Daten nur lesen, nicht verändern. Deshalb bewertet die US-amerikanische National Vulnerability Database Spectre nur mit 5,6 von 10. Trotzdem funktionierte der Angriff in den Tests von Google. Mit normalen Benutzerrechten las er den Speicher des Kernels, des Kerns des Betriebssystems, mit etwa 2.000 Byte pro Sekunde. Aus einer virtuellen Maschine heraus las er den Kernel-Speicher des Host-Rechners mit etwa 1.500 Byte pro Sekunde.
Reichweite und Kosten der Fixes
Laut den Forschern ist fast jedes System betroffen: Desktop-PCs, Laptops, Cloud-Server und Smartphones. Die Testangriffe von Google Project Zero liefen auf Prozessoren aller drei Hersteller: einem Intel Xeon, zwei AMD-Prozessoren und dem Arm-Prozessor eines Nexus-5X-Smartphones.
Wurde Spectre schon für echte Angriffe genutzt? Die Antwort der Forscher: „Wir wissen es nicht.“ Kein Angriff ist bestätigt. Keine der beiden Spectre-CVEs steht auf der Liste ausgenutzter Schwachstellen, die die US-Behörde CISA führt. Im Februar 2021 berichtete ein Sicherheitsforscher, dass ein funktionierender Exploit für Linux und Windows bei VirusTotal hochgeladen worden war. Ein Exploit ist ein Programm, das den Angriff ausführt. VirusTotal prüft Dateien auf Schadsoftware. Das ist ein fertiges Werkzeug, kein beobachteter Angriff.
Bezahlt wurde Spectre mit Geschwindigkeit. Manche Fixes hindern Prozessoren daran, bei bestimmten Sprüngen zu raten, oder lassen sie ihre Vermutungen öfter löschen. Das kostet Zeit. Die meisten veröffentlichten Messungen erfassen die Fixes für Spectre und Meltdown zusammen. Meltdown ist eine verwandte Prozessorlücke, die gemeinsam mit Spectre öffentlich wurde.
| Transaktionsdatenbanken, erste Fixes | 19 % | |
|---|---|---|
| Transaktionsdatenbanken, mit Retpoline | 8 % | |
| Datenanalyse und Java, erste Fixes | 7 % | |
| Datenanalyse und Java, mit Retpoline | 5 % | |
| Reine Rechenlast, erste Fixes | 5 % | |
| Reine Rechenlast, mit Retpoline | 2 % |
Red Hat, jeweils das obere Ende der gemessenen Spanne, für den Meltdown-Fix und beide Spectre-Varianten zusammen. Retpoline, unten erklärt, senkte die Kosten. Stand: März 2019.
Microsoft maß auf Windows-10-PCs mit Prozessoren ab etwa 2016 Leistungsverluste im einstelligen Prozentbereich. Ältere PCs und Windows Server wurden stärker gebremst, vor allem, wenn sie viele Daten lasen und schrieben. Google berichtete, es habe seine Fixes in der ganzen Cloud eingespielt, ohne dass Kunden es bemerkten. Es sei keine Support-Anfrage dazu eingegangen.
Die Fixes: viele kleine Reparaturen
Google Project Zero meldete die Sicherheitslücke am 1. Juni 2017 an Intel, AMD und Arm. Eine gemeinsame Veröffentlichung war für den 9. Januar 2018 geplant, doch Google ging sechs Tage früher an die Öffentlichkeit, weil bereits Berichte erschienen waren. Laut Google hatten alle seine Cloud-Dienste bis Dezember 2017 Schutz gegen alle bekannten Varianten.
Die Fixes kamen ab dem 3. Januar 2018 von mehreren Seiten. Es gab Updates für Betriebssysteme und Browser sowie neue Techniken in Compilern, den Werkzeugen, die Quellcode in Programme übersetzen. Mikrocode-Updates ändern das eingebaute Steuerprogramm des Prozessors. Microsoft veröffentlichte seine ersten Updates am 3. Januar. Sechs Tage später gab es über Windows Update Patches für 41 der 45 Windows-Editionen, die Microsoft damals unterstützte.
| Variante | Was der Angreifer ausnutzt | Wichtigste Gegenmaßnahmen |
|---|---|---|
| 1, Umgehung der Grenzprüfung | die Vermutung, dass eine Prüfung an einer Liste gelingt | Barrieren oder Maskierung im Programmcode und damit neu übersetzte Programme |
| 2, Einschleusen von Sprungzielen | die Vermutungen über Sprünge in anderen Programmen | Retpoline in der Software oder neue Prozessorsteuerungen per Mikrocode |
Retpoline schreibt Sprünge in einem Programm so um, dass die Vermutungen des Prozessors in einer harmlosen Schleife enden. Laut Google schützt die Technik vollständig vor der zweiten Variante, ohne die Leistung für die Kunden zu beeinträchtigen. Der Linux-Kernel schaltet sie auf anfälligen Prozessoren standardmäßig ein. Neuere Prozessoren haben eine Hardwarefunktion namens Enhanced IBRS, die das Raten bei Sprüngen begrenzt. Die Kernel-Dokumentation beschreibt sie als effizienter als Retpoline.
Weiterlesen: MeltdownZurück: MikroTik WinboxÜbersicht: Schwachstellen