Es gibt viele unterschiedliche Meinungen und Strategien Passworte zu erstellen, welche sicher sind und auch merkbar bleiben. Natürlich gibt es auch Programme die einem dabei unterstützen Passworte zu speichern und zu merken. In dem Fall ist man jedoch Abhängig davon. In diesem Artikel möchte ich auf die Erstellung von individuellen Passworten eingehen, so dass man in der Masse der vielen Accounts eine gute Strategie findet um sich Passworte auch merken zu können. Die, hier angeführte Herangehensweise soll als Anregung für die Entwicklung einer eigenen Strategie verstanden werden!
Ich behandle hier nur einen Anwendungsfall für Passworte. Unsere eigenen Accounts und Zugangsdaten. Wenn wir Passworte z.B. für ZIP Archive verwenden und unseren Kunden weiter geben erfordert dies eine neue Strategie. Also eine eigenständige Regel, eigene Logik und Inhalte. Hier kann man auch gerne auf Tools wie 1Password etc. zurück greifen. Spätestens, wenn dem Kunde das Passwort übergeben wurde, wollen wir es eigentlich auch nicht mehr wissen.
Bitte beachtet auch: Für unwichtige Dienste, die keinen Schaden für euch anrichten können, nutzt wegwerf Passworte. Ein grossartiger Heise Artikel zum Punkt: Warum 123456 als Passwort ok ist. Verschwendet also kein gutes Passwort für unwichtige Sachen.
Letzter Hinweis: Es gibt viele Strategien für den Umgang mit Passworte. Alternativer Artikel bei Heise: Es gibt auch eine Reihe an Tools, die Ihre Berechtigung haben. Allerdings auch Ihre Grenzen. Denn manch generiertes Zufallpasswort ist oft gar nicht so zufällig, wie gedacht. Siehe hier, greifen diese Tools häufig auf Funktionalitäten des Betriebsystems zurück. Torvalds schraubt überraschend am Zufallszahlengenerator.
Fangen wir damit an, das Warum zu beantworten.
- Wir erstellen für jeden Dienst ein eigenes Passwort.
- Vermeiden damit, dass wir identische Passworte nutzen und somit alle unsere Accounts im Falle eines Passwortdiebstahls ungeschützt sind.
- Ist ein Passwort verloren ist es für immer verloren!
- Es wird bei den vielen Angriffsversuchen immer wieder verwendet.
- Unterschiedliche Ziele werden mit identischen Zugangsdaten angegriffen.
- Wird eure Emailadresse (Benutzername) und Passwort z.B. bei einem Dienst entwendet, so werden diese i.d.R. unmittelbar durch die Diebe auch bei anderen Diensten erprobt.
- Somit verhindern wir, dass durch ein mehrfach verwendetes Passwort auch mehrere Konten in kurzer Zeit angegriffen und missbraucht werden.
- Wir schaffen eine Lösung, damit wir ohne Hilfsmittel / Programme ein Passworte merken können.
Grundgerüst
Das Passwort besteht hier aus mehreren für uns rekonstruierbaren Informationsblöcke, welche voneinander unabhängige Informationen enthalten. Im Beispiel verwende ich 3 Blöcke, es geht aber auch nur mit 2 oder mehr. Die Reihenfolge ist dabei egal. Welche Informationen in eurem Passwort hinterlegt sind, müsst Ihr für euch klären und auch eine eigenständige Regel finden. Daher kann dies nur als Anregung und Beispiel dienen, wie man damit umgehen kann!
Natürlich ist dies noch nicht der Weißheit letzter Schluss. Wie im Workshop schnell klar war, dieses Passwort scheint wohl für die Apple icloud verwendet zu werden. Damit ist unsere Strategie sehr offensichtlich. Wer also unser Passwort sieht, kann schnell einen Rückschluss auf den Einsatzzweck und unsere Strategie schliessen. Zudem, maschinell im Bruteforce Verfahren keine wirklich Hürde.
PS, auch ein kurzer 8 Stelliges Passwort kann sicher sein! Ich konnte den Heise Artikel nicht mehr finden. Sinngemäss war wie folgt: 9-d/g7+e und wurde erst nach rund 20 oder 30 Jahren erraten. Beschreibt einen berühmten Schachzug.
Kommen wir also zum 2. Schritt. Wir benötigen eine Regel, wie wir mit den Informationen umgehen. In diesem Beispiel wie folgt:
- Der 1. Block zum dienst war meine Grundlage die Domain des Anbieters: apple.com
- Ich nutze die letzen 3 Konsonanten der Domain. (Dem Teil vor der Endung.)
- Füge die Domain an und nutze den 1. Buchstaben als Grossbuchstaben.
- Art des Dienstes.
- Es handelt sich um eine: Cloud
- Auch hier nutze ich nur die Konsonanten und z.B. nur die ersten 3, sowie Kleinschreibung.
- Persönlicher Schlüssel
- Auf meinen Schreibtisch steht eine Blume mit 3 Blüten, ganz einfach.
- Aus dem Wort Blume 1. und letzter Buchstabe unter Beibehaltung der Gross / Kleinschreibung.
- Es folgt die Zahl 3 mit vorangestellter 0. Habe auch eine Orchidee mit 11 Blüten.
Wie wir jedoch sehen, reicht das noch nicht. Vergleichen wir es mit dem Passwort oben, das viele Jahre nicht erraten wurde. Es fehlt die Komplexität. Sonderzeichen etc. Hier gibt es nun mehrere Lösungswege die man auch kombiniert nutzen kann.
Verfeinerung und Eselsbrücken finden
Aus der typografischen Gestaltung, schlagt mich nun nicht dafür liebe Typografen, kann man mit mehreren Möglichkeiten der Gross / Kleinschreibung, Ersetzen von Buchstaben durch Zahlen oder Zeichen, variieren. Mich hat hier Leetspeak ein wenig beeinflusst.
- Aus apple könnte also folgendes werden.
- pplCom -> wird zu pp1(om, pP1C0m oder p9!(=m
- Aus der Cloud
- cld -> cLd, ClD, (1d, usw.
- Mein persönlicher Schlussel: Blume mit 3 Blüten (diese steht auf dem Schreibtisch, gute Eselsbrücke.)
- Be03 -> 3eOB, §e03, §e0§, usw. usw.
Nicht jeder Dienst erlaubt bestimmte Sonderzeichen. Folgende fallen häufiger unter die nicht erlaubten: ! ; ` ´ ‚ “ Dies liegt daran, dass es für Computersysteme Steuerzeichen sind, für die man sogenannte Escape Sequenzen benötigt, damit der Rechner diese nicht als Befehl interpretiert. Langer rede kurzer Sinn, schlecht programmiert, Softwarefehler usw. und Schwups lässt sich das zum Ausbrechen aus einem Program oder einem „durch Angreifer“ gewünschten Fehlerverhalten ausnutzen.
Somit könnte das Passwort schon wie folgt lauten: p9!(=m(1d§eO3. Das ist womöglich schon sicher. Mir persönlich aber noch zu einfach und zu kurz. Ich füge noch eine simple Regel für die Trennung der Blöcke ein!
Wir brauchen mehr Sonderzeichen 😉 ist meine Devise. Ich bin am 14.08.1823 geboren. Stimmt natürlich nicht ist nur ein Beispiel. Daraus leite ich z.B. ganz einfach die Trenner als Sonderzeichen für die Blöcke ab.
- Das Passwort beginnt also mit dem Tag meiner Geburt.
- Statt der Zahle 14, halten wir die Shit Taste fest und erhalten: !$
- Zwischen dem Block Dienst und Art des Dienst also 1. und 2. Trennen wir mit dem Monat.
- Führende Nullen streichen wir aber diesmal, damit das Passwort auch unterschiedlich lang wird.
- Sind alle Passworte gleich lang, ist ein Rückschluss auf eine simple Regel leichter möglich.
- Wird also aus 8 (
- Führende Nullen streichen wir aber diesmal, damit das Passwort auch unterschiedlich lang wird.
- Beim Jahr können wir uns nun mehrere Dinge Überlegen.
- Ich nutze nur einen Auszug. Das Jahrhundert, 18 ist aber sehr Konstant.
- Das Jahr also 23
- Rückwärts 3281
- Nur die Mittlere Ziffer 82 oder nur 1. und letzte Ziffer? 13
- Ich habs beim Jahr belassen 1823 wird !(„§
Unser Passwort lautet nun: !$ p9!(=m ( (1d §eO3 !(„§ Ich habe es nun bewusst durch Leerzeichen getrennt, damit wir die Trenner und Informationsblöcke besser erkennen können.
Wir wirkt sich das nun aus?
Für einen Account z.B. beim Stern, den ich als Protfolio nutze:
- 1. Block letzte 3 Konsonanten und Domain: srnDe -> 5rn)e
- 2. Block Portfolio: Prt -> 9rt
- Block bleibt unverändert: §eO3
- Trenner bleibt unverändert: !$ ( !(„§
Ergibt das Passwort: !$ 5rn)e ( 9rt §eO3 !(„§
Vergleich dazu Apple Cloud: !$ p9!(=m ( (1d §eO3 !(„§
Natürlich wirkt das am Anfang sehr komplex. Bei meiner persönlichen Regel, habe ich mir diese am Anfang auch als einfache Notizen mit geführt. Aber nach kurzer Zeit sitzt das.
Welche Vorteile haben wir nun daraus?
Was haben wir nun erreicht?
- Wir sind in der Lage für fast jeden Account ein individuelles Passwort zu erstellen.
- Für den seltenen Zufall, dass es mal gleich sein sollte. Damit kann man leben.
- Passworte lassen sich regelmässig ändern ohne, dass es zu ähnlich bleibt, durch:
- Änderung von Inhalt der Trenner oder Regel für die Trenner
- Änderung des Persönlichen Schlüssel: Inhalt oder Regel
- Reihenfolge der Blöcke.
- Die Passworte unterscheiden sich hierbei so stark, dass die Strategie / Methode erst mit vielen erlangten Passwörtern ermittelt werden kann. Also dann, wenn genug Daten vorliegen, dass man diese Vergleichen und damit verbunden Systematiken erkennen kann.
Auch wenn die Hürde zum Einstieg etwas grösser ist, so ist die Auswirkung im Nachgang deutlich geringer. Wenn das Passwort mehrerer Accounts geändert werden muss, dann kann die Änderung eines Blockes: z.B. persönlicher Schlüssel viel schneller gemerkt werden. Das betrifft auch die Anforderung an regelmässige Passwortänderungen einiger Systeme und Sicherheitsrichtlinien. Trenner ändern und Die Reihenfolge der Blöcke reicht in vielen Fällen aus.
Für den Anfang kann man die Regeln sicherlich einfacher halten und später bei Bedarf erweitern.
Zusammenfassung
- Informationsblöcke definieren
- Persönlicher Schlüssel
- Schlüssel für den Dienst
- Eine ggf. einheitliche Regel für den Umgang mit den Buchstaben, Zahlen und ggf. Sonderzeichen
- Welche Buchstaben nutze ich. z.B. 1. und letzter Buchstaben vom Händlername + Domain
- Regel / Stelle für Grossbuchstaben.
- Regel für den Tausch von Buchstaben durch Zahlen oder Sonderzeichen.
- Regel für die Trennzeichen. Abfolge aus Sonderzeichen, Buchstaben und ggf. Zahlen.
Woher weiss ich nun, dass mein Passwort nicht schon bekannt ist?
Es gibt eine Organisationen welche sich dem Thema Identitätsdiebstahl angenommen hat. Have i been Pawned halte ich für Vertrauenswürdig. Hier kann man prüfen, ob das gewählte Passwort bereits öffentlich im Umlauf ist. Wer dem ganzen nicht traut, hat die Möglichkeit am Ende der Seite eine Liste von gestohlenen Passworte, herunter zu laden und dies eigenständig prüfen. Ein Misstrauen und Vorsicht ist bei Passworten natürlich immer berechtigt! Die Passworte sind dort SHA1 verschlüsselt abgelegt, gefolgt mit der Anzahl Treffer <hashkey>:<Anzahlt treffer> Also der Anzahl, wie oft und in unterschiedlichen Accounts dieses Passwort gefunden wurde. Eine Beschreibung, wie man sein Passwort zu einem SHA1 umwandelt und eigenständig prüft, folgt bei Gelegenheit noch.
Für die technisch versierten, ein kleines Script für die Mac Console:
#!/bin/bash
# Hier wird die ausgepackte Datei eingetragen
HASHDATEI='pwned-passwords-sha1-ordered-by-count-v7.txt'
# Liste mit, Leerzeichen getrennt, von Passworten die gerpüft werden sollen.
# Es kann auch nur ein Passwort geprüft werden.
PASSWORDS='apfel banane maria paula'
for PWD in $PASSWORDS; do
HASH=$(echo -n $PWD | shasum | awk '{print $1}' |tr '[:lower:]' '[:upper:]');
echo "---------------------------------------------------------------";
echo "$PWD -> $(grep $HASH $HASHDATEI)";
done
Weiter geht es mit dem 2. Teil der Accountstrategie: Heirmit lässt sich schnell ermitteln, welcher Service / Dienst Webseite betroffen ist und sich ein potentieller Schaden weiter einschränken.