====== Passwörter ====== ===== Allgemeine Empfehlungen ===== * [[.:2fa|Zwei-Faktor-Authentifizierung]] nutzen, falls möglich * je länger, desto besser! * mindestens 12 Zeichen, besser noch >16[(Leistungsfähige Computer knacken <12 Zeichen in wenigen Minuten bis Tagen.)] * Jedes Passwort nur ein Mal verwenden.[(Selten benötigte Passwörter können mit einem sehr sicheren Passwort in [[#Passwortmanager]]n gespeichert werden.)] * Groß-/Kleinschreibung, eine eingestreute Zahl oder ein Sonderzeichen erschwert es Angreifern * einfach zu merken: ein Satz, beispielsweise //''WasFür1PferdStapeltBatterien?''// * Für [[#Passwortmanager]]: Sicheres Masterpasswort verwenden! ===== Stärke ===== Entgegen der landläufigen Meinung und häufiger Empfehlung sind aussprechbare Passwörter nicht automatisch leichter von Computern zu knacken als Passwörter mit zufälligen Zeichen.[(Das Hauptmaß für die Komplexität eines Passworts ist die [[https://www.inf-schule.de/gesellschaft/passwoerter_theorie_und_praxis/03_entropie_von_passwoertern|Entropie]], die in Bit gemessen wird.\\ Je größer die Entropie, desto schwerer ist das Passwort für einen Computer zu raten. Derzeit werden mindestens 72 Bit als sicher angesehen.)] Passwörter sollten als Ganzes natürlich nicht in Wörterbüchern stehen. Allerdings ist eine Kombination aus mehreren zufälligen Wörtern für Computer und Menschen schwer zu erraten[(Das Paradoxon liegt hier dabei, dass die Menschen intuitiv erwarten, dass ein einfach zu merkendes Passwort auch einfach zu erraten ist.)]. Es ist nicht nicht anzuraten, sich das Passwort selbst auszudenken[(In der Regel hat man einen geringeren Wortschatz als ein Wörterbuch und [[https://sz-magazin.sueddeutsche.de/technik/null-acht-fuenfzehn-79332|ausgedachte Passwörter oder Zahlen folgen meist Vorlieben]].)]. Die [[https://de.wikipedia.org/wiki/Diceware|Diceware-Methode]] ist zu empfehlen.[(Anstatt physischer Würfel kann auf Passwortgeneratoren zurückgegriffen werden. Diese finden sich bspw. in gängigen Passwortmanagern, siehe [[#Passwortmanager]].)] {{ :de:guide:password_strength_de.png?nolink |}} Mit dem Tool [[https://github.com/dropbox/zxcvbn|zxcvbn]] kann man auf sehr schnelle und einfache Weise grob die Stärke von Passwörtern schätzen. ===== Speicherung ===== Nahezu jede Internetseite benutzt eine Datenbank, in der Login-Passwörter zusammen mit dem Usernamen gespeichert werden. Wenn ein Dienst angegriffen und die Datenbank entwendet wird, ist auch das Passwort als kompromittiert anzusehen, da man nicht von einer sicheren Speicherung (bspw. durch gesalzene Einweg-[[https://de.wikipedia.org/wiki/Hashfunktion|Hashfunktion]]) ausgehen kann. Sobald ein Passwort gefunden wurde, landet es in Passwortlisten und wird für Angriffe auf weitere Dienste genutzt. Man muss bei verschiedenen Diensten also unterschiedliche Passwörter und idealerweise unterschiedliche eMail-Adressen verwenden. === Sicherheit der Speicherung === Es gibt mehrere Methoden, Passwörter zu speichern. Je nach Komplexität des digitalen Fingerabdrucks einer Datei variiert die Dauer, in der man das Klartextpasswort findet. ^ Methode der Speicherung ^ Aufwand zum Finden einer Kollision | | Klartext | sofort | | geknackte Hashfunktion | wenige Minuten | | gesalzene geknackte Hashfunktion | mehrere Tage | | sichere Hashfunktion | mehrere Jahre bis Jahrzehnte | ===== Ansätze zum Knacken ===== ==== Seitenkanalattacke ==== Ausnutzen von Sicherheitslücken in der Umsetzung der Verschlüsselung durch das Programm. Kein direktes Angreifen des Passwortstrings, sondern Sammeln von genügend Informationen über das Passwort, um es berechnen zu können. Sicherheitslücken wurden beispielsweise bereits in den Funktionen zur Generierung von Zufallszahlen gefunden. Nutzbar insbesondere beim Knacken von Verschlüsselungen mit vielen Daten, bspw. Transportverschlüsselung. ==== Wörterbuchattacke ==== Ausprobieren einer Liste von Passwörtern. Dabei ist auch eine Kombination mehrerer Passworteinträge möglich. In der Regel sind Wörterbücher zum Knacken von Passwörtern mit häufiger auftretenden Passwörtern aus vergangenen Datenlecks gefüllt. Je häufiger ein Passwort insgesamt verwendet wird, desto schneller kann es geknackt werden. Es gibt Passwortdatenbanken wie die sog. "Collection #1-5", in der unzählige Passwörter enthalten sind. Nahezu jedes erdenkliche, von Menschen ausgedachte Passwort ist in irgendeiner Datenbank enthalten. Daher sollte man sich bei der Generierung von Passwörtern nicht auf sein eigenes Vorstellungsvermögen, sondern auf einen Computer oder noch besser, einen Hardware-Zufallsgenerator[(Auch (ungezinkte) Würfel sind Zufallsgeneratoren!)] verlassen. ==== Rainbow Tables ==== Vorberechnung von Kollisionen bei Passwort-Hashing-Algorithmen. ==== Brute Force ==== Ausprobieren aller Passwörter nach den vorher festgelegten Regeln zur Passwortsicherheit. ===== Software ===== ==== Passwortmanager ==== ^ Software ^ Plattform(en) ^ Besonderheiten | | [[https://keepass.info/|Keepass]] | Windows, Linux, macOS | Plugin-System | | [[.:keepassxc|KeePassXC]] | Windows, Linux, macOS | Aussprechbare Passwörter, SSH-Agent, mehrere Datenbanken gleichzeitig, Passwörter teilen | | [[https://strongboxsafe.com/|Strongbox]] | iOS | eingebaute Synchronisation | * [[https://www.heise.de/tests/Passwortmanager-im-Test-Passwoerter-und-mehr-sicher-verwalten-4647005.html|Passwortmanager im Test]] (Heise+) ==== Verschlüsselung ==== ^ Name des Programms ^ verschlüsselt… | | VeraCrypt | Dateien | | PGP | eMails, Klartext, Dateien | | AES | alles | | TLS | Transportverschlüsselung | ==== Cracking ==== ^ Name des Programms ^ Hashfunktion / Verschlüsselung ^ Methode | | Aircrack / Airsnort | WEP | Mitschnitt von Initialisierungsvektoren | | ::: | WPA | Mitschnitt von Paketen und Wörterbuchattacke | | Hashcat | [[https://hashcat.net/hashcat/#features-algos|200 verschiedene Hashing-Algorithmen]]\\ darunter MD5, SHA1, PBKDEF2 | brute force, wordlist | ===== Was man nicht tun sollte ===== ==== Passwortkarten / Schemata ==== Viele Leute haben ein Standardpasswort und erweitern das nur um den Anfangsbuchstaben des Dienstes, bei dem sie sich einloggen. Das ist nur geringfügig besser, als ein Standardpasswort ohne Erweiterung. Hacker könnten sich Zugriff auf Passwortdatenbanken erschleichen und die Passwörter für sog. //Credential-Stuffing-Attacken// verwenden, bei denen sie die Passwörter auch bei anderen Diensten ausprobieren. Auch Passwortkarten zur Generierung von Passwörtern[(https://www.heise.de/ct/ausgabe/2014-18-Kennwoerter-mit-Zettel-und-Stift-verwalten-2283904.html)] sind suboptimal, da sie auf das Prinzip //security by obscurity// setzen. Sobald man das Generierungsschema kennt, kann man sich bei allen Diensten einloggen – das Schema ist quasi nichts anderes als ein Masterpasswort. Auch das Ändern von Passwörtern nach einem Leak gestaltet sich schwierig, da man dann entweder einen Zähler hochzählen oder das Schema ändern muss. ===== weitere Informationen ===== * [[https://www.bsi-fuer-buerger.de/BSIFB/DE/Empfehlungen/Passwoerter/Umgang/umgang_node.html|Sicherer Umgang mit Passwörtern]] (Bundesamt für Sicherheit in der Informationstechnik) * [[https://blog.wuermkanal.de/was-ist-ein-sicheres-passwort/|Was ist ein sicheres Passwort?]] (Wuermkanal.de, 9/2017) * [[https://de.wikipedia.org/wiki/Passwort|Wikipedia: Passwort]]