Rainbow Tables: Windows-Passwörter nicht mehr sicher

Um gute Erfolge mit Rainbow-Tabellen zu erzielen, braucht man nicht unbedingt gigantische Datenbanken. Die nachfolgende Tabelle gibt einen Überblick über die notwendige Datenbankgröße bei Vollenumeration und bei der Verwendung von „perfekten Rainbow-Tabellen“, die keine Kollisionen beinhalten. Ferner wird in der Tabelle der Sonderfall betrachtet, wenn das Password nicht case-sensitive ist. Dadurch verringert sich die Datenbankgröße erheblich. Das ist etwa bei der LM-Authentifizierung unter Windows der Fall, die Rückwärtskompatibilität zum Microsoft-LAN-Manager sicherstellt.

Moderne Windows-Version nutzen die bessere NTLM- oder NTLMv2-Authentifizierung und speichern keine LM-Hashwerte. Die Hashwerte bei NTLM und NTLMv2 sind identisch.

Größe von vollenumerierten Datenbanken und Rainbow-Tabellen im Vergleich

Passwortlänge Datenbankgröße Vollenumeration (MD5, NTLM) Datenbankgröße Vollenumeration (LM) Rainbow-Tabellen Kettenlänge 10.000 (MD5, NTLM) Rainbow-Tabellen Kettenlänge 10.000 (LM)
6 Zeichen 2,35 TByte 148,68 GByte 134,64 MByte 8,30 MByte
7 Zeichen 172,27 TByte 6,68 TByte 10,74 GByte 426,28 MByte
8 Zeichen 12,29 PByte 306,64 TByte 859,02 GByte 20,93 GByte
9 Zeichen 896,03 PByte 13,73 PByte 66,06 TByte 1,01 TByte
10 Zeichen 63,70 EByte 628,06 PByte 5,02 PByte 49,47 TByte

In der Praxis gibt es keine perfekten Rainbow-Tabellen. Sie enthalten Kollisionen und Merges. Daher sind sie meist größer. Außerdem lässt sich nicht jedes Passwort knacken. Tabellen, die man im Internet herunterladen kann, besitzen eine Erfolgswahrscheinlichkeit zwischen 50 und 90 Prozent.

Ferner decken die meisten Tabellen nicht alle Passwörter ab. ZDNet macht einen Test mit Tabellen, die Passwörter mit maximal sieben Zeichen knacken können. Erlaubte Zeichen sind Kleinbuchstaben, Zahlen und Sonderzeichen. Passwörter, die Großbuchstaben enthalten können mit diesen Tabellen nicht entschlüsselt werden. Die Tabellengröße beträgt 11,43 GByte.

Das erste Passwort führt relativ schnell zum Erfolg. Nach einer Minute und 42 Sekunden steht das richtige Passwort in Klartext auf dem Bildschirm. 81 Sekunden werden alleine für das Einlesen der Tabellen benötigt. Ein zweites Passwort wird mit den Tabellen nicht gefunden. Nach über neun Minuten meldet das Knackprogramm, dass es aufgibt.

Mit einer 11 GByte großen Rainbow-Tabelle lassen sich Passwörter bis zu sieben Zeichen innerhalb weniger Minuten mit hoher Wahrscheinlichkeit knacken. Restriktion bei der verwendeten Tabelle ist jedoch, dass keine Großbuchstaben vorkommen dürfen.
Mit einer 11 GByte großen Rainbow-Tabelle lassen sich Passwörter bis zu sieben Zeichen innerhalb weniger Minuten mit hoher Wahrscheinlichkeit knacken. Restriktion bei der verwendeten Tabelle ist jedoch, dass keine Großbuchstaben vorkommen dürfen.

Als Hardware wurde ein Lenovo-T60-Notebook mit Core-2-Duo-CPU und 2,33 GHz Taktfrequenz verwendet. Der Test wurde auf nur einem Core durchgeführt. Bei Nutzung von zwei Threads verringert sich die Zeit für das Knacken des ersten Passworts um neun Sekunden. Will man nur einen Hashwert knacken, spielt die CPU-Zeit eine untergeordnete Rolle, hat man hingegen eine ganze Liste von Hashwerten, etwa aus einer Active-Directory-Datenbank, bringt ein schneller Rechner mit vielen Cores Vorteile.

Die Erstellung von Rainbow-Tabellen ist eine aufwändige Angelegenheit. Sie werden meist mittels Distributed-Computing-Projekten mit tausenden von Rechnern in jahrelanger Arbeit ermittelt. Durch ständige Verbesserung steigt die Erfolgswahrscheinlichkeit stark an.

Man findet beispielsweise „Hobbyisten-Projekte“ im Internet. Die von ZDNet genutzten Tabellen stammen aus so einem Projekt. Es ist davon auszugehen, dass Regierungen und Geheimdienste über wesentlich bessere und umfangreichere Tabellen verfügen. Ferner findet man „kommerzielle“ Dienste im Internet, die gegen Bezahlung einen Hashwert in ein Klartextpasswort umwandeln.

Themenseiten: Hacker, Privacy, Security-Analysen

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

