Fehler in der Hardware-Architektur von Prozessoren bieten mögliche Einfallstore für Angreifer.

Bild: Pixabay, bartekhdd

Hardware-Schwachstellen aufspüren Mehr Prozessoren von Sicherheitslücken betroffen als gedacht

29.03.2019

Als Forscher 2018 die Sicherheitslücken Meltdown und Spectre bei bestimmten Prozessoren entdeckten, waren vor allem Chiphersteller von High-End-Prozessoren wie Intel betroffen. Ähnliche Lücken gibt es jedoch auch bei anderen Prozessoren, beispielsweise solchen, die bei der Sicherheit des autonomen Fahrens eine Rolle spielen. Ein neues Verfahren spürt diese Schwachstellen bereits in der Entwicklung auf.

Bei den beiden Angriffsszenarien aus dem vergangenen Jahr spielten sogenannte Seitenkanäle oder verdeckte Kanäle eine zentrale Rolle. Diese Schwachstellen in der Hardware-Architektur können Angreifer ausnutzen. „Dazu braucht man keine administrativen Rechte und muss nicht einmal physischen Zugang zum Prozessor haben. Es genügt, ein Programm mit Benutzerrechten zur Ausführung zu bringen“, schildert Prof. Dr. Wolfgang Kunz, der an der Technischen Universität Kaiserslautern (TUK) den Lehrstuhl für Entwurf Informationstechnischer Systeme innehat. „Man nutzt Nebeneffekte wie beispielsweise Zugriffskonflikte im Speicher, die Auswirkungen auf das zeitliche Verhalten des Programmablaufs haben. Damit kann man dann Rückschlüsse auf den vertraulichen Inhalt des Speichers ziehen.“ So ist es etwa möglich, an Passwörter oder verschlüsselte Daten zu gelangen.

Von dieser Sicherheitslücke betroffen waren (und sind es zum Teil immer noch) vor allem High-End-Prozessoren großer US-amerikanischer Chiphersteller. Diese setzen auf eine sogenannte out-of-order execution, bei der Arbeitsschritte in günstigerer Abfolge erfolgen können, als es vom Programmierer festgelegt wurde. Auf diese Weise lässt sich die Leistung des Rechners verbessern, da ein höherer Grad an Parallelität bei der Programmausführung erreicht werden kann. Allerdings entstehen dabei auch Nebeneffekte, die Angreifer für sich nutzen können.

Auch der Consumer-Bereich ist betroffen

Ähnliche Lücken gibt es ebenso bei anderen Prozessoren, die eine einfachere Hardware-Architektur besitzen. Das haben die Kaiserslauterer Forscher Mohammad R. Fadiheh, Dominik Stoffel und Prof. Kunz mit ihren Kollegen Clark Barrett und Subhasish Mitra von der US-amerikanischen Stanford University kürzlich nachgewiesen. Mit der von ihnen entwickelten Orc Attack – abgeleitet vom englischen Technikbegriff „orchestration“ – haben sie hier einen solchen Seitenkanal gezeigt. „Dadurch ist es im Prinzip möglich, auch bei der Programmausführung auf einfachen Prozessoren, wie sie in vielen Anwendungen des täglichen Lebens weit verbreitet sind, vertrauliche Daten abzugreifen“, sagt Kunz.

Betroffen von dieser Problematik könnten sehr viele Anwendungsbereiche sein. „Solche Mikrochips kommen oft in Embedded Systems, eingebetteten Systemen, zum Einsatz“, so Fadiheh. Sie steuern technische Systeme in den verschiedensten Anwendungsgebieten, sei es in der Unterhaltungselektronik, der Medizintechnik, der Telekommunikation, dem Smart Home, der Gebäude- oder der Produktionsautomatisierung hin zu einer Smart Factory. Viele dieser Bereiche sind besonders sicherheitsrelevant, wie etwa das autonome Fahren oder das IoT, bei dem verschiedene Geräte miteinander vernetzt sind und Daten austauschen.

Lücken schon beim Entwickeln schließen

Abhilfe bei dieser Sicherheitslücke soll ein neues Rechenverfahren schaffen, das die Wissenschaftler der TUK mit ihren amerikanischen Kollegen entwickelt und Unique Program Execution Checking (UPEC) genannt haben. „Wir haben anhand eines frei zugänglichen, sogenannten Open-Source-Prozessors gezeigt, dass solche kritischen Stellen in gängigen Entwürfen leicht möglich sind“, so Ingenieur Fadiheh weiter. Wie viele Prozessoren in der Praxis tatsächlich betroffen sind, ist nicht bekannt. Dazu müssten Hersteller das UPEC-Verfahren bei den Entwurfsdaten ihrer verschiedenen Prozessormodelle anwenden. Diese Daten sind jedoch Betriebsgeheimnisse der Hersteller und nur diesen zugänglich.

Designer und Entwickler von Prozessoren könnten die Methode künftig nutzen, wenn sie an der Architektur der Hardware arbeiten. „Damit können sie einfach testen, ob es solche Angriffspunkte gibt und ob eine Lücke vorhanden ist oder nicht“, ergänzt Forscherkollege Mitra. „Die Lücke ließe sich damit direkt beim Entwickeln schließen.“

Die Forscher haben UPEC entwickelt, indem sie eine formale Verifikationsumgebung des Software-Unternehmens Onespin Solutions erweitert haben. Sie wird in der Industrie normalerweise dazu eingesetzt, funktionale Bugs, also Fehlverhalten in Hardwaresystemen aufzuspüren. Durch die Erweiterung mit UPEC soll die Verifikationsumgebung künftig auch Sicherheitslücken durch Seitenkanäle erkennen können.

Bildergalerie

  • Die Kaiserslauterer Forscher Mohammad R. Fadiheh, Prof. Wolfgang Kunz und Dominik Stoffel (von links nach rechts) haben mit ihren Kollegen aus Stanford das Rechenverfahren entwickelt.

    Bild: Koziel, TUK

  • Das Team um den Stanforder Kollegen Subhasish Mitra war an der Entwicklung beteiligt.

    Bild: Universität Stanford

Firmen zu diesem Artikel
Verwandte Artikel