Das geschwätzige RAM

Cache-Dateien verraten Passwörter

Der folgende Beitrag ist vor 2021 erschienen. Unsere Redaktion hat seither ein neues Leitbild und redaktionelle Standards. Weitere Informationen finden Sie hier.

Wer Angst davor hat, dass Viren oder trojanische Programme seine Passwörter von der Festplatte klauen, gibt sie jedes Mal neu ein, statt sie im System zu speichern. Doch moderne Betriebssysteme schaffen es trotzdem, die Daten auf die Festplatte zu befördern

Wenn ein Passwort einzugeben ist, schaut man sinnvollerweise unauffällig über die Schulter, um sicherzustellen, dass niemand hinter einem steht und mitliest. Doch was, wenn der, der mitliest, gar nicht hinter einem steht, sondern sich über Backdoors oder Trojaner in den Computer selbst einschleicht? Na das Passwort nicht im Rechner speichern, empfehlen meist genau die Provider mit den 25 Zeichen langen Kundennummern oder Passwörtern, die sich wirklich kein Mensch merken kann. Also wird das Passwort aufgeschrieben und der Zettel hoffentlich gut weggesperrt.

Das manuelle Eintippen des Passworts ist natürlich nicht dagegen sicher, dass ein Passwortsniffer unmittelbar beim Eintippen mitlauscht. Aber zumindest kann es nicht einfach von der Festplatte stibitzt werden, auch wenn man es nicht benutzt, stimmt’s?

Nein, stimmt nicht, sagen Tal Garfinkel und seine Kollegen von der Stanford University in Palo Alto, Kalifornien. "Aus den Augen, aus dem Sinn" beziehungsweise "weg vom Schirm, weg aus dem Speicher" gilt bei Computern nämlich nicht: In üblichen Programmen werden Eingaben jeweils einer Variablen zugewiesen, in diesem Fall beispielsweise einer Variablen "passwort". Diese Variable wird anschließend von der Software ausgelesen – aber nicht gelöscht. Das Passwort bleibt also so lange im Rechner, bis die Variable von einer neuen Eingabe oder einem anderen Programm überschrieben wird. Oder der Rechner abgeschaltet wird.

Passwörter sind nicht sicher, auch wenn man sie nicht explizit speichert

Nein, schon wieder falsch: Wie jeder weiß, der sich den Inhalt beliebiger Dateien schon einmal mit einem Hex-Editor angesehen hat, schleppen diese oft Datenleichen mit, die unbeabsichtigt mit abgespeichert wurden. Hinzu kommen Cache-Dateien des Betriebssystems und auch noch das Speicherabbild, das Rechner, die einen Ruhezustand kennen, beim Abschalten auf die Festplatte schreiben.

All diese Dateien werden irgendwann einmal überschrieben. Doch das kann dauern. Manchmal dauert es Jahre. Bis dahin ist das betreffende Passwort längst erneut eingegeben und vielleicht wieder auf die Festplatte gelangt.

Ok, ok, das ist Paranoia, das ist Theorie. Wie groß ist denn die Wahrscheinlichkeit, dass ein bestimmtes Passwort sich wirklich auf der Platte festsetzt? Um dies zu ermitteln, programmierten die Wissenschaftler einen Software-Computer-Simulator, genannt Taint Bochs, in dem die sensiblen Daten genau gekennzeichnet werden, um sie später an anderen Stellen im Speicher leicht finden zu können. In normalen Computersystemen ist dies nicht so einfach.

Auch das Betriebssystem leidet unter unsicherer Zettelwirtschaft

Dann fütterten sie den Computer-Simulator mit heute gängiger Anwendungssoftware, die mit Passwörtern umgehen muss wie dem Internet-Explorer, dem Apache Webserver oder auch dem Winlogin-Skript. In einer Untersuchung, deren Ergebnisse sie im Detail im August auf der USENIX Security Konferenz in San Diego präsentieren wollen, kamen sie zum Ergebnis, dass die hier unerwünschte Speicherdauer der sensiblen Daten fast unbegrenzt ist, weil sich kein Programm oder Betriebssystem bislang um solche nicht mehr benötigten Speicherinhalte kümmert. Besonders der Linux-Kernel überschreibt keine veralteten Daten, Windows NT zumindest teilweise.

Als Minimal-Abhilfe schlagen sie im New Scientist vor, die kritischen Variablen sofort nach der Weiterverarbeitung des Passworts mit Nullen zu überschreiben und damit die Verweildauer der Daten im Computerspeicher so kurz wie möglich zu halten. Bei kritischeren Daten sollten diese vor der Übergabe ans RAM sogar verschlüsselt werden. Mit einem entsprechend modifizierten Mozilla-Client konnten so in einem praktischen Test die vagabundierenden Daten immerhin schon auf die Hälfte des ursprünglichen Wertes reduziert werden. Technisch gar kein Problem, es kostet nur etwas zusätzliche Rechenleistung. Diese wird heute allerdings lieber für andere Zwecke verwendet.

Darüber regt sich auch Nicholas Negroponte im gleichen Fachblatt auf. Negroponte wurde bekannt als Autor von "Being Digital", einem Buch, das ursprünglich als Kolumnen im Magazin "Wired" geschrieben wurde. Seine Kritik: Obwohl die Rechenleistung jedes Jahr steigt, werden die Computer weder billiger noch schneller, weil die Featuritis und Schwerfälligkeit neuer, aufgeblähter Softwareversionen den Leistungsgewinn zunichte macht und sogar ins Gegenteil verkehrt: Sein erster tragbarer Computer konnte 1979 schon 20 Stunden aus 4 Mignonzellen laufen – sein heutiger High-End-Notebook schafft dies dagegen nur mit zusätzlichen Batteriepacks.

Null-Lösung statt hüpfender Büroklammern

Ebenso ist es mit Handys: Statt sich auf das Telefonieren zu konzentrieren, werden auch hier überflüssige Features bis zum Abwinken eingebaut, von der Kamera über Stereo-Klingeltöne und Biorhytmus-Kalender bis zum Rasierer und elektrischen Nasenbohrer. Ok, die letzten beiden Funktionen gibt es nur am ersten April, doch wirklich wundern würde sich auch niemand mehr, wenn sie in Seriengeräte umgesetzt würden.

Würden also ein paar doch nur Akku-Kapazität fressende Marketing-Features abgebaut wie tanzende Büroklammern, die den Benutzer fragen, was er tun will, wo der doch vom Computer eigentlich Antworten wollte und nicht Fragen oder auch Schnickschnack gestrichen wie Suchfunktionen, in denen ein Hund womöglich noch in 3D-Animation herumläuft, bellt und mit dem Schwanz wedelt, statt die Prozessorkraft dem Suchalgorithmus zu überlassen, so sollte genug Leistung freigeschlagen sein, um die Datenschlamperei des PCs zu reduzieren.