Samstag, 31. Juli 2010


Kolumne

Montag, 30. November 2009 | Kolumne

KW 49/09 - Standpunkt Sicherheit

(Link zum Artikel: http://www.entwickler.de///052674)

Sind Passwortregeln überflüssig? Dieser Standpunkt Sicherheit liefert Hinweise auf die Antwort.

Bruce Schneier hat in der vergangenen Woche in seinem Blog auf einen Artikel von Cormac Herley von Microsoft Research verwiesen : 'So Long, And No Thanks for the Externalities: The Rational Rejection of Security Advice by Users' (PDF). Wie meistens bei Hinweisen von Bruce Schneier sind die Kommentare in seinem Blog mindestens genau so interessant wie die Texte, auf die er verweist. Aber das nur am Rande, hier will ich mich in der Tat auf den Text von Cormac Herley beschränken. Worum gehts? Als kurz gefasste Kurzfassung könnte man den Text mit "Auf Sicherheitsratschläge hört niemand, weil sie sich nicht lohnen" zusammen fassen. Oder etwas wissenschaftlicher ausgedrückt: Aufwand und Nutzen stehen in keinem vernünftigen Verhältnis zueinander. Während Cormac Herley wirtschaftlich begründet, warum z.B. Passwortregeln nicht beachtet werden, möchte ich mal die Sicherheitsseite betrachten. Denn Cormac Herley hat m.E. einen Punkt übersehen: So wirtschaftlich, wie er es voraussetzt, denkt kaum ein normaler Benutzer. Aber dazu später mehr, kommen wir zu den Passwortregeln.

Die üblichen Passwort-Regeln

Niemand, der auch nur etwas Ahnung von IT-Sicherheit hat, wird abstreiten wollen, dass sichere Passwörter ein absolutes Muss sind. Aber sind sie das wirklich? Wir kennen sicher alle die Anforderungen an ein gutes Passwort: Es soll lang sein, Groß- und Kleinbuchstaben, Zahlen und wenn möglich Sonderzeichen enthalten, in keinem Wörterbuch stehen, oft gewechselt und nicht aufgeschrieben werden. Damit wird der Umgang mit Passwörtern, vor allem, wenn man viele benötigt, zur Qual. Hinzu kommt, dass man die Passwörter immer nur für einen Zweck verwenden soll und nicht etwa für mehrere Websites das gleiche Passwort nehmen darf. Dabei lassen sich inzwischen eigentlich alle Regeln für ein sicheres Passwort mehr oder weniger stichhaltig widerlegen. Fangen wir mit dem letzten Punkt an: Passwörter dürfen nicht aufgeschrieben werden.

Passwort-Regeln zerpflücken, zum ersten: Nicht aufschreiben

Gegen die "Nicht aufschreiben"-Regel verstoße ich andauernd, denn ich schreibe mir alle Passwörter auf, mit Ausnahme der paar, die ich ständig brauche und die ich mir durch die ständige Wiederholung merken kann. Alle anderen, die ich nur alle paar Wochen oder Monate mal brauche, stehen in einem Notizbuch. Außerdem gibt es eine verschlüsselte Datei auf einem nicht mit dem Netz verbundenen Rechner, aber die ist längst nicht mehr aktuell - die Notizbuchlösung ist viel praktischer und hat sich bewährt. Natürlich ist das unsicher, wenn einem Unbefugten das Notizbuch in die Hände fällt. Aber wenn jemand das Notizbuch aus einer verschlossenen Schreibtischschublade in meinem Büro im eigenen Haus klaut, habe ich sehr wahrscheinlich viel schlimmere Probleme als nur die geklauten Passwörter. Und selbst in einem Großraumbüro mit regem Publikumsverkehr dürfte die Gefahr, dass ein aufgeschriebenes Passwort aus der beim Verlassen des Arbeitsplatzes verschlossenen Schreibtischschublade geklaut wird, deutlich geringer sein als die, dass es von Cyberkriminellen ausgespäht oder gebrochen wird. Eigentlich müsste die "Nicht aufschreiben"-Regel nämlich anders formuliert werden, z.B. "Aufgeschriebene Passwörter müssen sicher verwahrt werden". Es spricht nichts gegen einen weggeschlossenen Zettel, aber viel gegen das immer wieder zu beobachtende PostIt am Monitorgehäuse.

Passwort-Regeln zerpflücken, zum zweiten: Regelmäßig wechseln

Kommen wir zum nächsten Punkt: Passwörter sollen regelmäßig gewechselt werden. Theoretisch ist das sicher richtig, aber praktisch... zumindest ist es unpraktisch, da man sich dann ständig neue Passwörter ausdenken und merken oder aufschreiben muss. Und ob das die Sicherheit erhöht, darüber kann man auch streiten. Daniel Wesemann hat dazu vor kurzen einen Eintrag im Handler's Diary des ISC veröffentlicht: 'Password rules: Change them every 25 years'. 25 Jahre sind nun schon ziemlich großzügig, aber es geht ja nur ums Prinzip: Wenn ein Angreifer sich das Passwort, egal wie, verschafft hat, wird er es i.A. sehr bald verwenden, um einer möglichen Änderung zuvor zu kommen. Je häufiger man sein Passwort ändert, desto kleiner ist der Zeitraum, in dem ein erfolgreicher Angreifer es nutzen kann. 90 Tage, 60 Tage, 30 Tage - das sind in der Hinsicht dann aber alles viel zu lange Zeiträume. Sicherheitshalber müsste man sein Passwort also sehr, sehr häufig wechseln. Wie wäre es mit stündlich? Auch das ist eine lange Zeit. Noch öfter? Schon stündlich ist völlig unpraktikabel, und wenn man bedenkt, dass ein einmal erfolgreicher Angreifer seinen Angriff ja jederzeit wiederholen könnte, bleibt eigentlich nur die Verwendung eines Tokens, das für jedes Login ein One-Time Password (OTP) erzeugt, wenn man wirklich sicher gehen will. Und einem Man-in-the-Middle stört nicht mal das. Außerdem geht es hier ja um normale Passwörter - ein Security-Token ist eine ganz andere Baustelle mit eigenen Regeln.

Passwort-Regeln zerpflücken, zum dritten: Nichts aus dem Wörterbuch

Dass das Passwort in keinem Wörterbuch stehen darf, ist selbstverständlich. Ansonsten würde es einem Brute-Force-Angriff sehr wahrscheinlich nicht lange widerstehen. Wobei ich mal außer Acht lasse, dass es Aufgabe der jeweiligen Anwendung ist, Brute-Force-Angriffe zu verhindern. Aber die restlichen Regeln sorgen schon fast automatisch dafür, dass das Passwort in keinem Wörterbuch steht. Oder kennen Sie sehr viele Wörter, die aus Groß- und Kleinbuchstaben und Zahlen bestehen und in einem Wörterbuch stehen? Mal von "Leetspeak"-mäßigen Passwörtern wie "4dmin1strat0R" für den Benutzernamen "administrator" oder der einfachen Übernahme eines alphanumerischen Benutzernamens als Passwort abgesehen. Ein Angreifer, der mit einem derartigen Passwort rechnet, kann sein Wörterbuch für einen Brute-Force-Angriff entsprechend anpassen und kommt damit evtl. sehr viel schneller zum Ziel, als vom Benutzer erwartet. Da solche Fälle von der Regel aber gar nicht erfasst werden, möchte ich sie erweitern zu "Es darf nicht leicht erratbar sein".

Passwort-Regeln zerpflücken, zum vierten: Langer Zeichenwirrwarr

Kommen wir zum Rest der Anforderungen: Passwortlänge und Zeichenvorrat. Die sind im wesentlichen nur noch dem Schutz vor Brute-Force-Angriffen geschuldet, denn vor Phishing, Keyloggern oder dem Ausspähen der Zugangsdaten während der Übertragung oder auf dem Server schützen sie nicht, ebensowenig wie die anderen Anforderungen. Allerdings haben sie einen praktischen Nebeneffekt: Wie schon oben erwähnt, sorgen sie dafür, dass das Passwort sehr wahrscheinlich in keinem Wörterbuch steht.

Passwort-Regeln zusammenflicken

Warum sollte man sich also an diese Regeln halten? Weil einige davon durchaus immer noch ihre Berechtigung haben, wenn auch aus einem anderen als dem ursprünglichen Grund. Fangen wir wieder von hinten an: Das "Nicht aufschreiben" kann man getrost vergessen, sofern man dafür sorgt, dass das aufgeschriebene Passwort nicht ausgespäht wird. Auch bei der regelmäßigen Änderung muss man es nicht übertreiben. Wenn man auch nur den geringsten Verdacht hat, ein Passwort könnte ausgespäht worden sein, muss man es natürlich ersetzen, ebenso alle anderen auf dem jeweiligen Rechner eingegebenen Passwörter - Sicher ist sicher. Aber ansonsten wird man dadurch nur wenig zusätzliche Sicherheit gewinnen. Kein erratbares Passwort zu verwenden, ist durchaus zweckmäßig. Und das aus zwei Gründen: Zum einen könnte ein Angreifer, der es auf einen bestimmten Benutzer abgesehen hat, alle verfügbaren Informationen über sein Opfer sammeln und dann einen Brute-Force-Angriff mit einer Reihe wahrscheinlicher Passwörter beginnen. Zum anderen kommt es immer wieder vor, dass die Hash-Werte von Passwörtern ausgespäht werden. Normalerweise werden die mit einem sog. Salt abgesichert, so dass der Angreifer keine vorberechneten Tabellen zur Ermittlung der Ausgangswerte verwenden kann (siehe About Security #220). Wurde kein Salt verwendet, ist es gut, wenn das Passwort in keinem Wörterbuch steht - denn dann ist es sehr wahrscheinlich auch nicht in den vorberechneten Tabellen enthalten. Aus diesem Grund sind auch die Anforderungen an Passwortlänge und verwendete Zeichen durchaus berechtigt, denn die sorgen dafür, dass das Passwort sehr wahrscheinlich nicht in einem Wörterbuch enthalten ist. Ein sicher gebildetes Passwort (siehe dazu z.B. den Standpunkt Sicherheit vom 17. November 2008), dass man sich, wenn man es sich nicht merken kann, auf einem sicher verwahrten Zettel aufschreibt, sollte einem die Sicherheit der damit geschützten Zugänge schon wert sein. Um den Wert dieser Zugänge geht es dann u.A. im Standpunkt der nächsten Woche, in dem ich auch auf weitere Aussagen von Cormac Herley eingehe, denn dieser Text ist schon lang genug.

Carsten Eilers

Kommentare

Folgende Links könnten Sie auch interessieren