Wieder ein CPU-Loch entdeckt

Seit der Entdeckung von Meltdown und Spectre vor knapp einem Jahr suchen viele Security-Experten nach weiteren Schwachstellen in CPUs. Fünf Forscher der Universitäten von Tampere und Havanna sind nun wieder fündig geworden. Sie nennen ihre Entdeckung "PortSmash". Auf Github haben sie einen "Proof of Concept"-Exploit veröffentlicht. Weitere technische Details wollen sie später auf dem Portal Cryptology ePrint Archive veröffentlichen.
 
Das Sicherheitsproblem betrifft CPUs mit Multi- beziehungsweise Hyper-Threading. Die Lücke erlaubt es, durch einen Schadcode, der in einem Thread auf einem Core einer CPU läuft, Daten aus einem anderen Thread auszulesen. Zwar nicht direkt, aber indem andere Daten aufgezeichnet werden, die es erlauben, Rückschlüsse darauf zu ziehen, was in dem geteilten Core abläuft. Es handelt sich also, wie schon bei Meltdown und Spectre, um einen sogenannten "Side-Channel-Angriff". Aber Side-Channel hin oder her: Den Forschern gelang es, mit ihrem Proof-of-Concept-Code ganz konkret einen OpenSSL Private Key aus einem parallelen Thread abzufangen.
 
Die Forscher haben Kaby Lake und Skylake CPUs von Intel getestet. Sie glauben aber, dass auch CPUs von AMD und anderen Herstellern, die Multithreading erlauben, betroffen sind.
 
Das Sicherheitslücke könnte vor allem in Public-Cloud-Infrastrukturen, wo sich verschiedene Kunden einen physischen Core teilen können, ein Problem sein. Es dürfte aber ziemlich schwierig für Angreifer sein, sich so ein bestimmtes Opfer auszusuchen. Echte Angriffe via PortSmash wurden bisher noch nicht beobachtet.
 
Die Security-Forscher, die PortSmash entdeckt haben, glauben, dass Multi-Threading ein grundsätzliches Sicherheitsproblem darstellt. Sie sind der Meinung, CPU-Hersteller sollten sich andere Methoden einfallen lassen, um die Performance zu erhöhen.
 
Intel wurde über die Lücke informiert und bestätigt in einem Statement zuhanden der Medien ihr Vorhandensein. Firmware-Updates gibt es aber noch keine. Und Intel findet, dass Softwareentwickler ihre Produkte und vor allem Libraries gegen alle sogenannten Side-Channel-Angriffe schützen könnten und sollten. Die OpenSSL-Entwickler haben dies bereits getan und Patches für die Versionen 1.1.1 und 1.1.0i bereitgestellt. Mit diesen Versionen funktioniert der Exploit zum Auslesen eines privaten Schlüssels nicht mehr. (hjm)