Seitenkanalangriff auf Cortex-M: Zugriff auf sensible Informationen

Auf der Blackhat Asia haben IT-Forscher Seitenkanalangriffe auf ARM-Cortex-M-Mikroprozessoren vorgestellt. Sie ermöglichen Zugriff auf sensible Informationen.

In Pocket speichern vorlesen Druckansicht 5 Kommentare lesen
STM32F429 auf STM Discovery-Board

(Bild: heise online / dmk)

Lesezeit: 3 Min.
Von

Auf Cortex-M-Mikroprozessoren sind Seitenkanalangriffe möglich, was IT-Sicherheitsforscher am Freitag vergangener Woche auf der Sicherheitskonferenz Black Hat Asia vorgestellt haben. Das ermöglicht Angriffe auf sichere Subsysteme wie der Trusted Execution Environment (TEE), in der geheime Schlüssel für kryptografische Funktion genutzt werden. Anders als bei Attacken wie faulTPM gegen AMD-Prozessoren ist dafür kein physischer Zugang zur Hardware nötig – wenn die Angriff-Software etwa auf anderen Wegen auf dem Mikroprozessor landen kann, etwa mittels OTA-Update.

Es geht um Seitenkanalangriffe, die das unbefugte Auslesen vertraulicher Informationen ermöglichen, etwa vergleichbar mit den Meltdown- oder Spectre-Angriffen auf diverse Prozessoren. Die von Sandro Pinto und Cristiano Rodrigues von der Universität Minho vorgestellte Schwachstelle basiert auf Timing-Unterschieden bei der Code-Ausführung, die von der Nutzung eines geteilten Busses mit mehreren möglichen Bus-Mastern wie dem CPU- und DMA-Block herrühren.

Der gemeinsam genutzte Datenbus ist die Schwachstelle. Er kann nur eine Anfrage zur Zeit bearbeiten, wodurch andere Anfragen warten müssen.

(Bild: blackhat.com / Vortrag Pinto&Rodrigues)

Mikroprozessoren sind etwas einfacher aufgebaut als aktuelle PC-Prozessoren. Im vorgestellten Beispiel greift ein Rechenkern der CPU über einen Bus auf den Speicher zu, den auch andere Peripherie – etwa die Schaltkreise für den Direct Memory Access (DMA) – dafür verwenden muss. Da der Bus für den exklusiven Betrieb ausgelegt ist, muss eine Einheit warten, die andere wird höher priorisiert und darf zuerst zugreifen.

In der Präsentation, die auf obiger Webseite zum Vortrag verlinkt ist, zeigten die beiden IT-Forscher, dass ein Codeschnipsel unterschiedlich lange benötigt, um unterschiedliche Werte zu lesen und vergleichen. Aufgrund dieser Verzögerung ließen sich die Daten rekonstruieren. In diesem Fall die eigentlich geheimen Informationen aus der gesicherten Umgebung der ARM-CPU.

Die Wartezeit auf den Buszugriff hängt bei dem vorgestellten Angriff vom verarbeiteten Wert ab, was Rückschlüsse auf ebendiesen Wert erlaubt.

(Bild: Screenshot blackhat.com / Vortrag Pinto&Rodrigues)

Betroffen ist im konkreten Beispiel die ARMv8-M-Architektur. ARM zieht sich TheRegister zufolge auf den Standpunkt zurück, dass diese Seitenkanalangriffe-Angriffe kein Bestandteil des Bedrohungsmodells von TrustZone-M seien und das Unternehmen daher keinen Schutz vor solchen Angriffen versprochen habe. Die Prozessorschmiede wiegelt demnach weiter ab, dass solche Angriffe sich dadurch verhindern ließen, dass der Kontrollfluss des Programms und Speicherzugriffsmuster nicht von einem geheimen Zustand abhingen, was Standard in sicherheitskritischem Code wie kryptografischen Bibliotheken sei.

Die Chip-Hersteller STMicroelectronics und Tf-m bestätigten den Hack und schoben die Schuld auf ein Speicherverfolgungsproblem, sodass eine Anwendung verantwortlich sei. ARM verweist weiter auf die ARMv8.1-M-Architektur, die ein "Data Independent Timing"-Feature kenne. Das helfe zwar nicht gegen den konkreten Angriff, aber schütze aber vor Daten-abhängigem-Timing-Seitenkanalangriffen.

Die IT-Sicherheitsforscher erläutern ihr Ergebnis weitreichender: "Wir können im Grunde alle Sicherheit-Isolation-Garantien in ARM-Mikroprozessoren aushebeln. Einschließlich dem aktuellen Stand-der-Technik, mit der Trusted Execution Environment in der TrustedZone-M-Technik´". Pinto und Rodrigues wollen weiter an der Angriffstechnik feilen.

(dmk)