Rowhammer.js: Hardwarefehler aus dem Browser
Zusammenfassung
Clémentine Maurice und Daniel Gruss zeigen, wie wiederholte Speicherzugriffe DRAM-Bitfehler erzeugen und selbst JavaScript zur hardwarenahen Angriffsoberfläche machen kann. Rowhammer.js demonstrierte einen entfernten softwareinduzierten Hardwarefehler aus JavaScript.
Ideen
- Häufige Zugriffe auf DRAM-Zeilen können Bits in benachbarten Zeilen verändern.
- Cache-Verdrängung erzwingt die nötigen tatsächlichen Speicherzugriffe.
- JavaScript kann trotz Sandbox präzise mikroarchitektonische Effekte auslösen.
- Ein zufälliger Bitfehler wird durch Speicherlayout und Wiederholung zum Exploitbaustein.
- Hardwareannahmen liegen unsichtbar unter Betriebssystem- und Browserisolierung.
- Seitenkanäle und Fehlerangriffe nutzen gemeinsam beobachtbare Mikroarchitektur.
Einsichten
- Abstraktionsgrenzen verhindern keinen Angriff auf gemeinsam genutzte physische Ressourcen.
- Softwareisolierung erbt sämtliche unausgesprochenen Zuverlässigkeitsannahmen der Hardware.
- Remote-Code muss nicht privilegiert sein, um physikalische Zustände gezielt zu beeinflussen.
Zitate
Root privileges for web apps?
(Titel des Vortrags)
Gewohnheiten
- Maurice und Gruss reduzieren den Angriff auf messbare Speicher- und Cacheoperationen.
Fakten
- Clémentine Maurice und Daniel Gruss hielten ihn gemeinsam.
Referenzen
- CCC: Rowhammer.js – Root privileges for web apps?
- Rowhammer: DRAM-Fehlerklasse durch wiederholte Zeilenaktivierung.
- CPU-Caches: notwendiger Bestandteil der demonstrierten Zugriffstechnik.
Kritik
- Ausnutzbarkeit hängt stark von DRAM, Plattform, Browser und Gegenmaßnahmen ab.
- Der Titel formuliert die maximale Folge zugespitzt, nicht die Wirkung jedes Bitfehlers.
Bemerkungen
- Der Vortrag machte eine vermeintliche Zuverlässigkeitsfrage zum browserseitigen Sicherheitsproblem.
- Spätere Rowhammer-Varianten umgingen mehrere zunächst eingeführte Schutzmaßnahmen.
Empfehlungen
- Beziehe bekannte Hardwarefehler in Sandbox-Bedrohungsmodelle ein.
- Aktualisiere Firmware, Browser und Kernel gegen bekannte Rowhammer-Techniken.
- Nutze ECC als zusätzliche Fehlerkontrolle, nicht als alleinige Abwehr.
Links zur Originalquelle und zum Webarchiv öffnen einen neuen Tab.