Das sichere Passwort: Strategien

Teil 1: Grundlagen
Warum Passwörter?
Wie werden Passwörter verarbeitet?
Angriffe auf Passwörter

Teil 2: Regeln und Mythen
Regeln für sichere Passwörter
Passwort-Mythen

Teil 3: Strategien
Passwort-Strategien
Zufällige Passwörter durch Würfeln
Strategie I: Der Passwort-Tresor
Das dreigeteilte Passwort
Strategie II: Das Passwort-Schema
Strategie III: Der Passwort-Zettel
Strategie IV: Das Passwort aus einem Hash
Resümee

Passwort-Strategien

Hier soll versucht werden die in den vorigen Kapiteln Regeln in Passwort-Strategien umzusetzen, die von Nutzern auch gehandhabt werden können und die alle zu sehr sicheren Passwörtern führen.

Zufällige Passwörter durch Würfeln

Wie ich schon bei den Passowrt-Regeln geschrieben habe halte ich Würfeln für eine gute Methode zum Erzeugen von guten Passwörtern. Ich habe hier mal eine Beispieltabelle für zwei normale Würfel eingestellt. Die beiden Würfel sollten unterscheidbar sein (hier durch eine schwarze und weiße Farbe).

PW_WürfelTabelle

In der Tabelle habe ich alle Buchstaben und Ziffern entfernt, bei denen die Gefahr einer Verwechselung besteht (etwa zwischen der Null und kleinem und großem O). Bei den Sonderzeichen sollten nur welche gewählt werden, die man auch im Urlaub auf einer fremdsprachlichen Tastatur gut finden kann. Aus dem selben Grund scheiden Umlaute aus.

Dienste fordern immer wieder, dass Passworte möglichst aus kleinen und großen Buchstaben, Ziffern und Sonderzeichen bestehen sollten. Damit versuchen sie zwei Dinge sicherzustellen. Einmal sollen die Benutzer dazu gezwungen werden Passwörter zu verwenden, die nicht in Wörterbüchern stehen (wahrscheinlich mit eher mäßigem Erfolg). Außerdem soll sichergestellt werden, dass möglichst viele unterschiedliche Zeichen für ein Passwort verwenden werden. Dabei spielt es aber eigentlich keine Rolle ob es sich dabei um Buchstaben, Zahlen oder Sonderzeichen handelt. Allein die Anzahl der zugrunde liegenden Zeichen und die Länge des zufälligen Passworts bestimmen dessen Komplexität und damit wie sicher es ist. Man könnte also auch sagen, dass ein Passwort deshalb aus kleinen und großen Buchstaben, Ziffern und Sonderzeichen bestehen soll, weil es sonst Dienste gibt, die das Passwort ablehnen.

Wie man leicht abzählen kann ergeben sich da pro Zeichen des Passworts 36 mögliche gleich wahrscheinliche Zeichen. Das macht bei einem Passwort mit einer Länge von 9 Zeichen 101.559.956.668.416 (also über 100 Billionen) mögliche Passwörter, von denen so gut wie keines in einem Wörterbuch zu finden sein sollten. Selbst wenn ein Angreifer in einem Brute-Force-Angriff eine Millionen Passwörter pro Sekunde ausprobieren könnte, dann bräuchte er zum Ausprobieren aller möglichen Passwörter fast drei Jahre.

Sollten Sie neben einem normalen Würfel noch einen 10-seitigen Würfel zur Hand haben (den man in jedem guten Spielwarengeschäft bekommt), können Sie sich eine Tabelle aus 10 x 6 = 60 Zeichen bauen. Dann reden wir bei 9 Zeichen schon von über 10 Billiarden möglichen Passwörtern. Liebe Angreifer, ich wünsche euch viel Geduld beim knacken!

Strategie I: Der Passwort-Tresor

Man finde für jeden Dienst der mit einem Passwort gesichert ist ein möglichst zufälliges und komplexes Passwort. Und weil man sich die unmöglich alle merken kann packt man die in einen Tresor, den man immer aufmacht, wenn man eines der Passwörter braucht.
Es gibt für alle möglichen Plattformen Programme mit denen man seine Passwörter sicher aufbewahren und verwalten kann. In den Internet-Browser Firefox ist auch eine Passwortverwaltung integriert, die mit einigen interessanten Funktionen punktet. Etwa unterstützt sie den Nutzer beim Ausfüllen der entsprechenden Eingabefelder auf den Web-Seiten. Und sie lässt sich via Sync auf mehreren Rechnern installierten Versionen synchron halten. Allerdings ist sie natürlich nur für Passwörter auf Web-Seiten gedacht. Die PIN für Handy oder Kreditkarte oder die Kombination für das Fahrradschloss sind da natürlich fehl am Platz.

