Smart Cards mit Glühlampe gehackt

Studenten veröffentlichen ein Papier über Attacken gegen Java Virtual Machines in Smart Cards durch provozierte Speicherfehler.

In Pocket speichern vorlesen Druckansicht 135 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Daniel Bachfeld

Andrew Appel, Professor an der Universität Princeton und sein Student Sudhakar Govindavajhala behaupten in einem zwölfseitigen Proof-of-Concept-Papier, mittels Soft-Errors im Speicher einer Smart Card beliebigen Code ausführen zu können. In den Untersuchungen wurde eine Infrarotlampe verwendet, um durch Wärme Speicherfehler zu provozieren.

Smart Cards mit einer Java Virtual Machine (JVM), kurz Java Cards, können Java-Applets laden und ausführen. Wie auch bei normalen PCs wird solch ein Applet in einem untrusted, das heißt nicht vertrauenswürdigen Kontext ausgeführt, hat also normalerweise keinen Zugriff auf das Dateisystem. Der Angriff basiert auf der Idee, Java-Schutzmechanismen wie Type Checking (Typenprüfung) und Bytecode Verifying zu umgehen. Die Virtual Machine erwartet Bytecode, in dem alle Typezuweisungen korrekt sind. Der Bytecode Verifier überprüft dies und übergibt dann den Code an die JVM. Dort manipulierter Code wird, abgesehen vom Java Security Manager, nicht mehr überprüft.

Ein Angriffs-Applet kopiert ein Objekt A in den Speicher und füllt den restlichen Speicher mit vielen Objekten B auf, die auf Objekt A zeigen. Kippt nun ein Bit in diesem Speicherbereich durch Bestrahlung mit einer Wärmequelle um (Bit Flipping), zeigt mit einer gewissen Wahrscheinlichkeit ein Objekt B nun auf ein anderes Objekt B. Damit stimmen nun bei diesem Objekt Typ und Referenz nicht mehr überein. Die beiden Wissenschaftler führen aus, dass nun beliebige Speicherstellen lesbar und beschreibbar seien. Auf der Smart Card gespeicherte sensitive Daten wie Passwörter wären dann vor dem Ausspähen nicht mehr sicher.

In einem Thread auf Slashdot wird mittlerweile darüber diskutiert, ob derart einfache Angriffe gegen Smart Cards möglich sind. Hersteller solcher Karten weisen auf eingebaute Sicherheitsfunktionen hin, die solche Attacken abwehren sollen. (dab)