RAINCOAT: RANDOMIZATION IN SECURE NANO-SCALE MICROARCHITECTURES

ZUSAMMENFASSUNG

Hersteller von modernen Speicher- und Prozessorchips setzen zunehmen auf parallelisierte, hochoptimierte Mikroarchitekturen, um den Leistungszuwachs der Chips bei gleichzeitig voranschreitender Miniaturisierung aufrecht erhalten zu können. Die Sicherheitskritischen Folgen dieser Optimierungen wurden mit neuen Angriffsvektoren – sogenannten Mikroarchitekturangriffen – wie Rowhammer, Spectre und Meltdown deutlich. Mit der Einführung neuer Nano-Technologie wird sich dieser Trend der Miniaturisierung von Hardwarebausteinen fortsetzen. Ziel des Projektes ist es, die sicherheitsrelevanten Implikationen von neuen Technologiebausteinen, wie z.B. NRAM, zu untersuchen und Gegenmaßnahmen für mögliche Angriffsvektoren zu entwickeln. Gleichzeitig sollen bestehende Sicherheitslücken, ausgelöst z.B. durch Sprungvorhersagen, geschlossen werden. Solche Maßnahmen dürfen den Performance Vorteil der neuen Technologien nicht aufheben. Daher liegt der besondere Fokus auf Gegenmaßnahmen, die auf Randomisierung basieren. Diese Methoden haben sich schon im Bereich von Laufzeitangriffen (z.B. Buffer Overflows) als besonders geeignet herausgestellt.

PROJEKTBESCHREIBUNG

Eine große Anzahl von Sicherheitsproblemen in digitalen Systemen entsteht durch die Schnittstellen zwischen Hardware und Software. In den letzten Jahren haben Angriffe, die auf diese Schnittstellen abzielen, rasant an Popularität gewonnen und stellen somit eine ständig wachsende Bedrohung dar, indem sie Sicherheitsannahmen auf höherer Ebene aushebeln, wobei in vielen Fällen auch angewandte Gegenmaßnahmen umgangen werden. Mit zunehmender Integrationsdichte auf der Hardware-Ebene wird das Zeitalter der Nanotechnologie neue Optionen für hardwarebasierte Angriffe im anhaltenden Wettrüsten zwischen Forschern und Angreifern eröffnen. Die Verbindung zwischen Hardware und Software wird durch die Mikroarchitekturebene definiert, auf der in jüngster Zeit eine Vielzahl von Angriffen entdeckt wurde. Es hat sich gezeigt, dass eine Reihe von Angriffen auf der Mikroarchitektur- und Seitenkanalebene von den Hard- und Softwareherstellern bisher vernachlässigt werden. Hinzu kommt, dass in den letzten Jahren ein enormer Anstieg von hardwarebasierten Angriffen zu verzeichnen ist. Transiente Angriffe machen sich das spekulative Verhalten moderner CPUs zunutze, um übergeordnete Prozessisolationstechniken zu umgehen. Meltdown und Spectre, die wahrscheinlich populärsten hardwarebasierten Angriffe, die spekulative Ausführung und Sprungvorhersagen ausnutzen, welche üblicherweise als Leistungsoptimierung in modernen CPUs implementiert sind. Bei der spekulativen Ausführung zielt der Prozessor darauf ab, vorherzusagen, ob ein bedingter Zweig genommen wird oder nicht. Bei richtiger Vorhersage spart die CPU Ausführungszeit, da Anweisungen, die dem bedingten Zweig folgen, bereits parallel ausgeführt werden können. Wenn nicht, verwirft der Prozessor die Ergebnisse der spekulativen Ausführung und führt einen Rollback zum Zustand vor der Verzweigung durch. In ähnlicher Weise ermöglicht es die out-of-order Execution dem Prozessor, die Reihenfolge unabhängiger Anweisungen neu anzuordnen und so Verzögerungen zu vermeiden, die auftreten würden, wenn zwei aufeinander folgende Anweisungen voneinander abhängig wären. Während diese leistungssteigernden Methoden in den gängigen CPUs seit Jahrzehnten verfügbar sind, wurde erst vor kurzem bekannt, dass sie zu großen Sicherheitsproblemen führen, vor allem weil spekulativ ausgeführte Befehle Auswirkungen auf den Cache-Zustand der Mikroarchitektur haben. Angesichts der Zunahme mikroarchitektur- und anderer hardwareorientierter Angriffe und der Lehren, die in den letzten Jahren gezogen wurden, benötigen wir verbesserte und dynamische Sicherheitsmechanismen, die dem bevorstehenden Übergang von der traditionellen Technologie zur Nanoelektronik folgen. Die effiziente Umsetzung entsprechend angepasster Sicherheitsgegenmaßnahmen und randomisierungsgestützter Architekturen ist jedoch ein offenes Forschungsfeld. Ziel dieses Projekts ist die Entwicklung, Sicherheitsanalyse und Evaluation einer neuartigen randomisierungserweiterten Mikroarchitektur im Hinblick auf die technologischen Herausforderungen in der Nanotechnologie, einschliesslich der effizienten Erzeugung, Verteilung und Verteilung von Zufälligkeit.

PARTNER

Der Lehrstuhl Sichere Software Systeme der Universität Duisburg Essen beschäftigt sich hautpsächlich mit der Forschung an praktischen Problemstellungen der System- und Softwaresicherheit. Besonderer Fokus liegt dabei auf der Entwicklung von Sicherheitstechnologien gegen Laufzeitangriffe (Software-Exploits) für verschiedene Rechnerarchitekturen. Weitere Forschungsbereiche sind Betriebssystemsicherheit, Trusted Computing, Mobile Sicherheit und Hardware-basierte Softwaresicherheit.
Der von Prof. Dr.-Ing. Lucas Davi geleitete Lehrstuhl ist Teil des DFG Exzelensclusters CASA.

Der Lehrstuhl Security Engineering der Ruhr-Universität Bochum forscht im Bereich IT-Sicherheit auf Hardwareebene. Dazu zählt sowohl die Analyse von Hardwareplattformen auf Sicherheit gegen Seitenkanal- und Fault Angriffe, als auch die Entwicklung sicherer Hardwarbeschleuniger für verschiedene Rechnerplattformen. Weitere Forschungsgebiete sind Formale Verifikation und Post-Qunaten sichere Verschlüsselungsverfahren. Der von Prof. Dr.-Ing. Tim Güneysu geleitete Lehrstuhl ist Teil des DFG Exzelensclusters CASA und des Horst Görtz Instituts für IT-Sicherheit (HGI).