Das Grundprinzip ist bei allen Programmen dieser Art immer sehr ähnlich. In einer verschlüsselten Datei werden alle Passwörter und sonstigen wichtigen Informationen zu den verwendeten Diensten aufbewahrt. Statt der Passwörter für alle Dienste muss man sich nur noch den Schlüssel zum Entschlüsseln der Datei merken, das Master-Passwort.

PW_KeePassIcon

Will man diesen Weg gehen, empfehle ich KeePass. Das ist Open Source und weit verbreitet. Man kann also davon ausgehen, dass es keine bösen Überraschungen geben sollte. Die Software gibt es auch in einer portablen Version, die man gut auf einem USB-Stick mitnehmen kann. Es gibt für KeePass auch kompatible Apps für Googles Android (KeePass2Android), Apples iOS (MiniKeePass) und alle gängigen anderen Betriebssysteme. Einfach mal in den Download-Bereich hineinschauen, da findet man Verweise auf die jeweiligen Projekte.

PW_KeePass

Vorteile:

  • Man kann für jeden Dienst ein eigenes beliebig komplexes einmaliges Passwort anlegen. Damit besteht kein Risiko, dass ein Einbrecher in einen Dienst gleich noch den Zugang zu anderen Diensten des gleichen Benutzers frei Haus geliefert bekommt.
  • Der Nutzer muss sich nur ein Passwort, eben das Master-Passwort merken. Alle anderen holt er einfach aus dem Passwort-Tresor.

Nachteile:

  • Man ist immer auf eine Instanz, ein technisches Gerät angewiesen, wenn man Zugriff auf einen seiner Dienste haben möchte. Hat man mal das Handy oder den USB-Stick nicht dabei, dann kann man nicht mal eben auf dem Computer eines Freundes über das Web seine Emails abrufen.
  • Wenn der Nutzer das Master-Passwort zum Entschlüsseln der Passwort-Datei vergessen hat, sind alle Passwörter in dem Tresor verloren. Alle!
  • Ist es einem Dieb gelungen an den Passwort-Tresor zu gelangen und er hat vielleicht noch die Möglichkeit gehabt den Nutzer bei der Eingabe des Master-Passworts zu beobachten, dann hat er Zugang zu allen Diensten und Konten des Nutzers.
    Beispielszenario: Der Nutzer hat den USB-Stick in einem Rechner eines Internet-Cafes gesteckt. Auf diesem war ein Keylogger und ein Programm installiert, dass alle Dateien des Sticks kopiert.
  • Will man den Passwort-Tresor auf verschiedenen Geräten verwenden, so muss man einen Weg finden wie man diese synchronisiert. Die Versuchung ist dann schon groß das über einen Cloud-Dienst wie Dropbox zu machen. Und ob das so clever ist alle privaten Passwörter einem externen Dienst anzuvertrauen?
  • Wurde eines der technischen Geräte gehackt mit dem Passwort-Tresor besteht Gefahr für alle eingetragenen Dienste und Konten. Im Zweifelsfall müssen alle Passwörter geändert werden.
Das dreigeteilte Passwort

Bei den drei folgenden Strategien schlage ich vor, das Passwort in drei unterschiedliche Teile aufzuteilen, die auch eine unterschiedliche Funktion haben.

Den generellen Teil haben alle Passwörter gemeinsam. Das ist sozusagen das Hauptkennwort mit dem man alle Dienste absichert. Das darf ruhig etwas länger sein, um einem Angreifer so schwer wie möglich zu machen. Und da dieser Teil des Passwortes bei jeder Anmeldung eingegeben werden muss, kann man ihn sich auch relativ schnell einprägen.

Der spezifische Teil unterscheidet die Passwörter der unterschiedlichen abzusichernden Dienste. Damit stellen wir sicher, dass wenn das Passwort für einen Dienst erfolgreich angegriffen wurde unsere übrigen Passwörter weiterhin sicher sind.

Das Versionsteil wird verwendet, um einen Passwortwechsel innerhalb eines Dienstes möglichst einfach zu gestalten. Er wird geändert, wenn man für einen Dienst eine neues Passwort braucht. Die generelle und der spezifische Teil bleiben dann unverändert. Dann muss man sich nur noch merken das wievielte Passwort man für diesen Dienst gerade verwendet.

