Abo
  • Services:
Anzeige
Fehler bei vielen Zugriffen im Arbeitsspeicher - der Rowhammer-Angriff könnte noch für viel Ärger sorgen.
Fehler bei vielen Zugriffen im Arbeitsspeicher - der Rowhammer-Angriff könnte noch für viel Ärger sorgen. (Bild: Laserlicht/Wikimedia Commons/CC by-sa 3.0)

Rowhammer: Speicher-Bitflips mittels Javascript

Fehler bei vielen Zugriffen im Arbeitsspeicher - der Rowhammer-Angriff könnte noch für viel Ärger sorgen.
Fehler bei vielen Zugriffen im Arbeitsspeicher - der Rowhammer-Angriff könnte noch für viel Ärger sorgen. (Bild: Laserlicht/Wikimedia Commons/CC by-sa 3.0)

Fehlerhaft arbeitende Speicherchips sind möglicherweise ein größeres Sicherheitsrisiko als bisher gedacht. Einem Forscherteam ist es nun gelungen, einen sogenannten Rowhammer-Angriff mittels Javascript durchzuführen. Gegenmaßnahmen sind schwierig.

Anzeige

Einem Team von IT-Sicherheitsforschern ist es gelungen, durch die Ausführung von Javascript-Code Bitflips in gängigem DRAM-Arbeitsspeicher zu erzeugen. Dass derartige Bitflips ein Sicherheitsrisiko darstellen können, war bereits durch die sogenannte Rowhammer-Lücke bekannt. Doch bisherige Angriffe mussten direkt Code auf der lokalen CPU ausführen. Das Risiko durch einen Angriff im Browser via Javascript ist um ein Vielfaches höher.

Zugriffe auf Speicherzelle manipulieren Speicher daneben

Im März hatte ein Team um den IT-Sicherheitsforscher Mark Seaborn zum ersten Mal gezeigt, wie sich ein solcher Angriff praktisch durchführen lässt. Das Problem: Viele gängige DRAM-Chips arbeiten nicht ganz korrekt. Wenn man immer wieder auf eine bestimmte Speicherzelle zugreift, kann das dazu führen, dass die Speicherstelle in der Reihe daneben ihren Wert ändert. Daher wurde dieser Angriff Rowhammer genannt. Greift man eine Speicherzelle parallel auf beiden Seiten an, funktioniert der Angriff häufig noch besser.

Seaborn konnte zeigen, dass man mittels eines solchen Angriffs auf einem Linux-System administrative Rechte erlangen kann. Mit der sogenannten Native-Client-Erweiterung gelang es Seaborn auch, einen Angriff auf dem Chrome-Browser durchzuführen. Doch beide Angriffe konnten nur gelingen, weil Seaborn den Clflush-Befehl des Prozessors ausführen konnte. Andernfalls verhindert der CPU-Cache viele hintereinanderfolgende Speicherzugriffe. In Chrome wurde das Problem daher dadurch behoben, dass das Ausführen des Clflush-Befehls verhindert wurde. Somit schienen die Auswirkungen von Rowhammer zumindest begrenzt - zwar bestand weiterhin ein lokales Problem, aber über den Browser ließ sich der Angriff nicht mehr durchführen.

Remote-Angriff mittels Javascript

Jetzt zeigt sich: Die Auswirkungen dieses Problems sind wohl weit größer als gedacht. Daniel Gruss und Stefan Mangard von der Technischen Universität Graz sowie Clémentine Maurice von der Firma Technicolor beschreiben in einem wissenschaftlichen Paper, wie sich mit einigen Tricks auch mittels Javascript in Firefox ein Rowhammer-Angriff durchführen lässt. Den dazugehörigen Code haben sie auf Github veröffentlicht.

Sie tricksen dabei den Cache-Algorithmus der CPU aus, indem sie gezielt Zugriffe auf einen weiteren Speicherbereich durchführen. Dadurch ist der Cache die ganze Zeit gefüllt, die Zugriffe auf den Speicherbereich, der angegriffen wird, erfolgen somit direkt. Um dies zu ermöglichen, wird ein Timing-Angriff genutzt. Denn anhand der Zugriffszeiten auf den Speicher kann das Javascript-Programm prüfen, ob ein bestimmter Speicherbereich gecacht wird oder nicht.

Der gesamte Angriff ist sehr komplex, die Autoren mussten die Limitierungen von Javascript mit einigen Tricks aushebeln. Letztendlich gelang es ihnen aber, Bitflips im Arbeitsspeicher zu erzeugen. Der Angriff ist spezifisch auf die Javascript-Engine von Firefox zugeschnitten. Die Autoren gehen aber davon aus, dass andere Browser in ähnlicher Weise verwundbar sind. Auch andere Skriptsprachen wie Actionscript (Flash) sind vermutlich auf ähnliche Weise verwundbar. Auch haben die Autoren keinen vollständigen Angriff entwickelt, der etwa die direkte Ausführung von Code auf dem Zielsystem erlaubt. Es dürfte aber ebenfalls nur eine Frage des Aufwandes sein, einen solchen Angriff mittels der bereits von Seaborn vorgestellten Methoden zu entwickeln.

