it-swarm.com.de

Ist es sicher, Passwörter mit 2-Wege-Verschlüsselung zu speichern?

Ich bin ein Elternteil, der ein Elternkonto bei meinem örtlichen Schulbezirk hat, damit ich mich auf dessen Website anmelden kann, um die Noten meines Kindes usw. anzuzeigen.

Ich habe auf die Schaltfläche "Passwort vergessen" geklickt und mein Passwort wurde mir im Klartext per E-Mail zugeschickt. Dies betraf mich, daher habe ich dem Auftraggeber eine E-Mail gesendet, einschließlich einiger Links von nten auf dieser Seite . Dies ist die Antwort, die ich von der IT-Abteilung der Organisation erhalten habe:

Übergeordnete Passwörter werden nicht im Klartext gespeichert. Sie sind verschlüsselt. Keine 1-Wege-Verschlüsselung, sondern eine 2-Wege-Verschlüsselung. Auf diese Weise kann das System es per E-Mail über das CoolSpool-Dienstprogramm von Ariande zurückgeben.

Aus Supportgründen ist das übergeordnete Kennwort für bestimmte Mitarbeiter sichtbar, bis sich das übergeordnete Kennwort dreimal erfolgreich angemeldet hat. Danach kann kein Mitarbeiter dieses Passwort sehen. Es wird jedoch so gespeichert, dass das System es selbst an die verifizierte E-Mail zurücksenden kann. Wenn die Eltern nach den drei erfolgreichen Anmeldungen in Zukunft ihr Passwort vergessen haben, wird ihrem verifizierten E-Mail-Konto ein Link zum Zurücksetzen ihres Passworts gesendet. Diese Änderung ist in Arbeit.

Rechtfertigt diese Erklärung das per E-Mail gesendete Klartextkennwort und sind meine Kennwörter damit sicher?

Wenn nicht, mit welchen Referenzen oder Ressourcen könnte ich darauf antworten?

139
43Tesseracts

Nein, das ist keine gute Praxis. Es gibt zwei unterschiedliche Probleme.

  • das Kennwort zu verschlüsseln, anstatt es zu hashen, ist eine schlechte Idee und speichert grenzüberschreitend Nur-Text-Kennwörter. Die ganze Idee langsamer Hash-Funktionen besteht darin, die Exfiltration der Benutzerdatenbank zu verhindern. In der Regel kann von einem Angreifer, der bereits Zugriff auf die Datenbank hat, erwartet werden, dass er auch Zugriff auf den Verschlüsselungsschlüssel hat, wenn die Webanwendung Zugriff darauf hat.

    Dies ist also Borderline-Klartext; Ich hätte fast dafür gestimmt, dies als Duplikat von diese Frage zu schließen, da dies fast dasselbe ist und die verknüpfte Antwort fast direkt gilt, insbesondere was Klartextstraftäter betrifft; es gibt eine andere Antwort auch über Klartext-Täter.

  • das Senden des Nur-Text-Passworts per Klartext-E-Mail ist eine schlechte Idee. Sie könnten argumentieren, dass es keinen Unterschied gibt, wenn keine Wiederverwendung von Passwörtern erfolgt, aber ich bezweifle, dass sie überhaupt wissen würden, was das ist und warum dies als schlechte Praxis angesehen wird. Außerdem ist die Wiederverwendung von Passwörtern so häufig, dass dies keine gute Antwort wäre.

Da sie anscheinend im zweiten Teil funktionieren (obwohl sich Links zum Zurücksetzen von Passwörtern in Nur-Text-E-Mails im selben Bereich befinden, kann eine Bedrohung, die das Passwort aus der Nur-Text-Mail lesen kann, auch den Link lesen, möglicherweise vor Ihnen können), Sie könnten ihnen das Problem erklären, nicht aus meiner Antwort zu hashen, auch zögern Sie nicht, diese Antwort direkt zu verlinken.

Vielleicht erklären Sie sogar, dass Verschlüsselung eine Möglichkeit ist, aber immer durch die Umkehrfunktion des betreffenden Kryptosystems, treffend Entschlüsselung genannt, umgekehrt werden kann. Die Verwendung von Begriffen wie "Einwegverschlüsselung" und "Zweiwegverschlüsselung" anstelle von "Hashing" und "Verschlüsselung" zeigt einen Mangel an Verständnis.

