Rowhammer: RAM-Chips geben Angreifern Root-Rechte

Durch permanente Speicherzugriffe lassen sich bei manchen Arbeitsspeichermodulen Bits umkippen. Dadurch sind verschiedene Angriffe möglich. Der Fehler liegt in der Hardware, ohne einen Austausch der Speichermodule ist der Angriff kaum zu verhindern.

Artikel veröffentlicht am , Hanno Böck
Eine Sicherheitslücke in RAM-Modulen lässt sich praktisch ausnutzen, um Root-Rechte zu erlangen.
Eine Sicherheitslücke in RAM-Modulen lässt sich praktisch ausnutzen, um Root-Rechte zu erlangen. (Bild: smial / Wikimedia Commons / Free Art License)

Den IT-Sicherheitsforschern Mark Seaborn, Matthew Dempsky und Thomas Dullien ist es gelungen, durch permanente Speicherzugriffe ausgelöste Bitflips auszunutzen, um aus einer Sandbox auszubrechen und auf einem Linux-System Root zu werden. Das Problem betrifft zahlreiche aktuelle PCs, bei einem Test mit aktuellen Laptops war etwa die Hälfte betroffen. Verhindern lässt sich der Angriff nur durch neue Hardware. Seaborn hat die Angriffsmethoden im Blog von Googles Project Zero erläutert.

Speicherzugriffe verändern den Speicher nebenan

Inhalt:
  1. Rowhammer: RAM-Chips geben Angreifern Root-Rechte
  2. Root-Rechte mittels Page Tables

Die Grundidee des sogenannten Rowhammer-Angriffs ist simpel. Greift man permanent auf eine bestimmte Stelle im Speicher zu, so führt das unter Umständen dazu, dass im Speicher, der sich physikalisch daneben befindet, ein Bit verändert wird. Schuld daran ist die kompakte Bauform moderner Speicherchips: Die Bits liegen immer näher beieinander und beeinflussen sich dadurch gegenseitig.

Bekannt ist das Problem schon länger, allerdings ist dies der erste praktische Angriff. Im vergangenen Jahr hatte ein Forscherteam von der Carnegie Mellon University und von Intel die Problematik anhand verschiedener DRAM-Chips mit Hilfe von speziell dafür programmierten FPGAs getestet.

Um vom theoretischen Szenario zu einem praktischen Angriff auf handelsüblichen PCs zu kommen, musste Seaborn einige Probleme lösen. Unter Linux kann ein Benutzerprozess über das Proc-Dateisystem Informationen dazu auslesen, welche Teile des virtuellen Speichers an welcher Stelle im physikalischen Speicher abgelegt werden. Das hilft zwar teilweise, ohne genaue Kenntnis der Hardware lässt sich allerdings nur erraten, welche physikalischen Speicherstellen sich direkt in nebeneinander liegenden Reihen befinden. Es lassen sich allerdings mehrere mögliche Abstände von Speicherreihen parallel testen. Deutlich effektiver lässt sich ein Angriff durchführen, wenn man parallel eine Speicherstelle auf beiden Seiten angreift.

Ausbruch aus der Chrome-Sandbox

Ein erfolgreicher Rowhammer-Angriff führt zu einem umgekippten Bit. Um das für einen Angriff auszunutzen, sind verschiedene Tricks möglich. Seaborn beschreibt einen ersten Angriff anhand der NaCl-Sandbox, die unter anderem von Chrome genutzt wird. Die Idee bei NaCl: Der Maschinencode wird vor dem Ausführen auf Instruktionen getestet, die gefährlich sein könnten und einen Ausbruch aus der Sandbox erlauben.

Durch einen Rowhammer-Angriff lassen sich diese gefilterten Instruktionen durch gefährliche Instruktionen ersetzen. Ein einfaches Beispiel wäre ein Sprungbefehl, der durch einen Bitflip in einen Sprung zu einer Adresse in einem normalen CPU-Register umgewandelt wird. Der Sandbox-Code kann diese Veränderung prüfen und dann durch einen erlaubten Sprung auf diesen Code einen Sprung an eine beliebige Adresse im Arbeitsspeicher erreichen.

Um zu verhindern, dass die Speicherzugriffe gecachet werden, ruft der Rowhammer-Angriffscode permanent den Befehl Clflush auf. In neueren Versionen der NaCl-Sandbox wurde daher Clflush in die Liste der nicht erlaubten Befehle aufgenommen. Dadurch ist der Angriff zumindest in dieser Form nicht mehr möglich. Die in früheren Versionen fehlende Clflush-Filterung in NaCl wird als Sicherheitslücke CVE-2015-0565 geführt. Es ist allerdings nicht klar, ob das Problem damit vollständig behoben wird. Seaborn diskutiert mehrere Möglichkeiten, wie man einen ähnlichen Angriff auch ohne Clflush ausführen könnte, allerdings hat er keine davon praktisch umgesetzt.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Root-Rechte mittels Page Tables 
  1. 1
  2. 2
  3.  


TheBigLou13 13. Apr 2015

Was, wenn man jedem Programm im Ram einen Puffer nach links und rechts von einem Byte...

HubertHans 13. Mär 2015

Nebenbei bemerkt: Es gibt kaum Speicherrriegel die Timings erlauben die niedriger...

HubertHans 12. Mär 2015

Wenn du ECC RAM mit DDR3 1600 CL9 kaufst bist du schon vorne mit dabei. Die meisten DDR3...

EvilSheep 11. Mär 2015

Lies den Artikel und dir wird ein Licht auf gehen. Ja es wird getestet, ja es war schon...



Aktuell auf der Startseite von Golem.de
Künstliche Intelligenz
So funktioniert ChatGPT

Das mächtige Sprachmodell ChatGPT erzeugt Texte, die sich kaum von denen menschlicher Autoren unterscheiden lassen. Wir erklären die Technologie hinter dem Hype.
Ein Deep Dive von Helmut Linde

Künstliche Intelligenz: So funktioniert ChatGPT
Artikel
  1. Streamer: Rocket Beans muss in Kurzarbeit
    Streamer
    Rocket Beans muss in Kurzarbeit

    Der Gaming-Kanal Rocket Beans hat wirtschaftliche Schwierigkeiten. Mitarbeiter müssen in Kurzarbeit, einige Sendungen entfallen.

  2. i4: BMW lässt sich am Berg nicht updaten
    i4
    BMW lässt sich am Berg nicht updaten

    Die Besitzerin eines BMW i4 hat die Fehlermeldung entdeckt, ihr Parkplatz sei zu steil für ein Update der Bordsoftware.

  3. Volker Wissing: Schienengüterverbände sind gegen Autobahnausbau
    Volker Wissing
    Schienengüterverbände sind gegen Autobahnausbau

    Für den Güterverkehr sollte vermehrt auf die Bahn gesetzt werden und nicht auf mehr LKW. Für die gebe es eh nicht genug Fahrer, meinen Verbände.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • RAM im Preisrutsch - neue Tiefstpreise! • Powercolor RX 7900 XTX 1.195€ • AMD Ryzen 7 5800X3D 329€ • Nur noch heute TV-Sale mit bis 77% Rabatt bei Otto • Lenovo Tab P11 Plus 249€ • MindStar: Intel Core i7 13700K 429€ • Logitech G915 Lightspeed 219,89€ • PCGH Cyber Week [Werbung]
    •  /