Neue Schwachstelle in Intel-CPUs: Hyper-Threading anfällig für Datenleck
Forscher demonstrieren einen neuen CPU-Bug bei aktuellen Intel-Prozessoren, über den sich Daten aus einem benachbarten Thread auslesen lassen.
Eine Forschergruppe hat in aktuellen Intel-CPUs eine neue Schwachstelle (CVE-2018-5407) entdeckt, über die Schadcode beliebige Daten eines anderen Prozesses auslesen kann. Der Seitenkanalangriff richtet sich auf simultanes Multi-Threading (SMT), das Intel unter der Bezeichnung Hyper-Threading implementiert, und kann Daten eines zweiten Threads auf demselben CPU-Kern mitschneiden. Bisherigen Informationen zufolge ist eine erfolgreiche Attacke aber äußerst komplex und das Angriffsrisiko gilt als "moderat" (CVSS v3 Score 4.8 von 10).
AMD-CPUs vermutlich ebenfalls betroffen
Die fünf Forscher von den Universitäten in Tampere (Finnland) und Havanna (Kuba) gehen davon aus, dass die "PortSmash" getaufte Schwachstelle grundsätzlich alle CPUs mit SMT-Architektur gefährden kann. Getestet haben sie ihre Entdeckung an Intel-CPUs der Skylake- und Kaby-Lake-Mikroarchitekturen. Weitere CPU-Architekturen mit SMT, insbesondere AMDs Ryzen, wollen sich die Forscher als nächstes vornehmen. Jedoch sei Billy Brumley, einer der Beteiligten, bereits davon überzeugt, dass AMD-CPUs ebenfalls anfällig sind, schreibt ZDNet.
Beim gleichzeitigen Ausführen mehrerer Threads auf demselben CPU-Kern kann entsprechender Schadcode in einem Thread Daten aus einem anderen Thread auslesen. Der Proof-of-Concept-Code zu PortSmash (den die Forscher bereits auf GitHub bereitgestellt haben) liest einen P-384-Private-Key einer TLS-Verschlüsselung mit OpenSSL (bis Version 1.1.0h) aus. Weitere technische Details zu PortSmash dürfte die Veröffentlichung der Forscher liefern, die in Kürze unter dem Titel "Port Contention for Fun and Profit" beim Cryptology ePrint Archive verfügbar sein soll.
Gefahr vor allem in Cloud-Umgebungen
Brumley erläuterte auf ZDNet, dass PortSmash im Userspace laufe und keine Root-Privilegien benötige. Der Angriff gelte weder dem Hauptspeicher noch dem Cache. Die Forscher untersuchten vielmehr die Mitbenutzung der Ausführungseinheit einer CPU und ermittelten aus der auftretenden Port Contention (daher die Bezeichnung PortSmash) ein Timing, das ihnen den Seitenkanalangriff erlaubte. Eine große Angriffsfläche sieht Brumley vor allem in IaaS-Umgebungen (Infrastructure as a Service), in denen virtuelle Maschinen mehrerer Cloud-Kunden sich – trotz logischer Separierung – physische CPU-Kerne teilen müssen.
Intel hat das Problem mittlerweile bestätigt, sich aber noch nicht zu möglicher Abhilfe von eigener Seite geäußert, berichtet Ars Technica. Vielmehr sollten Software-Entwickler (insbesondere Entwickler von Bibliotheken) darauf achten, möglichen Seitenkanalangriffen vorzubeugen. Die OpenSSL-Entwickler haben bereits reagiert und Patches für die Versionen 1.1.1 und 1.1.0i bereitgestellt.
Im Sommer war ebenfalls ein Seitenkanalangriff auf Intel-CPUs unter der Bezeichnung TLBleed bekannt geworden, der gleichfalls auf Hyper-Threading abzielte, aber außerdem auf Informationen aus dem Translation Lookaside Buffer (einem Cache-Bestandteil) angewiesen war. Im Lichte der zuvor bekannt gewordenen Spectre-Lücken entschied sich das OpenBSD-Entwicklerteam zu dem radikalen Schritt, Hyper-Threading in ihrer Distribution standardmäßig abzuschalten – dazu raten derzeit auch die PortSmash-Entdecker.
[UPDATE, 05.11.2018 10:20 Uhr]
Fließtext um die CVE-Nummer und eine Einschätzung des Angriffsrisikos ergänzt. (tiw)