Natürlich muss man die Teile nicht in dieser Reihenfolge zusammenbauen, sondern der Fantasie wie man das Passwort aus den drei Teilen zusammensetzt sind da keine Grenzen gesetzt.

Strategie II: Das Passwort-Schema

Hier denkt sich der Nutzer ein eigenes Schema für den spezifischen und den Versionsteil aus. Der generelle Teil kann mit Würfeln bestimmt werden.

Ich denke mit einem Beispiel wird das klarer. Nehmen wir an ein Nutzer hat möchte sein Amazon-Konto mit einem Passwort sichern. Als generellen Teil hat er mit der Würfelmethode folgendes festgelegt: „Kd7,4GG!“.

Für den spezifischen Teil hat er sich dieses Schema ausgedacht:

  • Der Folgebuchstabe im Alphabet des letzten Buchstaben des Dienstenames; bei Amazon ein Buchstabe weiter als „n“, also „o“.
  • Die Stelle des drittletzten Buchstaben des Dienstenamens im Alphabet; bei Amazon also 26 für das „z“.“
  • Drei Buchstaben weiter als der erste Buchstabe des Dienstenamens im Alphabet; also hier drei hinter „A“, also „D“.
  • Die Anzahl der Vokale im Dienstename; aus Amazon ergibt sich eine „3“.

Daraus ergibt sich für den spezifischen Teil für den Fall Amazon „o26D3“. Für Ebay wäre es „z2H2“. Man kann den spezifischen Teil natürlich beliebig komplex machen.

Auch für den Versionsteil brauchen wir ein Schema. Da benutzt unser Nutzer die letzten drei Buchstaben des Fußballvereins der Bundesliga-Tabelle 1997/98 am Saisonende. Daran hängen wir die erzielten Punkte des Vereins.

Mit allen drei Bestandteilen ergibt sich bei diesem Schema für Amazon in der ersten Version das Kennwort „Kd7,4GG!o26D3ern68“. Bei einer Änderung in die Version zwei ergäbe sich dann „Kd7,4GG!o26D3hen66“. Oder für Ebay in der dritten Version „Kd7,4GG!z2H2sen55“.

Seien Sie kreativ beim Ausdenken Ihres persönlichen Schemata. Je abgedrehter und schwerer sowohl genereller, als auch spezifischer und Versionsteil zu erraten sind, je besser. Aber Sie sollten sich das Schema natürlich gut merken können, bzw. das Passowort leicht bestimmen können.

Vorteile:

  • Es sind keine technischen Geräte notwendig, um sich seine Passwörter zu generieren oder sich irgendwo anzumelden.
  • Die so entstehenden Passwörter stehen in bestimmt keinem Wörterbuch.
  • Selbst wenn einer der verwendeten Rechner unter der kompletten Kontrolle eines Angreifers ist, sind nur die seit dem verwendeten Dienste und Konten gefährdet. Alle anderen sollten bei einem ausreichend komplexen Schema sicher sein.

Nachteile:

  • Die aus dem Schema entstehenden Passwörter sind schwer zu merken.
  • Kommt jemand hinter die verwendeten Schema und kennt das generelle Passwort, dann kommt er an alle Konten und Dienste.
  • Bei neuen Passwortversionen ändert sich nur der Versionsteil, was wenn man mehrere Passwörter beim gleichen Anbieter kennt dazu führen könnte, dass das Schema durchschaut wird.
Strategie III: Der Passwort-Zettel

Manchmal ist die altmodische Art Dinge zu tun nicht unbedingt die schlechteste. Und so kann ein Zettel sehr hilfreich sein, um sichere Passwörter zu erzeugen und zu verwalten. Auch hier kann man wieder das dreigeteilte Passwort verwenden. Allerdings macht es einem der Zettel einfacher sichere Passwörter zu erzeugen.

Ich habe ein Vorlage für einen solchen Zettel für den Geldbeutel mit LibreOffice zum Runterladen erstellt. Das Dokument sollte sich auch mit neueren Versionen von Microsoft Excel benutzen lassen. Zum Ausfüllen des ersten Zettels (Vorderseite) empfehle ich wieder zu den Würfeln zu greifen. Der zweite Zettel (Rückseite) kann verwendet werden, um sich den Versionsteil für die Dienste zu notieren. Aber auch hier sind sie wieder eingeladen sich einen eigenen Zettel auszudenken.

PW_PasswortZettel

