Kann ein "Muster" in einer Reihe von Passwörtern anhand ihrer Hashwerte (und möglicherweise eines einzelnen unbearbeiteten Passworts) erkannt werden?

  • Nehmen wir an, ich bin ein fauler Benutzer eines Systems mit ärgerlich häufigen Passwortänderungsrichtlinien. Ich habe vielleicht ein "gutes" Passwort, das ich anfangs verwendet habe, das nur für dieses System verwendet wird, aber da ich es jede Woche ändern muss, werde ich einfach eine Zahl erhöhen oder dekrementieren. ZB

     Week 1: 545h9yEQ8k37t!VW53d7g6263!&D4grz
    Week 2: 645h9yEQ8k37t!VW53d7g6263!&D4grz
    Week 3: 745h9yEQ8k37t!VW53d7g6263!&D4grz
    Week 4: 845h9yEQ8k37t!VW53d7g6263!&D4grz
    ...
     

    Und so weiter ...

    Angenommen Ein Hacker erhält die Hash-Kennworthistorie (dh den Hash jedes Kennworts). Gibt es statistische Ansätze, um das (sehr einfache) Muster zu ermitteln, das verwendet wird?

    Ich würde annehmen, dass der verwendete Hash-Algorithmus auch viel damit zu tun hat B. andere Faktoren wie die Verwendung eines Salt, möglicherweise die Länge des Kennworts und ob der Angreifer möglicherweise auch Zugriff auf mindestens ein Klartext-Kennwort hat. Ich denke, eine andere Möglichkeit, die Frage zu formulieren, wäre: Unter welchen Umständen könnte ein Angreifer möglicherweise ein Muster aus einer Reihe von Hash-Passwörtern erkennen?

    28 July 2012
    CodesInChaosgrieve
1 answer
  • Zusammenfassung: Wenn es wichtig ist, haben Sie größere Probleme, mit denen Sie fertig werden müssen.


    Die erste Frage ist ungefähr Wie resistent ist der Hash gegen differentielle Kryptoanalyse?

    Hashes sind in erster Linie dafür ausgelegt, kollisions- / preimageresistent zu sein, aber es wird häufig angenommen, dass sich die Hashes auch als verhalten pseudozufällige Funktionen (z. B. hängt der Sicherheitsnachweis von HMAC davon ab).

    Das relevanteste Papier, das mir bekannt ist, ist Zur Sicherheit von HMAC und NMAC basierend auf HAVAL, MD4, MD5, SHA-0 und SHA-1 , in denen" Unterscheidungsmerkmale "diskutiert werden von Hash-Funktionen (dh ein Algorithmus, der die Ausgabe einer Hash-Funktion von zufällig unterscheiden kann). Es stellt sich heraus, dass MD {4,5} und SHA- {0,1} keine pseudozufälligen Funktionen sind; Der beste Angriff, für den sie Zahlen angeben, ist der auf MD4 (wird im NTLM-Hash verwendet). Wenn meine Interpretation korrekt ist (der größte Teil des Papiers geht über meinen Kopf), gilt es für etwa ein in 2 -56 -Kennwort - nicht ganz vernachlässigbar, aber ziemlich klein.

    Der Angreifer lernt jedoch nur "die ersten Bits der Passwortänderung". Das Wiederherstellen eines Passworts aus dem Hash bedeutet, ein kurzes "erstes Bild" zu finden. Der beste erste Angriff, der mir bekannt ist, ist MD4 ist kein One-Way , nimmt 2 102 Arbeit an und erzeugt Vorbilder mit einer Größe von etwa 1 KB. Dies kann ein funktionierendes Kennwort sein, es ist jedoch unwahrscheinlich, dass es sich um Ihr Kennwort handelt.

    Wenn jedoch Ihre Kennwörter mit MD4 gehasht werden, haben Sie größere Probleme Bedenken: MD4 wird nicht gesalzen oder iteriert.

    Alle guten Passwort-Hashes werden gesalzen und iteriert. Das Salzen mit einer angemessenen Menge an Entropie (mindestens 64 Bit, idealerweise näher an 128 Bit) sollte ausreichen, um unterschiedliche Angriffe abzuwehren. Durch das Iterieren werden die Unterschiede über die Ausgangsbits verteilt. Addi

    21 July 2012