Jimini
PCGH-Community-Veteran(in)
Bug in vielen RAM-Modulen ermöglicht schwerwiegende Angriffe
Rowhammer
Bereits im letzten Jahr konnte eine Gruppe Forscher der Carnegie Mellon University und der Intel Labs zeigen, dass sich der Inhalt von Speicherzellen des RAM manipulieren lässt, wenn die benachbarte Zelle permanent beschrieben und geleert wird. Dieser "Rowhammer" getaufte Bug ist darauf zurückzuführen, dass Speichermodule immer kompakter konzipiert werden, wodurch es möglich wird, dass elektrische Signale von einer Zelle auf einen benachbarten Bereich überspringen ("Bit Flipping"). Das Forscherteam konnte dieses Verhalten bei 110 von 129 Modulen von drei großen Speicherherstellern nachvollziehen - Rowhammer betrifft ihnen zufolge alle Module aus den Jahren 2012 und 2013.
Ein nun von Googles Project Zero durchgeführter Test ergab, dass bei von 29 aktuellen Laptops etwa die Hälfte der Bug nachvollzogen werden konnte.
Erfolgreiche Angriffe
Wie die IT-Sicherheitsforscher Mark Seaborn, Matthew Dempsky und Thomas Dullien nun berichten, gefährdet Rowhammer somit nicht nur exotische Anwendungen, sondern lässt sich auf normalen Consumergeräten für Angriffe gebrauchen:
1. Ausbruch aus der Chrome-Sandbox NaCl
Native Client (NaCl) testet Code vor dem Ausführen auf möglicherweise gefährliche Instruktionen, welche also etwa ein Ausbrechen aus dem geschützten Sandbox-Bereich ermöglichen könnten. Rowhammer ermöglicht nun, die gefilterten Instruktionen mittels Bit Flipping zu manipulieren und so die ungeschützten Speicherbereiche mit beliebigem Code zu beschreiben.
Zwar lässt sich dieser Angriffsweg vergleichsweise leicht dadurch ausschalten, dass NaCl Befehl "CLFLUSH" filtert, die Forscher weisen aber darauf hin, dass es möglicherweise noch andere Möglichkeiten gibt, die Sicherheitsmechanismen der Sandbox zu umgehen.
2. Kernel Privilege Escalation
Wesentlich schwerwiegender ist ein zweiter experimenteller Angriff, welcher das Erlangen von root-Rechten unter Linux ermöglicht. Hierzu wird mit unter normalen Benutzerrechten ein SUID-Programm gestartet, welches dann mit root-Rechten läuft - Beispiele hierfür sind "ping" oder "mount". Bit Flipping ermöglicht dem Angreifer nun, Speicherbereiche mit beliebigem Code zu überschreiben - da der Prozess mit root-Rechten läuft, wird auch der eigene Code mit entsprechenden Privilegien ausgeführt.
Auch wenn dieser Angriff unter Linux erprobt wurde, so geht Mark Seaborn davon aus, dass sich diese Methode auch auf andere Betriebssysteme übertragen lässt.
Gegenmaßnahmen?
Das Forscherteam um Seaborn hat ein Tool veröffentlicht, welches Rowhammer auszunutzen versucht. Auch wenn hier kein Schadcode ausgeführt wird, so ist das Tool dennoch mit Vorsicht zu genießen: Fehler bei Speicherzugriffen können sich unter anderem in Abstürzen oder korrupten Daten bemerkbar machen.
Um sich vor entsprechenden Angriffen zu schützen, ist es vor allem notwendig, den Rowhammer-Bug zu beheben. Da es sich aber um einen Bug in der Hardware handelt, ist dies nicht so einfach möglich wie bei Softwarefehlern.
Bislang konnte Rowhammer nicht bei ECC-Modulen nachvollzogen werden, was aber nicht dahingehend missverstanden werden soll, dass ECC-RAM sicherer wäre - für einen solchen Schluss ist es noch zu früh.
Ferner scheinen über BIOS-Updates implementierbare Änderungen bei der Speicherverwaltung den Angriff zumindest verzögern zu können.
Um wirklich sicher zu gehen, hilft nach aktuellem Kenntnisstand nur ein Tausch der Speichermodule.
Quellen
Kim, Y., Daly, R., Kim, J., Fallin, C., Lee, Ji H., Lee, D., Wilkerson, C., Lai, K. & Mutlu, O. (2014). Flipping Bits in Memory Without Accessing Them: An Experimental Study of DRAM Disturbance Errors.
http://googleprojectzero.blogspot.de/2015/03/exploiting-dram-rowhammer-bug-to-gain.html
http://it.slashdot.org/story/15/03/...-dram-rowhammer-bug-to-gain-kernel-privileges
http://www.golem.de/news/rowhammer-ram-chips-geben-angreifern-root-rechte-1503-112850.html
http://www.admin-magazin.de/content/view/full/15794
Rowhammer
Bereits im letzten Jahr konnte eine Gruppe Forscher der Carnegie Mellon University und der Intel Labs zeigen, dass sich der Inhalt von Speicherzellen des RAM manipulieren lässt, wenn die benachbarte Zelle permanent beschrieben und geleert wird. Dieser "Rowhammer" getaufte Bug ist darauf zurückzuführen, dass Speichermodule immer kompakter konzipiert werden, wodurch es möglich wird, dass elektrische Signale von einer Zelle auf einen benachbarten Bereich überspringen ("Bit Flipping"). Das Forscherteam konnte dieses Verhalten bei 110 von 129 Modulen von drei großen Speicherherstellern nachvollziehen - Rowhammer betrifft ihnen zufolge alle Module aus den Jahren 2012 und 2013.
Ein nun von Googles Project Zero durchgeführter Test ergab, dass bei von 29 aktuellen Laptops etwa die Hälfte der Bug nachvollzogen werden konnte.
Erfolgreiche Angriffe
Wie die IT-Sicherheitsforscher Mark Seaborn, Matthew Dempsky und Thomas Dullien nun berichten, gefährdet Rowhammer somit nicht nur exotische Anwendungen, sondern lässt sich auf normalen Consumergeräten für Angriffe gebrauchen:
1. Ausbruch aus der Chrome-Sandbox NaCl
Native Client (NaCl) testet Code vor dem Ausführen auf möglicherweise gefährliche Instruktionen, welche also etwa ein Ausbrechen aus dem geschützten Sandbox-Bereich ermöglichen könnten. Rowhammer ermöglicht nun, die gefilterten Instruktionen mittels Bit Flipping zu manipulieren und so die ungeschützten Speicherbereiche mit beliebigem Code zu beschreiben.
Zwar lässt sich dieser Angriffsweg vergleichsweise leicht dadurch ausschalten, dass NaCl Befehl "CLFLUSH" filtert, die Forscher weisen aber darauf hin, dass es möglicherweise noch andere Möglichkeiten gibt, die Sicherheitsmechanismen der Sandbox zu umgehen.
2. Kernel Privilege Escalation
Wesentlich schwerwiegender ist ein zweiter experimenteller Angriff, welcher das Erlangen von root-Rechten unter Linux ermöglicht. Hierzu wird mit unter normalen Benutzerrechten ein SUID-Programm gestartet, welches dann mit root-Rechten läuft - Beispiele hierfür sind "ping" oder "mount". Bit Flipping ermöglicht dem Angreifer nun, Speicherbereiche mit beliebigem Code zu überschreiben - da der Prozess mit root-Rechten läuft, wird auch der eigene Code mit entsprechenden Privilegien ausgeführt.
Auch wenn dieser Angriff unter Linux erprobt wurde, so geht Mark Seaborn davon aus, dass sich diese Methode auch auf andere Betriebssysteme übertragen lässt.
Gegenmaßnahmen?
Das Forscherteam um Seaborn hat ein Tool veröffentlicht, welches Rowhammer auszunutzen versucht. Auch wenn hier kein Schadcode ausgeführt wird, so ist das Tool dennoch mit Vorsicht zu genießen: Fehler bei Speicherzugriffen können sich unter anderem in Abstürzen oder korrupten Daten bemerkbar machen.
Um sich vor entsprechenden Angriffen zu schützen, ist es vor allem notwendig, den Rowhammer-Bug zu beheben. Da es sich aber um einen Bug in der Hardware handelt, ist dies nicht so einfach möglich wie bei Softwarefehlern.
Bislang konnte Rowhammer nicht bei ECC-Modulen nachvollzogen werden, was aber nicht dahingehend missverstanden werden soll, dass ECC-RAM sicherer wäre - für einen solchen Schluss ist es noch zu früh.
Ferner scheinen über BIOS-Updates implementierbare Änderungen bei der Speicherverwaltung den Angriff zumindest verzögern zu können.
Um wirklich sicher zu gehen, hilft nach aktuellem Kenntnisstand nur ein Tausch der Speichermodule.
Quellen
Kim, Y., Daly, R., Kim, J., Fallin, C., Lee, Ji H., Lee, D., Wilkerson, C., Lai, K. & Mutlu, O. (2014). Flipping Bits in Memory Without Accessing Them: An Experimental Study of DRAM Disturbance Errors.
http://googleprojectzero.blogspot.de/2015/03/exploiting-dram-rowhammer-bug-to-gain.html
http://it.slashdot.org/story/15/03/...-dram-rowhammer-bug-to-gain-kernel-privileges
http://www.golem.de/news/rowhammer-ram-chips-geben-angreifern-root-rechte-1503-112850.html
http://www.admin-magazin.de/content/view/full/15794