Verdeutlichen wir das Vorgehen wieder anhand eines Beispiels. Nehmen wir an ein Nutzer generiert mit den Zetteln im Foto seine Passwörter. Als Beispiel soll der Zugang zu GMX verwendet werden. Als Grundlage für den generellen Teil verwendet er die Worte „Love you“. Daraus ergibt sich mit Hilfe des Zettels „9!1+G;b“. Das Leerzeichen überspringen wir einfach mal großzügig.

Für den spezifischen Teil hat sich der Beispielnutzer dazu entschieden nicht wieder in Zeile 1 der Tabelle anzufangen, sondern einfach in Zeile 8 weiter zu machen. Also ergibt sich für „GMX“ der spezifische Teil „3A8“.

Für den Versionsteil ist er wieder in Zeile 1 des Zettels angekommen. Der Nutzer verwendet die englischen Worte der Zahlen, also bei seinem GMX-Konto „two“, was „iL2“ ergibt.

Also haben wir alles in allem das Passwort „9!1+G;b3A8iL2“ (Das steht bestimmt in keinem Wörterbuch!). Natürlich sind auch hier wieder der Art und Weise wie man dieses Passwort zusammensetzt der Kreativität keine Grenzen gesetzt. Letztlich zählt nur, dass man es sich merken können muss.

Vorteile:

  • Durch den Zettel gibt es einen Medienbruch; Es wird ein anderes Medium als das zu schützende verwendet. Wird also ein Computer oder Handy erfolgreich angegriffen, so sind die Passwörter immer noch sicher.
  • Die generierten Passwörter stehen mit Sicherheit in keinem Wörterbuch und in keiner Rainbow Table.

Nachteile:

  • Geht der Zettel verloren und der Nutzer hat keine Kopie, dann kommt er nicht mehr an seine Dienste oder Konten. Also immer eine Kopie machen und die an einem sicheren Ort aufbewahren!
  • Kommt ein Angreifer an den Zettel und kennt außerdem mindestens ein Passwort, dann hat er gute Chancen alle Dienste und Konten des Nutzers anzugreifen.
  • Bei einem Passwortwechsel (neue Version) wird nur ein relativ kleiner Teil des Passworts verändert.
Strategie IV: Das Passwort aus einem Hash

Ich möchte noch mal zu einem Thema zurückkommen, dass wir schon mal ganz am Anfang hatten: Hash-Funktionen. Man kann damit nämlich nicht nur Passwörter in Datenbanken vor unbefugtem Zugriff schützen, sondern auch damit Passwörter erzeugen. Wer im Grundlagenartikel mit einem Hash-Generator im Internet rumgespielt hat, wird festgestellt haben, dass dabei sehr kryptische Ergebnisse herauskommen. Wenn Sie es noch nicht probiert haben, spielen Sie also ruhig mal ein, zwei Minuten mit einem Hash-Generator herum (etwa mit diesem).

Nochmal: Hash-Funktionen erzeugen bei unterschiedlichen Eingabewerten (Texten) unterschiedliche kryptische Ausgabewerte. Aus den Ausgabewerten kann man nicht die Eingabewerte zurück berechnen. Super für Passwörter!

Benutzen wir einfach unserer dreigeteiltem Passwort als Eingabewert in eine Hash-Funktion und der Ausgabewert ist dann unser Passwort. Hier die Bestandteilen aus dem vorigen Beispiel: der generelle Teil ist „Love you“, der spezifische Teil ist „GMX“ und der Versionsteil „2“ für die zweite Passwort-Version. Zusammen ergibt das den Eingabewert „Love youGMX2“ und der SHA-256-Hash erzeugt „168ff6c4977ebb874edc178d4c0980fb4e3b3fa2fb1b45343aa0d6a4ea0133b8“ als Ausgabewert.
Brauche ich jetzt eine neue Version so ändere ich am Ende die „2“ in eine „3“ und erhalte einen völlig anderen Hash: „1433a2fd773ed1bd764bc37155d6cb9f8e9063461749e0556798af56bcef0d9a“. Und weil die Passwörter so ein wenig lang und unhandlich sind, nehme ich davon nur einen Teil, etwa die ersten 10 Zeichen.

Die Werte werden hier Hexadezimal dargestellt, das heißt dass nur die Zeichen „0123456789abcdef“ verwendet werden, also 16 Zeichen. Wenn wir also die ersten 10 Zeichen des Hash-Wertes nehmen haben wir theoretisch 16 hoch 10 = 1.099.511.627.776 also etwa 1 Billiarde mögliche Passwörter. Dauert auch ein bisschen die alle auszuprobieren. Und was anderes als ein Brute-Force-Attacke bleibt einem Angreifer nicht übrig, da die Passwörter bestimmt in keinem Wörterbuch stehen.