Das eigentliche Problem ist: Wenn sie ein Zurücksetzen des Passworts implementieren, bedeutet dies nicht, dass sie in Zukunft (korrekt) hashen werden. Sie können nicht viel dagegen tun, außer einen Passwort-Manager zu verwenden und eine lange, starke Passphrase zu erstellen, die für diese Site einzigartig ist und auf das Beste hofft.

Dies gilt insbesondere, da sie anscheinend den Teil ihres Systems behalten möchten, der den Mitarbeitern Ihr Passwort mitteilt (aus absolut keinem guten Grund). Die Folge ist, dass sie immer wieder nicht richtig haschen - sie sagen, dass Mitarbeiter das Passwort nur in diesem Zeitrahmen von drei Anmeldungen sehen können, ist nicht wahr; Wenn die Web-App auf den Schlüssel zugreifen kann, können auch die Verwaltungsmitarbeiter darauf zugreifen. Möglicherweise nicht mehr die Mitarbeiter des Kundensupports, aber sie sollten es überhaupt nicht sehen können. Das ist schrecklich schlechtes Design.

Abhängig von Ihrem Standort sind Schulen als Teil des öffentlichen Sektors verpflichtet, einen CISO zu haben, an den Sie sich direkt wenden können, um Ihre Bedenken auszudrücken. Und wie im öffentlichen Sektor üblich, sollte es eine Organisation geben, die die Schule überwacht. Sie sollten zumindest einen CISO haben, der an diesem Verfahren durchaus interessiert sein könnte.

192
Tobi Nary

Jeder konzentriert sich auf die Verschlüsselung vs. Hashing, aber obwohl das an sich schlecht ist, finde ich Folgendes ungeheuerlicher:

Aus Supportgründen ist das übergeordnete Kennwort für bestimmte Mitarbeiter sichtbar, bis sich das übergeordnete Kennwort dreimal erfolgreich angemeldet hat.

Sie sollten dies als "das IT-Personal kennt mein Passwort" interpretieren. Sie gaben offen zu, dass bestimmte Mitarbeiter Ihr Passwort kennen können. Das ist mehr als schlecht. Ich gehe davon aus, dass dieser Zähler zurückgesetzt wird, nachdem Sie Ihr Passwort geändert haben. Wenn Sie also dreimal ein Dummy-Passwort verwenden und es dann in ein "echtes" Passwort ändern, wird dies nichts bewirken. Stellen Sie nichts auf diese Plattform, das Sie nicht öffentlich bekannt machen möchten, und ändern Sie es, wenn Sie auf anderen Websites dasselbe Kennwort verwendet haben.

72
MrZarq

Nein, wie Sie richtig vermutet haben, ist dieses Verhalten eindeutig nicht sicher.

Was Sie tun können und sollten, ist, ihrem System nicht zu vertrauen. Verwenden Sie im Schulsystem kein Passwort, das Ihrem Bank- oder anderen Passwort entspricht. Geben Sie nicht mehr Informationen ein, als unbedingt erforderlich sind, um Ihr Kind durch die Schule zu bringen. Wenn Ihr Kind eine Notiz mit dem Titel "Anmelden und Aktualisieren Ihrer Daten" mit nach Hause bringt, geben Sie nichts ein, was Sie als unangenehm empfinden.

Zumindest klingt ihr "in der Zukunft" -Szenario so, als würden sie das Verhalten implementieren, das sie benötigen, um sicher gehashte Passwörter zu unterstützen. Ob sie die Passwörter tatsächlich sicher hashen (nach drei Anmeldungen), anstatt sie zu verschlüsseln, ist eine andere Frage. Und Sie werden diese Frage nicht durch Beobachtung beantworten können. Wenn Sie immer noch besorgt sind, können Sie sich an den Softwareanbieter wenden und ihn fragen, wie es funktioniert.

19
John Deters
  1. Sie sollten nicht davon ausgehen, dass Ihr Passwort jemals sicher ist. Es gibt einen Grund, warum Passwort-Manager sind der empfohlene Weg

    Die Realität ist, dass Sie bei Ihren Versuchen, all diese Passwörter selbst zu handhaben, die Hauptsünde begehen, einige wiederzuverwenden. Das ist tatsächlich weitaus riskanter als die Verwendung eines Passwort-Managers. Wenn eine einzelne Site, die dieses Kennwort verwendet, ausfällt, wird jedes Konto, das es verwendet, gefährdet. Sie müssen sich alle Sites merken, auf denen Sie dieses Kennwort wiederverwendet haben, und sie dann alle ändern.

  2. Die empfohlene Methode zum Zurücksetzen besteht darin, einen eindeutigen Schlüssel zu generieren, mit dem ein Benutzer seinen eigenen Reset auf einer TLS-gesicherten Website durchführen kann. E-Mail, auch wenn TLS aktiviert ist, ist von Natur aus immer noch unsicher

    Obwohl TLS und SSL zweifellos eine wichtige Grundlage für den Ansatz eines Unternehmens zur Datensicherheit bilden, gibt es immer noch Hinweise darauf, dass es sich um ein System handelt, das eine Reihe potenzieller Schwachstellen mit sich bringt.

    Der Hauptschwachpunkt ergibt sich aus dem mangelnden Verständnis der Unternehmen, wie E-Mails verschlüsselt werden sollen. Viele glauben, dass der Transportkanal und damit die E-Mail durch die Verwendung von TLS vollständig gesichert sind.

  3. Hashing ist grundlegend anders von Verschlüsselung. Dies war gut untersucht bei Stack Overflow

    [Verschlüsselungsfunktionen] bieten eine 1: 1-Zuordnung zwischen einer Eingabe und Ausgabe beliebiger Länge. Und sie sind immer reversibel .

    Wie SmokeDispenser feststellte, können sie den Verschlüsselungsschlüssel erhalten, wenn sie Ihre Datenbank erhalten können. Wie unterscheidet sich das vom Hashing? Hashes sind immer Einweg . Daten gehen rein und kommen nie raus. Mit anderen Worten, es gibt keine Schlüssel zum Stehlen.

    Verwenden Sie eine Hash-Funktion, wenn Sie die Gültigkeit der Eingabedaten überprüfen. Dafür sind sie konzipiert. Wenn Sie zwei Eingabeteile haben und überprüfen möchten, ob diese identisch sind, führen Sie beide über eine Hash-Funktion aus. Die Wahrscheinlichkeit einer Kollision ist für kleine Eingabegrößen astronomisch gering (unter der Annahme einer guten Hash-Funktion). Deshalb wird es für Passwörter empfohlen.

    Mit anderen Worten, Sie speichern Ihr Passwort auf meiner Website. Ich hashe es mit einer zufälligen Zeichenfolge (genannt Salz) immer und immer wieder mit etwas Langsamem (wie bcrypt). Um Sie zu validieren, geben Sie Ihr Passwort erneut ein und ich wasche es durch denselben Hash. Mit dem gleichen Algorithmus (und wie oft ich ihn auch durchlaufen habe, genannt Kosten), Salt und Passwort sollte ich den gleichen Hash erhalten, den ich gespeichert habe. Daher muss ich kein reversibles verschlüsseltes oder unverschlüsseltes Passwort speichern.

14
Machavity

Wenn ein Passwort von einer anderen Person als Ihnen gespeichert wird, wird es per Definition nicht sicher gespeichert. Sie müssen Ihr Passwort nie speichern.

Wenn IT-Mitarbeiter jemals einen berechtigten Grund haben, auf Ihr Konto zuzugreifen, ohne dass Sie das Kennwort angeben, muss Ihr Kennwort nicht irgendwo gespeichert werden. Sie können ein Passwort zurücksetzen, auf Ihr Konto zugreifen und Ihr Passwort durch das Original ersetzen. Alles ohne jemals Ihr Passwort zu kennen.

Wenn sie Ihr Passwort an Sie senden können, können sie es an jemanden senden, der vorgibt, Sie zu sein. Es ist also nicht sicher.

PS. Sie müssen das Passwort für die Authentifizierung absolut nicht speichern. Sie können einen gesalzenen Hash speichern, von dem das Wiederherstellen des Passworts unmöglich ist. Das ist die Standardpraxis. Wie können sie es an jemanden senden, der vorgibt, Sie zu sein? Das nennt man Social Engineering. Jemand ruft an, überzeugt sie davon, dass Sie es sind und dass sich Ihre E-Mail-Adresse geändert hat, und sie senden das Passwort an die falsche Person.

1
gnasher729