Fehler in der Architektur: Wissenschaftler haben erneut eine Sicherheitslücke entdeckt, über die sensible Daten aus Intel-Prozessoren ausgelesen werden können. Beim sogenannten ÆPIC Leak können Angreifer eine Funktionsweise eines Controllers ausnutzen, der die Funktion mehrkerniger Prozessoren steuert. Das Problem besteht darin, dass dieser nur Teile eines Zwischenspeichers überschreibt – was übrig bleibt, kann ohne Befugnis ausgelesen werden. Der betroffene Hersteller Intel hat bereits Updates zur Verfügung gestellt, die die Lücke schließen sollen.
Mit Meltdown, Spectre und Zombieload sind bereits mehrere Sicherheitslücken bekannt, die direkt mit modernen Prozessoren zusammenhängen. Eine Gemeinsamkeit dieser Schwachstellen war es, dass Hacker den Zugang über sogenannte Seitenkanäle erhielten. Zu diesen zählen Informationen, die der Prozessor ungewollt bei der Datenverarbeitung preisgibt – wie elektromagnetische Abstrahlung oder Verarbeitungszeiten. Da das Auslesen der Seitenkanäle meist technisch sehr anspruchsvoll ist, mussten die Hacker hierbei ein besonders großes Know-How mitbringen, um sensible Informationen aus den Prozessoren auslesen zu können.
Problem liegt in der Architektur des CPUs
Ein Team um Pietro Borello von der Sapienza Universität in Rom hat nun eine Sicherheitslücke aufgedeckt, die einfacher auszunutzen ist. Durch sie sind geschützte Informationen direkt aus dem Prozessor auslesbar. „Wir konnten erst gar nicht glauben, was wir da entdeckt haben“, sagt Seniorautor Michael Schwarz vom CISPA Helmholtz-Zentrum für Informationssicherheit in Saarbrücken. „Bisher haben wir die größten Sicherheitslücken in der internen und kaum dokumentierten Mikroarchitektur, also der Implementation, vermutet. Jetzt zeigt sich aber, dass ganz ähnliche Fehlerquellen auch auf der größeren und bekannten Architekturebene der Prozessoren zu finden sind.“
Die neu entdeckte Sicherheitslücke wurde auf den Namen ÆPIC Leak getauft, da sie über eine Funktion des sogenannten Advanced Programmable Interrupt Controllers (APICs) ausgenutzt werden kann. Die Hauptaufgabe dieses Steuerelements ist es, bei Prozessoren mit mehreren Kernen zu regeln, welcher davon seinen aktuellen Rechenprozess unterbrechen muss, wenn eine neue Anfrage – beispielsweise durch eine Nutzereingabe – reinkommt.