9 Kommentare zu Rainbow Tables: Windows-Passwörter nicht mehr sicher

Kommentar hinzufügen
  • Am 12. Januar 2011 um 12:13 von Mike Hauser

    Interessanter Artikel
    Auch wenn ich nur 80% davon verstehe – interessanter, gut zu lesender Artikel – ich kannte die Methodik nicht und muss mir wohl jetz ein neues Passwort überlegen. :-)

  • Am 12. Januar 2011 um 14:11 von Felix

    Naja
    1) 6 zeichen lange passwoerter sind ohnehin ein Witz
    2) Man kann Windows auch so einstellen dass nach einer Reihe erfolgloser Anmeldeversuche (etwa 3) der Zugriff fuer eine Zeit (zum Beispiel 30 Minuten) gesperrt ist. (Windows Policy). Damit waere man gegen so einen Angriff ziemlich sicher …

    • Am 12. Januar 2011 um 14:27 von Christoph H. Hochstätter

      AW: Naja
      Die Verzögerung nach drei Falscheingaben greift hier nicht. Man holt sich einfach mit einem Tool wie **dump oder o**crack die Hashwerte aus der SAM. Das klappt immer beim ersten Versuch. Danach verwendet man die Rainbow-Tabellen, um aus den Hashes das Passwort zu berechnen.

      • Am 12. Januar 2011 um 15:55 von Felix

        AW: AW: Naja
        Danke fuer die Info. Das war mir nicht bekannt.

        Wie ist die Moeglichkeit das ein 14 Zeichen langes Password mit Gross/Kleinschreibung plus Sonderzeichen und Zahlen mit rainbow tables ausgelesen wird?

        • Am 12. Januar 2011 um 22:07 von yuki

          AW: AW: AW: Naja
          Na denn werde ich wohl mal den japanischen Zeichensatz installieren

  • Am 14. Januar 2011 um 16:11 von JoKrause

    Wie muss man sich das Durchprobieren der Passwörter denn vorstellen?
    Da ich absoluter Laie auf diesem Gebiet bin, die Thematik aber hochinteressant finde, eine kurze Frage:

    Wenn ein Angreifer nun eine Liste von Passwörtern zur Verfügung hat, die er durchprobieren möchte, wie geht er denn dann vor. Ich lese immer wieder von Programmen, die eine Anmeldung bei den zu knackenden Systemen vornehmen. Warum wird ein Angreifer denn nicht gezwungen, die Anmeldedaten ganz normal in die Eingabemaske einzugeben. Allein die Verzögerung, die bei der Anmeldung dann entsteht, sollte doch ein wirtschaftliches Durchprobieren der Passwörter unmöglich machen.

    Verstehe ich das also richtig, dass es neben der normalen Anmeldung auch einen Weg „hintenherum“ gibt, auf dem sich ein Angreifer bei einem System einloggen kann? Trifft das auch auf Webserver zu?

    • Am 17. Januar 2011 um 14:03 von Rainer

      AW: Wie muss man sich das Durchprobieren der Passwörter denn vorstellen?
      An normalen Home-PCs und Laptops, also Geräte zu denen man physikalischen, tatsächlichen Zugriff hat, kann die Boot-Reihenfolge geändert werden. Dann wird eben von CD oder USB-Stick ein anderes Betriebssystem geladen und das greift auf den Hash-Speicher der Windowsinstallation zu.
      Sie können ja mal den Versuch bei sich machen. Bei Sourceforge.net gibt es ein quelloffenes Programm, das hier o** … genannt wurde. Ich war erstaunt, wie fix das mit kurzen Passwörtern ging.
      „Trügerische Sicherheit“ könnte man den Windows Passwortschutz nennen. Sicher, 5 min braucht das schon und somit ist man evtl. vor neugierigen Arbeitskollegen geschützt.

      Genauso gefählich: Von öffentlichen Rechnern auf E-Mailkonten, Facebook, MySpace, … zuzugreifen. Danach sollte man gleich zu Hause das Passwort wechseln.

  • Am 13. November 2013 um 8:33 von Horst

    Zunächst einmal ist der Artikel recht informativ. Doch den Vorschlag einen Satz statt eines ordentlichen Passworts zu verwenden halte ich schon fast für kriminell!

    Es mag sein das man hier mit rainbow-Tables nicht weit kommt. Aber hier helfen dann wieder Wörterbuch-Attacken weiter indem man einfach verschiedene Wörter innerhalb der Liste zusammensetzt. Auch hier gibt es Tools die das problemlos hinkriegen.

    Die Aussage nur ein Sonderzeichen zu verwenden ist auch an fahrlässigkeit kaum zu überbieten, genau wie die Zeichenfolge 123 hinten dran zu hängen oder 001 oder was weiß ich.

    Fast genauso schlimm ist die Aussage man sollte O´s nicht durch 0en ersetzen da man diese ja vergessen könnte… Leute, das ist nicht euer Ernst?!

    Außerdem ist jeder User selber schuld der Passwörter unter einer Länge von 12 Zeichen verwendet.

  • Am 24. Februar 2016 um 10:04 von Daniel

    Sehe ich auch so.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *