Heutzutage ist es völlig normal, von einer Datenschutzverletzung zu hören. Ein Verstoß könnte bei einem beliebten Dienst wie Gmail oder einer Software geschehen, die die meisten von uns vergessen haben, wie MySpace.
Eines der schlimmsten Dinge, die ein Hacker herausfinden kann, ist Ihr Passwort. Dies gilt insbesondere dann, wenn Sie gegen Standardempfehlungen verstoßen und denselben Login auf mehreren verschiedenen Plattformen verwenden. Aber der Passwortschutz liegt nicht nur in Ihrer Verantwortung.
Wie speichern Websites Ihre Passwörter? Wie werden Ihre Anmeldeinformationen geschützt? Und was ist die sicherste Methode, mit der Websites Ihre Passwörter verfolgen können?
Im schlimmsten Fall werden Passwörter im Klartext gespeichert
Stellen Sie sich folgende Situation vor: Eine große Website wurde gehackt. Cyberkriminelle haben alle grundlegenden Sicherheitsmaßnahmen der Website umgangen und können einen Fehler in der Struktur der Website ausnutzen. Sie sind der Kunde. Diese Website hat Ihre Daten gespeichert. Die Website stellt sicher, dass Ihr Passwort sicher ist. Aber was passiert, wenn diese Website Ihr Passwort im Klartext speichert?
Passwörter im Klartext sind wie ein lukrativer Köder. Sie verwenden keine Algorithmen und können daher nicht gelesen werden. Hacker können Passwörter genauso einfach lesen, wie Sie diesen Artikel lesen.
Es spielt keine Rolle, wie komplex Ihre Passwörter sind: Eine Klartextdatenbank ist eine Liste aller Passwörter aller Personen, klar ausgeschrieben, einschließlich aller Zahlen und zusätzlicher Zeichen. Sie verwenden.
Und selbst wenn Hacker die Website nicht knacken, möchten Sie wirklich, dass ein Website-Administrator Ihre geheimen Anmeldedaten sehen kann?
Man könnte denken, dass dies ein sehr seltenes Problem ist, aber es wird geschätzt, dass etwa 30 % der E-Commerce-Websites diese Methode verwenden, um Kundendaten zu „sichern“!
Eine einfache Möglichkeit, herauszufinden, ob eine Website Passwörter im Klartext speichert, besteht darin, unmittelbar nach der Anmeldung eine E-Mail von der Website mit Ihren Anmeldedaten zu erhalten. In diesem Fall möchten Sie möglicherweise alle anderen Websites ändern, die dasselbe Passwort verwenden, und das Unternehmen kontaktieren, um es zu warnen, dass die Sicherheit zu schlecht ist. Natürlich ist es unmöglich, dies zu 100 % zu bestätigen, aber das ist ein ziemlich klares Zeichen und die Website sollte solche Dinge wirklich nicht per E-Mail versenden.
Kodierung: Klingt gut, ist aber nicht perfekt
Viele Websites nutzen Verschlüsselung, um Benutzerkennwörter zu schützen. Der Verschlüsselungsprozess verschlüsselt Ihre Informationen und macht sie unlesbar, bis zwei Schlüssel – einer von Ihnen (das sind Ihre Anmeldedaten) und der andere von dem betreffenden Unternehmen – zusammen angezeigt werden.
Sie haben die Verschlüsselung auch an vielen anderen Stellen eingesetzt. Face ID auf dem iPhone ist eine Form der Verschlüsselung. Der Passcode ist derselbe. Das Internet läuft verschlüsselt: Das HTTPS, das Sie in der URL sehen können, bedeutet, dass die Website, die Sie besuchen, das SSL- oder TLS-Protokoll verwendet, um die Verbindung zu überprüfen und Daten zu aggregieren. Aber in Wirklichkeit ist die Verschlüsselung nicht perfekt.
Verschlüsselung kann Ihnen Sicherheit geben. Wenn eine Site Ihr Passwort jedoch durch die Verwendung ihres eigenen Passworts schützt, kann ein Hacker das Passwort der Site stehlen, dann Ihr Passwort finden und es entschlüsseln. Es wird Hackern nicht viel Mühe kosten, Ihr Passwort herauszufinden; Aus diesem Grund sind große Datenbanken immer ein großes Ziel.
Wenn der Schlüssel (Passwort) Ihrer Website auf demselben Server wie Ihr Passwort gespeichert ist, kann Ihr Passwort auch im Klartext vorliegen.
Hash: Überraschend einfach (aber nicht immer effektiv)
Passwort-Hashing klingt vielleicht nach Fachjargon, ist aber einfach eine sicherere Form der Verschlüsselung.
Anstatt das Passwort im Klartext zu speichern, führt die Website das Passwort über eine Hash-Funktion wie MD5, Secure Hashing Algorithm (SHA)-1 oder SHA-256 aus, die das Passwort in einen völlig anderen Satz von Ziffern umwandelt. Dies können Zahlen, Buchstaben oder beliebige andere Zeichen sein.
Ihr Passwort könnte IH3artMU0 lauten. Es kann zu 7dVq$@ihT werden und wenn ein Hacker in die Datenbank eindringt, ist das alles, was er sehen kann. Hacker können das ursprüngliche Passwort nicht wieder entschlüsseln.
Leider sind die Dinge nicht so sicher, wie Sie denken. Diese Methode ist besser als reiner Text, stellt für Cyberkriminelle aber dennoch kein Problem dar.
Wichtig ist, dass ein bestimmtes Passwort einen bestimmten Hash generiert. Dafür gibt es einen guten Grund: Jedes Mal, wenn Sie sich mit dem Passwort IH3artMU0 anmelden, durchläuft es automatisch diesen Hash, und die Site ermöglicht Ihnen den Zugriff, wenn dieser Hash und der in der Datenbank der Site vorhanden sind. Websites stimmen überein.
Als Reaktion darauf haben Hacker Regenbogentabellen entwickelt, ähnlich den Spickzetteln. Dabei handelt es sich um Listen von Hashes, die bereits von anderen als Passwörter verwendet werden und die ein ausgeklügeltes System schnell durchgehen kann, ähnlich wie bei einem Brute-Force-Angriff .
Wenn Sie ein wirklich schlechtes Passwort gewählt haben, steht es ganz oben auf der Regenbogentabelle und kann leicht geknackt werden. Komplexe Passwörter dauern länger.
Am besten derzeit: Salzen und Slow Hash
Salting ist eine der leistungsstärkeren Techniken, die von den meisten sicheren Websites implementiert werden
Nichts ist undurchdringlich: Hacker arbeiten ständig daran, jedes neue Sicherheitssystem zu knacken. Derzeit gibt es stärkere Techniken, die von den sichersten Websites implementiert werden. Das sind intelligente Hash-Funktionen.
Salted Hashes basieren auf kryptografischer Nonce, einem zufälligen Datensatz, der für jedes einzelne Passwort generiert wird und oft sehr lang und komplex ist.
Diese zusätzlichen Ziffern werden am Anfang oder Ende des Passworts (oder der E-Mail-Passwort-Kombination) hinzugefügt, bevor es die Hash-Funktion durchläuft, um sich gegen Versuche zu schützen, die mithilfe einer Regenbogentabelle unternommen werden.
Im Allgemeinen ist es kein Problem, wenn Salts auf denselben Servern gespeichert werden wie Hashes. Das Knacken einer Reihe von Passwörtern kann für Hacker viel Zeit in Anspruch nehmen, und es ist noch schwieriger, wenn Ihre Passwörter komplex sind.
Deshalb sollten Sie immer ein sicheres Passwort verwenden, egal wie sicher Sie von der Sicherheit Ihrer Website sind.
Als zusätzliche Maßnahme nutzen Websites auch langsame Hashes. Die bekanntesten Hash-Funktionen (MD5, SHA-1 und SHA-256) gibt es schon seit einiger Zeit und werden häufig verwendet, da sie relativ einfach zu implementieren sind.
Während Salt immer noch gilt, eignen sich langsame Hashes sogar noch besser zur Abwehr von Angriffen, die auf Geschwindigkeit basieren. Indem Hacker auf deutlich weniger Versuche pro Sekunde beschränkt werden, dauert es länger, sie zu knacken, wodurch die Versuche weniger wertvoll werden und gleichzeitig die Erfolgsquote sinkt.
Cyberkriminelle müssen abwägen, ob es sich lohnt, zeitaufwändige langsame Hash-Systeme anzugreifen oder ob es sich um „schnelle Lösungen“ handelt. Beispielsweise verfügen medizinische Einrichtungen häufig über eine geringere Sicherheit, sodass die von ihnen erhaltenen Daten immer noch für überraschend hohe Geldbeträge verkauft werden können.
Wenn ein System unter „Stress“ steht, kann es noch langsamer werden. Coda Hale, ein ehemaliger Microsoft-Softwareentwickler, vergleicht MD5 mit der bemerkenswertesten langsamen Hash-Funktion bcrypt (andere Funktionen umfassen PBKDF-2 und scrypt):
„Anstatt alle 40 Sekunden Passwörter zu knacken (wie bei MD5), würde ich sie etwa alle 12 Jahre knacken (wenn das System bcrypt verwendet). Ihre Passwörter benötigen diese Art von Sicherheit wahrscheinlich nicht und Sie benötigen möglicherweise einen schnelleren Vergleichsalgorithmus.“ , aber mit bcrypt können Sie das Gleichgewicht zwischen Geschwindigkeit und Sicherheit wählen.“
Und da ein langsamer Hash immer noch in weniger als einer Sekunde durchgeführt werden kann, sind die Benutzer davon nicht betroffen.