Montag, 22 Mai 2017 12:34

Paper zu Rowhammer Verteidigung erscheint im USENIX Security Symposium 2017

CAn’t Touch This: Neue Softwarebasierte Verteidigungen gegen Rowhammer Angriffe

Bisher ging man davon aus, dass die gefährlichen Rowhammer Angriffe nur durch neuen RAM Speicher behoben werden können. In Zusammenarbeit mit der TU Darmstadt haben wir ein neues softwarebasiertes Konzepte vorgestellt, um Rowhammer Angriffe effizient auf bestehenden Linux Systemen zu verhindern; ohne Austauschen der defekten Hardware.

In 2015 stellten Google Forscher einen bis dato ungeahnten Angriff vor: Der Rowhammer Angriff erlaubt es allein über das Auslesen bestimmter Speicherbereiche Root-Rechte auf Linux Systemen zu bekommen. Der Angriff basiert auf das kontinuierliche Auslesen („Hämmern“) einer bestimmten Speicheradresse. Dieses Hämmern führt nach einer gewissen Zeit zu Bit-Flips in benachbarten Speicherreihen. Ein Angreifer kann dabei die Speicherbereiche so vorbereiten, dass der Bit-Flip in einem dem Kernel zugeordneten Speicherbereich stattfindet. Somit können kritische Kernelstrukturen wie z.B. Berechtigungen von Speicherseiten zu Gunsten des Angreifers manipuliert werden. Bisher nahm man an, dass eine Verteidigung nur schwer möglich ist und höchstwahrscheinlich das Austauschen von RAM Speicher mit Fehlerkorrektur (ECC-Speicher) erfordert. Folglich würden bestehende Systeme ungeschützt bleiben.

CATT (CAn't Touch This) toleriert Rowhammer Bit-Flips, aber ordnet Speicherbereiche so an, dass Rowhammer Angriffe ins Leere laufen. Insbesondere verhindert CATT, dass ein Angreifer über Rowhammer Root-Rechte auf einem Linux System gewinnt. Dafür ordnet CATT den Speicher so an, dass Bit-Flips nur innerhalb von Speicherbereichen mit gleichen Privilegien stattfinden können; somit ist es nicht möglich Bit-Flips aus dem Normalnutzer-Speicherbereich in den Kernel-Speicherbereich durchzuführen. Dafür haben wir den Speicherallokator von Linux derart modifiziert, dass im RAM Speicher immer ein Pufferspeicher zwischen Speicherbereichen unterschiedlicher Privilegien eingesetzt wird. Somit sind Normalnutzer und Kernel-Speicher nicht mehr direkt benachbart im RAM.

Die Ergebnisse dieser Forschungsarbeit werden auf dem diesjährigen USENIX Security Symposium in Vancouver, Kanada präsentiert.

Ein vorläufiges Whitepaper ist bereits auf arxiv verfügbar: arxiv.org/abs/1611.08396