Kaum realistische Gegenmaßnahmen

Die Abhilfe gestaltet sich alles andere als einfach. Nachdem Seaborn den Rowhammer-Angriff im März vorgestellt hatte, hatten einige Mainboard-Hersteller im Bios die Refresh-Zyklen für den Speicher abgesenkt. Allerdings macht das die Angriffe nur unwahrscheinlicher und verhindert sie nicht vollständig. Um relativ sicher zu sein, dass ein Rowhammer-Angriff nicht mehr möglich ist, müsste man die Refresh-Zyklen so weit senken, dass mit deutlichen Performanceeinbußen zu rechnen wäre. Die Autoren des neuen Javascript-Angriffs empfehlen, dass Browser das System auf den Rowhammer-Angriff testen. Falls das System angreifbar ist, müssten die Javascript-Implementierungen dann eingeschränkt werden. Das erscheint allerdings praktisch kaum umsetzbar, denn ein zufälliger Bitflip, wie ihn Rowhammer verursacht, kann ein System zum Absturz bringen. Weiterhin wird empfohlen, die Ausführung von Javascript-Code generell nur noch nach manueller Zustimmung des Nutzers zu erlauben. Es ist kaum anzunehmen, dass Browserhersteller dies umsetzen.

Vermutlich nicht betroffen von Rowhammer-Angriffen sind Speicher mit der sogenannten ECC-Funktion, die automatisch kleinere Fehler im RAM korrigiert. ECC-Speicher wird allerdings heutzutage meistens nur in teuren Serversystemen eingesetzt.


eye home zur Startseite
triplekiller 29. Jul 2015

hier nochmal: https://geizhals.de/?cat=mbp4_20113&xf=494_ECC-Unterst%FCtzung#xf_top

pica 29. Jul 2015

der würde massiv sinken, falls ECC zum Mainstream würde. Problem ist die mangelnde...

pica 29. Jul 2015

Bei DEDSEC (dual error detection, single error correction) Speichern kommt erschwerend...

jg (Golem.de) 28. Jul 2015

Danke für den Hinweis, ist korrigiert!



Anzeige

Stellenmarkt
  1. Debeka-Gruppe, Koblenz
  2. PRÜFTECHNIK AG, Ismaning (Raum München), Weingarten (Raum Ravensburg)
  3. socoto gmbh & co. kg, Köln, Berlin (Home-Office)
  4. Haufe-Lexware GmbH & Co. KG, Freiburg, Leipzig


Anzeige
Hardware-Angebote
  1. täglich neue Deals
  2. ab 470,66€
  3. (täglich neue Deals)

Folgen Sie uns
       


  1. Frontier Development

    Weltraumspiel Elite Dangerous für PS4 erhältlich

  2. Petya-Ransomware

    Maersk, Rosneft und die Ukraine mit Ransomware angegriffen

  3. Nach Einigung

    Bündnis hält Facebook-Gesetz weiterhin für gefährlich

  4. SNES Classic Mini

    Nintendo produziert zweite Retrokonsole in höherer Stückzahl

  5. 5 GHz

    T-Mobile startet LTE-U im WLAN-Spektrum mehrerer US-Städte

  6. Dirt 4 im Test

    Vom Fahrschüler zum Rallye-Weltmeister

  7. Ende der Störerhaftung

    Koalition ersetzt Abmahnkosten durch Netzsperren

  8. NNabla

    Sony gibt Deep-Learning-Bibliothek frei

  9. Mobilfunk

    Deutsche Telekom betreibt noch 9.000 Richtfunkstrecken

  10. Global Internet Forum

    Social-Media-Verbund gegen Terrorpropaganda



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Oneplus Five im Test: Der Oneplus-Nimbus verblasst - ein bisschen
Oneplus Five im Test
Der Oneplus-Nimbus verblasst - ein bisschen
  1. Smartphone Der Verkauf des Oneplus Five beginnt

Monster Hunter World angespielt: Dicke Dinosauriertränen in 4K
Monster Hunter World angespielt
Dicke Dinosauriertränen in 4K
  1. Shawn Layden im Interview Sony setzt auf echte PS 5 statt auf Konsolenevolution
  2. Square Enix Die stürmischen Ereignisse vor Life is Strange
  3. Spider-Man Superheld mit Alltagssorgen

Risk: Kein normaler Mensch
Risk
Kein normaler Mensch

  1. Re: Intel macht das, was AMD nachgesagt wurde

    GenXRoad | 19:25

  2. Re: undurchschaubares Produkt-Sortiment

    plutoniumsulfat | 19:23

  3. Re: Beweis, dass die Erde flach ist...

    Kletty | 19:21

  4. Re: Flightsticks

    David64Bit | 19:19

  5. Re: Crossplay?

    David64Bit | 19:18


  1. 17:35

  2. 17:01

  3. 16:44

  4. 16:11

  5. 15:16

  6. 14:31

  7. 14:20

  8. 13:59


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel