Wenn ein Passwort kompromittiert ist, ist ein "ähnliches" Passwort auch kompromittiert?

37

Angenommen, ein Benutzer verwendet ein sicheres Kennwort an Standort A und ein anderes, aber ähnliches sicheres Kennwort an Standort B. Möglicherweise etwa mySecure12#PasswordAan Standort A und mySecure12#PasswordBan Standort B (Sie können auch eine andere Definition von "Ähnlichkeit" verwenden, wenn dies sinnvoll ist).

Angenommen, das Kennwort für Site A ist irgendwie kompromittiert ... möglicherweise ein böswilliger Mitarbeiter von Site A oder eine Sicherheitslücke. Bedeutet dies, dass das Kennwort von Site B auch tatsächlich kompromittiert wurde, oder gibt es in diesem Zusammenhang keine "Kennwortähnlichkeit"? Macht es einen Unterschied, ob es sich bei dem Kompromiss auf Site A um ein Klartextleck oder eine gehashte Version handelt?

Michael McGowan
quelle

Antworten:

38

Um den letzten Teil zuerst zu beantworten: Ja, es würde einen Unterschied machen, wenn die offengelegten Daten Klartext vs. Hash wären. Wenn Sie in einem Hash ein einzelnes Zeichen ändern, ist der gesamte Hash völlig anders. Der einzige Weg, wie ein Angreifer das Passwort kennen würde, besteht darin, den Hash zu erzwingen (nicht unmöglich, insbesondere wenn der Hash ungesalzen ist. Siehe Regenbogentabellen ).

Was die Ähnlichkeitsfrage betrifft, kommt es darauf an, was der Angreifer über Sie weiß. Wenn ich Ihr Kennwort auf Site A erhalte und weiß, dass Sie bestimmte Muster zum Erstellen von Benutzernamen oder dergleichen verwenden, kann ich dieselben Konventionen für Kennwörter auf von Ihnen verwendeten Sites ausprobieren.

Wenn ich als Angreifer in den oben angegebenen Passwörtern ein offensichtliches Muster sehe, mit dem ich einen ortsspezifischen Teil des Passworts vom generischen Teil des Passworts trennen kann, werde ich diesen Teil eines benutzerdefinierten Passwortangriffs definitiv maßschneidern für dich.

Nehmen wir zum Beispiel an, Sie haben ein supersicheres Passwort wie 58htg% HF! C. Um dieses Kennwort auf verschiedenen Websites zu verwenden, fügen Sie am Anfang ein standortspezifisches Element hinzu, sodass Sie Kennwörter wie: facebook58htg% HF! C, wellsfargo58htg% HF! C oder gmail58htg% HF! C haben Hacke dein Facebook und erhalte facebook58htg% HF! c Ich werde dieses Muster sehen und es auf anderen Websites verwenden, die du möglicherweise verwendest.

Alles hängt von Mustern ab. Wird dem Angreifer ein Muster im ortsspezifischen Teil und im allgemeinen Teil Ihres Kennworts angezeigt?

queso
quelle
4
du hast gerade mein Standardpasswort überall 58htg%HF!cnutzlos gemacht, vielen Dank
Tobias Kienzler
1
Wow! Was waren die Chancen? Gehen Sie eine Weile nicht in Gewitter aus.
Queso
hm, ich sollte aber Lotto spielen: -7 (+1 übrigens)
Tobias Kienzler
11

Es kommt wirklich darauf an, worauf du hinaus willst!

Es gibt eine beliebige Anzahl von Methoden, um festzustellen, ob ein Passwort einem anderen ähnlich ist. Nehmen wir zum Beispiel an, dass Sie eine Passwortkarte verwenden und dass jemand anderes dieselbe hat (oder einfach weiß, welche Sie haben). Wenn sie eines Ihrer Passwörter manipulieren und feststellen, dass es sich nur um eine Zeile weiter unten auf der Passwortkarte handelt, raten sie wahrscheinlich (möglicherweise sogar zu Recht), dass Ihre Passwörter alle auf ähnliche Weise von dieser Karte abgeleitet wurden.

Aber für die meisten Dinge ist das überhaupt kein Problem. Wenn sich Ihr Kennwort für Dienst A nur durch ein Zeichen vom Kennwort für Dienst B unterscheidet und beide Dienste sicher sind (z. B. gesalzene Hashes für Ihr Kennwort anstelle des geraden Hashs oder des Klartexts selbst speichern), ist dies "rechnerisch nicht durchführbar". Um festzustellen, ob die Passwörter ähnlich sind, geschweige denn, wie ähnlich sie sind.

Eine kurze Antwort lautet wie folgt: Wenn Ihre Kennwörter einem Muster folgen, ist es wahrscheinlich, dass die Kompromittierung eines Kennworts zur Kompromittierung anderer führt. Dies bedeutet jedoch nicht, dass dies machbar sein wird. Solange Sie:

  1. Verwenden Sie niemals dasselbe Passwort für mehr als einen Dienst.
  2. Fügen Sie ein zufälliges (wenn auch nur geringfügiges) Element in die Generierung Ihrer Passwörter ein, und
  3. Übertragen oder speichern Sie Ihre Passwörter niemals im Klartext

Du solltest in Ordnung sein. Denken Sie auch daran, für verschiedene Dienste immer unterschiedliche Kennwörter zu verwenden. Verwenden Sie nicht einfach für alle Dienste dasselbe Kennwort, und verwenden Sie nicht einmal zweimal dasselbe Kennwort. Es ist wichtig, sich vor dummen Unternehmen zu schützen, die sich weigern, Best Practices zu befolgen, wenn es um die Speicherung von Benutzerdaten wie Passwörtern geht.

Michael Trausch
quelle
7

Meine kurze Antwort lautet JA . Zum Beispiel: strongpassword + game.com kompromittiert,

Wenn ich ein Angreifer bin, ist es für mich sehr einfach, das von Ihnen verwendete Muster zu verstehen und es auf anderen Websites auszuprobieren. Zum Beispiel strongpassword + paypal.com

Argh! ....

Um dies zu beheben, benutze ich persönlich:

hash ( strongpassword+game.com )
hash ( strongpassword+paypal.com )

Wenn Sie mathematische Eigenschaften für Hash (ich verwende sha1) verwenden und das erste Kennwort kennen, ist es schwierig, das starke Kennwort und das zweite Kennwort zu ermitteln.

Wenn Sie mehr Details erfahren möchten, habe ich einen Blogeintrag zum Thema Passwortsicherheit verfasst, der genau auf Ihre Frage antwortet:

http://yannesposito.com/Scratch/en/blog/Password-Management/

Ich habe auch einige Tools erstellt, um die Verwaltung meines gesamten Passworts zu vereinfachen, da Sie in der Lage sein müssen, ein kompromittiertes Passwort zu ändern, die maximale Länge eines Passworts zu speichern usw.

yogsototh
quelle
1
SHA-1 gilt nicht mehr als mathematisch sicher.
Hallo71
4
@ Hallo71 hast du eine quelle dafür? Ich wäre neugierig, mehr zu lesen.
nhinkle
tinsology.net/2010/12/is-sha1-still-viable zugegebenermaßen ein begrenzter Fall, aber in der Lage zu sein, die ersten 6 Zeichen des Schlüsselbereichs zu durchsuchen, die schnell auf gemieteten Ressourcen basieren, bedeutet, dass jemand mit Botnetzen und Regenbogentabellen vermutlich viel mehr kann . In der Regel ist es am besten, wenn alle anderen Dinge gleich sind, egal, welcher Hash / welche Verschlüsselung die meisten CPU-Zyklen mit Brute Force verschwendet. :)
Stephanie
4

Dies hängt davon ab, worüber Sie sich Sorgen machen. Bei einem umfassenden, automatisierten Angriff mit Anmeldeinformationen von einer Site auf eine andere wird der Angreifer den einfachsten Teil zuerst ausführen - Benutzer, die genau dasselbe Kennwort verwenden. Sobald dies erschöpft ist, sucht der Angreifer, falls der Angriff immer noch unbemerkt bleibt, nach nach Mustern, die er für üblich hält - wahrscheinlich nach einem Grundkennwort und einer Site.

Ein cleverer Angreifer, der sicher ist, dass sein ursprünglicher Angriff (derjenige, der Ihre Passwörter erhalten hat) unbemerkt blieb, würde diese Verarbeitung durchführen, bevor er die von ihm ermittelten Passwörter verwendet. In diesem Fall ist jede vorhersehbare Änderung gefährlich, je nachdem, wie offensichtlich sie für den Angreifer ist.

Wenn Ihr Kennwort beispielsweise ein Präfix plus ein zufälliges Element ist und der Angreifer dies vermutet und Ihr Kennwort-Hash auf einer anderen Site gespeichert ist, kann er Ihr anderes Kennwort etwas früher erhalten.

Sie können Ihre Passwörter erstellen, indem Sie etwas Vorhersehbares hassen. Wenn diese Praxis jedoch weit verbreitet ist oder Sie persönliche Aufmerksamkeit von Ihrem Angreifer erhalten, werden Sie nicht gerettet. In gewisser Weise ist die Kennwortstärke eine Frage der Beliebigkeitsarbitrage.

tl; dr tu nichts Deterministisches.

dhasenan
quelle