zurück zum Artikel

SWAPGS: Details und Updates zur neuen Spectre-Lücke in Intel-Prozessoren

Olivia von Westernhagen
SWAPGS: Details und Updates zur neuen Spectre-Lücke

(Bild: Shutterstock / Skorzewiak)

Für eine neue, SWAPGS getaufte Intel-Lücke stehen Windows-Software-Updates bereit. Microcode-Updates sind diesmal nicht erforderlich.

Nachdem vor einigen Stunden das Vorhandensein einer neuen, Spectre-artigen Sicherheitslücke in Intel-Prozessoren bekannt wurde, hat Sicherheitssoftware-Hersteller Bitdefender nun weitere Details zur Lücke veröffentlicht. Zudem hat Microsoft Updates für mehrere Windows-Versionen bereitgestellt. Auch der Hauptentwicklungszweig des Linux-Kernels wurde gegen Angriffe abgesichert.

Die neue Angriffstechnik ist nach dem Assemblerbefehl SWAPGS benannt, trägt die CVE-Kennung CVE-2019-1125 [1] und basiert wie schon Spectre auf der spekulativen Ausführung von Befehlen (speculative execution). Sie betrifft laut Bitdefender sämtliche Intel-CPUs seit Ivy Bridge von 2012/13 und kann als neue Variante von Spectre Variante 1 (Bounds Check Bypass, CVE-2017-5753 [2]) betrachtet werden.

Der SWAPGS-Angriff ist nur lokal ausführbar. Dabei dient der (nur auf x86-64-Systemen verfügbare) SWAPGS-Befehl dem Angreifer als "Brücke" vom User- in den Kernel-Mode. Der Kernel des Betriebssystems führt SWAPGS beim Wechsel in den Kernel-Mode aus, um den aktuellen Wert im GS-Register durch einen Wert zu ersetzen, der auf Daten im Kernel-Speicher verweist.

Bitdefender beschreibt in einem Whitepaper [3]verschiedene Ansätze, wie Angreifer die spekulative Ausführung von SWAPGS ausnutzen könnten, um – unter Umgehung des Schutzmechanismus der Kernel-Adressverwürfelung (KASLR) – kleine Teile des Kernel-Speichers auszulesen.

Weitere Details nennt Microsoft in einem Sicherheitshinweis zu CVE-2019-1125 [4]: Um die Lücke auszunutzen, müsse sich ein Angreifer am verwundbaren System anmelden und eine speziell präparierte Anwendung ausführen. Die Lücke würde ihm zwar nicht die unmittelbare Erweiterung seiner Nutzerrechte erlauben; allerdings könne er möglicherweise Informationen abgreifen, mit denen sich das System noch weiter kompromittieren ließe.

Das Bitdefender-Team unterscheidet im Whitepaper zwischen zwei Angriffsszenarien ("SWAPGS not getting speculatively executed when it should" und "SWAPGS getting speculatively executed when it shouldn't"), von denen das zweite noch einmal in zwei Varianten unterteilt ist.

Wer erwägt, weitere Details in Bitdefenders Whitepaper nachzulesen, sollte dabei aber auch die Gefahreneinstufung für CVE-2019-1125 im Hinterkopf behalten. Während die CVE-Nummer in der National Vulnerability Database derzeit noch fehlt [5], findet sich im bereits erwähnten Sicherheitshinweis von Microsoft ein CVSS-Score von lediglich 5.6 ("medium"). Auch in einem Artikel von Softwareentwickler Red Hat [6] ist die Rede von einem "moderate impact".

Über Angriffe "in freier Wildbahn" ist bislang nichts bekannt.

Bitdefenders Whitepaper zum SWAPGS-Angriff zufolge hat das Team ihn auch an zwei AMD-Prozessoren (AMD64 Family 16 Model 2 Stepping 3 AuthenticAMD und AMD64 Family 15 Model 6) getestet und dabei festgestellt, dass diese nicht anfällig sind.

AMD hat eine eigene Stellungnahme zu SWAPGS veröffentlicht [7]. Der Hersteller differenziert darin zwischen den zwei von Bitdefender aufgeschlüsselten Angriffsvarianten. Im Falle von Szenario 1 und Szenario 2, Variante 1 ist er der Ansicht, dass seine Produkte nicht verwundbar seien ("AMD believed not impacted").

Im Falle von Szenario 2, Variante 2 verweist AMD auf die bereits existierenden Updates und Patches gegen Spectre: "AMD recommends implementing existing mitigations for Spectre variant 1". Dazu muss man allerdings auch anmerken, dass die Ausnutzung jener "Variante 2" auch von Bitdefender selbst als "rein theoretisch" beziehungsweise "in der Praxis nicht möglich" eingeschätzt wird.

Da der SWAPGS-Befehl nur auf x86-64-Systemen verfügbar ist, glaubt Bitdefender nicht, dass auch andere Architekturen wie ARM, MIPS, POWER, SPARC oder RISC-V anfällig für die neu entdeckten Angriffsszenarien sein könnten.

Microsoft hat die Verwundbarkeit von Windows via CVE-2019-1125 bestätigt und im Sicherheitshinweis [8] Update-Links für Windows 7, 8.1, 10 und mehrere Server-Versionen aufgeführt.

Die Software-Updates, auf den die Links verweisen, sind (wohl in Absprache mit dem Bitdefender-Team) bereits seit Anfang Juli verfügbar. Sie sollen Angriffe via SWAPGS unterbinden, indem sie Einfluss auf die spekulativen Speicherzugriffe der CPU nehmen.

Microsoft betont, dass im Falle dieser neuen Spectre-V1-Variante keine (zusätzlichen) Microcode-Updates benötigt würden. Dem stimmt auch Intel in einem eigenen Advisory zu [9]. Der Hardware-Hersteller plant dementsprechend nicht, eigene Updates zu veröffentlichen.

Nach Einschätzung von Bitdefender sind Linux-Systeme mittels SWAPGS nur sehr schwierig, möglicherweise auch gar nicht angreifbar. Die Entwickler von Red Hat teilen diese Einschätzung: In ihrem Sicherheitshinweis zu CVE-2019-1125 [10] schreiben sie, dass ihnen derzeit kein Angriffsweg für den Linux-Kernel bekannt sei.

Wohl eher der Vollständigkeit halber haben aber auch die Linux-Kernel-Entwickler nachgebessert und Abhilfemaßnahmen in den Hauptentwicklungszweig des Linux-Kernels [11] integriert, die auch in die parallel erschienen Linux-Versionen 5.2.7, 4.19.65 und 4.14.137 einflossen. Nun sind die Distributions-Entwickler am Zug; Linux-Nutzer sollten Ausschau nach Sicherheitshinweisen zu CVE-2019-1125 und entsprechenden Updates halten.

Für SUSE gibt es neben einem Sicherheitshinweis [12] bereits aktualisierte Packages [13]. Auch Debian [14] und Ubuntu [15] haben Security-/CVE-Tracker-Einträge für die Lücke angelegt.

Bitdefender gibt an, auch eine kurze Analyse der Typ-1-Hypervisoren Hyper-V und Xen durchgeführt und dabei herausgefunden zu haben, dass der SWAPGS-Befehl in beiden nicht verwendet werde. Deshalb sei hier auch kein Exploit möglich.

Noch nicht abschließend geklärt ist die Sicherheitsanfälligkeit von Apple-Geräten. Aus einer FAQ von Bitdefender zum SWAPGS-Angriff [16] geht hervor, dass die Forscher nicht annehmen, dass diese verwundbar seien. Allerdings sei es sinnvoll, zunächst die (noch ausstehende) Stellungnahme des Herstellers abzuwarten.

Update 08.08.19, 16:45: Kleinere Textänderung; Linux-Updates hinzugefügt.

Mehr zum Thema:

(ovw [21])


URL dieses Artikels:
https://www.heise.de/-4489897

Links in diesem Artikel:
[1] https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1125
[2] https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-5753
[3] https://businessresources.bitdefender.com/bypassing-kpti-speculative-behavior-swapgs-instruction
[4] https://portal.msrc.microsoft.com/en-us/security-guidance/advisory/CVE-2019-1125
[5] https://nvd.nist.gov/vuln/detail/CVE-2019-1125
[6] https://portal.msrc.microsoft.com/en-us/security-guidance/advisory/CVE-2019-1125
[7] https://www.amd.com/en/corporate/product-security
[8] https://portal.msrc.microsoft.com/en-us/security-guidance/advisory/CVE-2019-1125
[9] https://software.intel.com/security-software-guidance/insights/more-information-swapgs-and-speculative-only-segment-loads
[10] https://access.redhat.com/articles/4329821
[11] https://git.kernel.org/torvalds/c/4368c4bc9d36821690d6bb2e743d5a075b6ddb55
[12] https://www.suse.com/support/kb/doc/?id=7023930
[13] https://www.suse.com/security/cve/CVE-2019-1125/
[14] https://security-tracker.debian.org/tracker/CVE-2019-1125
[15] https://people.canonical.com/~ubuntu-security/cve/2019/CVE-2019-1125.html
[16] https://www.bitdefender.com/business/swapgs-attack.html
[17] https://www.heise.de/news/Wieder-neue-Spectre-Luecke-in-Intel-Prozessoren-entdeckt-4489559.html
[18] https://www.heise.de/news/Bundesregierung-sieht-Behoerdenrechner-gegen-Meltdown-und-Spectre-gewappnet-4489912.html
[19] https://www.heise.de/hintergrund/Wie-man-sich-vor-Spectre-Meltdown-und-Co-schuetzt-4422450.html
[20] https://www.heise.de/select/ct/2019/3/1549002014398779
[21] mailto:olivia.von.westernhagen@gmail.com