Das Elegante an dieser Methode ist nicht nur, dass man auf diese Weise für jeden Dienst und jede Version komplett unterschiedliche Passwörter erzeugen kann, sondern das Elegante ist, dass man sie sich nicht merken muss, weil man sie sich jederzeit wieder errechnen lassen kann. Man muss sich also nur den generellen Teil des Passworts und die Version merken und kann damit für alle Dienste und jede Version jedes mal das richtige Paswort errechnen lassen.

Aber Stopp, bitte benutzen Sie keinen Hash-Generator auf einer Web-Seite im Internet für echte Passwörter! Weil: damit haben Sie einer Web-Seite von der Sie nicht wissen wie vertrauenswürdig sie ist, vielleicht ein wichtiges Passwort anvertraut. Außerdem weiß man nicht wer eventuell zwischen Web-Server des Anbieters und dem eigenen Computer alles mithört. Benutzen Sie Software auf ihrem Gerät dafür.

Am bekanntesten ist wohl die Open Source Software namens Master Password APP, für die es Versionen für sehr viele Plattformen gibt. Aber leider nicht als Plugin für den Firefox.

Wollen Sie neben einer Software auf dem Rechner auch ein Firefox Addon mit dem sie direkt im Browser arbeiten können empfiehlt sich Password Maker, ebenfalls Open Soruce.

PW_PasswordMaker

Password Maker bietet auch eine Web-Seite an, auf der mittels HTML und JavaScript die Kernfunktionalität ausprobiert werden kann, ohne erst Software zu installieren. Die verwendete Datei kann man sich auch als ZIP auf die lokale Platte ziehen und dann immer vom Computer (oder jedem anderen Gerät, dass einen Webbrowser hat) aus verwenden, ohne eine Anwendung installieren zu müssen.

Sehr cool gemacht finde ich auch das Firefox Addon BPasswd2 von Alex Hornung. Er benutzt mit bscript keine der gängigen Hash-Funktionen, sondern eine, die speziell für Passwörter entwickelt wurde. Der Kniff ist, dass es selbst für Computer sehr komplex ist den Hash zu berechnen und dadurch Angreifer nochmal mehr Zeit brauchen den Hash zu brechen.

PW_BPasswd2

Auch von der Benutzbarkeit gefällt mir das Addon sehr gut. Leider hat es bis jetzt erst sehr wenige Benutzer überzeugt, vielleicht gerade wegen des unortodoxen Algorithmus. Ich werde BPasswd2 auf jeden Fall eine Chance geben und es eine Zeit lang ausprobieren.

Vorteile:

  • Man muss sich nur den generellen Teil des Passwortes merken und geheim halten. Die eigentlichen Passwörter kann man daraus immer leicht berechnen.
  • Wenn der Nutzer kein einfachen generellen Teil verwendet, dann stehen die generierten Passwörter auch mit Sicherheit in keinem Wörterbuch und in keiner Rainbow Table.
  • Der Wechsel auch nur eines Passwortteils führt zu einem komplett unterschiedlichen Passwort.

Nachteile:

  • Ist ein Angreifer an den geheimgehaltenen Passwortteil gekommen, ist ein Angriff relativ einfach. Dann müssen alle Passwörter geändert werden.
  • Man braucht immer einen Computer, ein Handy oder ein Tablet, um die Passwörter zu generieren. Ohne ist man aufgeschmissen.
Resümee

Egal ob Sie sich nun für einen Passwort-Tresor, ein eigenes Passowrt-Schema, den Passwort-Zettel oder das berechnen mit einer Hash-Funktion entscheiden, alle Verfahren fühen auf jeden Fall bei richtiger Ausführung zu deutlich besseren Passwörtern als der normale unbedarfte Umgang mit ihnen, wie ihn die meisten Nutzer praktizieren. Für welches Verfahren Sie sich auch immer entscheiden: seien sie konsequent. Eine Kette ist immer nur so stark wie ihr schwächstes Glied. Und wenn beispielsweise ihr genereller Passwort-Teil leicht zu erbeuten ist (sei es weil er leicht zu raten ist oder etwa weil sie unvorsichtig damit umgehen), dann nütz ihnen das tollste Verfahren nichts.

Ich selbst verwende zurzeit noch ein eigenes Passwort-Schema, werde aber sehr bald auf das Hash-Verfahren umsteigen. Wobei ich mir im Moment noch Gedanken darüber mache, wie man den generellen Passowrt-Teil besser schützen könnte.

Advertisements

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s