Passwörter

Allgemeines zu Passwörtern

Im Umgang mit Daten und Computersystemen ist dem Passwortverfahren sehr grosse Bedeutung zu schenken. Zum einen ist es einer der sicherheitsrelevantesten Faktoren, zum anderen ist es zugleich die größte Schwachstelle in der Computersicherheit, denn ein Passwort zu hacken ist letztendlich nur eine Frage der Zeit (siehe Passwort-Check).

Die Sicherheit eines Passwortes hängt im wesentlichen von seiner Geheimhaltung und seiner Qualität ab. Um dies zu verdeutlichen, gehen wir nachstehend zunächst auf die Möglichkeiten der Ausspionierung von Passwörtern ein, um anschliessend die notwendigen Verhaltensmassnahmen im Umgang mit Kennwörtern zu beschreiben.

Angriffsmöglichkeiten

Mittels sog. Passwort-Cracker-Programmen (z.B. Brutus, Cain, Crack, John the Ripper, UnSecure) ist es möglich, einen ungeschützten Computer über die Internet-IP-Adresse auf offenen Ports (bestimmte Dienste) oder Webdienste (z.B. Webmailer oder andere cloudbasierte Dienste) sowie Backend-Logins zu Webseiten (z.B. CMS) anzusprechen, um einen Angriff zu automatisieren (auch über die gebündelte Rechenleistung vieler Prozessoren aus der Cloud oder einem Botnetz). Dies kann über folgende Methoden erreicht werden:

  • Brute-Force Attacks: hier wird “mit roher Gewalt” jede nur mögliche Kombination von Buchstaben, Zahlen, Sonderzeichen etc. durchprobiert. Sog. Brute-Force-Tools haben mehrere Optionen zur Generierung von Passwörtern und führen leider letztendlich immer zum Ziel. Zwar ein sehr zeit*- und leistungsintensives Verfahren, dafür aber um so effektiver.
     
  • Dictionary Attacks: hier wird einfach eine Liste, welche z.B. ein ganzes Wörterbuch sein kann, verwendet und in die Passwort-Eingabeaufforderung weitergeleitet. Die meisten Crackertools bieten noch weitere Optionen, wie z.B. Wörter rückwärts einlesen oder Kombinationen aller Wörter aus der Liste, Durchprobieren aller Gross- und Kleinbuchstaben, Anfügen etc.. Dieses Verfahren ist sehr schnell* und führt sehr rasch zum Erfolg für den Angreifer, da die meisten Menschen real existierende Begriffe verwenden.

  • Hybrid-Attacks: hier kommt eine Kombination aus Brute-Force- und Dictionary-Attack zum Ansatz. Es wird zuerst in den Wortlisten gesucht (auch Kombinationen), danach werden den Wortlisten-Begriffen in Brute-Force-"Manier" sukzessive weitere Zeichenfolgen  mitgegeben (davor, danach, mittendrin) oder Zeichen ersetzt (z.B. der Buchstabe "O" durch die Zahl "0"). Unser Passwort-Check simuliert ein solches Verfahren.

*Die Schnelligkeit ist abhängig von der verwendeten Hardware, über cloudbasierte Rechenleistung sind mehrere Millionen Abfragen in der Sekunde möglich. Siehe auch Wie gehen Passwort-Cracker-Programme vor.

Weitere Arten der Passwort-Ausspionierung, ohne Cracker-Programm:

  • Phishing: Hier wird mittels eines nachgemachten Interfaces - z.B. Homepage einer Bank oder gefälschte E-Mails bekannter Institutionen - versucht das Passwort bzw. die Kundendaten zu bekommen. Webseitenbetreiber können sich und Ihre Besucher nur durch ein Zertifikat und SSL-Verschlüsselung schützen.
     
  • Social Engineering: Ähnlich wie beim Phishing wird unter Vorspiegelung falscher Tatsachen versucht an das Passwort zu kommen. Z.B. gibt sich ein Anrufer als Mitarbeiter Ihres Providers oder als Systemadministrator Ihrer Firma aus. Auch zählt das Ausspionieren des Umfeldes (Familie, Freunde, Hobbies...) zu diesem Bereich (z.B. auch über Profilseiten-Hacks in sozialen Netzwerken). Hier werden schlicht alle Namen, welche in Bezug zum Opfer stehen ausprobiert. Ebenso ist der Notizzettelklau (mit dem Passwort) aus dem Papierkorb oder Schreibtisch in diese Rubrik zu zählen.
     
  • Viren & Co.: Spezialisierte Malware (z.B. Trojaner “BackOrifice” oder “NetBus” oder Wurm “BadTrans”) und Spyware suchen nach (ihnen) bekannten Dateien, welche Passwörter speichern und lesen diese aus oder loggen gar alle Tastatureingaben und senden diese ihren Schöpfern bei der nächsten Internetverbindung im Hintergrund (backdoor) zu.

Passwort: Verhaltensmassnahmen

“Schlechte” Passwörter lassen sich erschreckend leicht erraten. So führt in den meisten Fällen bereits das Ausprobieren von Namen aus dem Umfeld des Opfers (z.B. Namen der Freundin, der Tochter, Geburtsdaten etc.) zum Erfolg, ohne dass aufwendige Crackerprogramme zum Einsatz kommen müssen. Deshalb sollte man vermeiden:

  • keine Namen oder personenbezogene Daten verwenden (siehe Social Engineering)
     
  • keine realen Wörter (egal aus welcher Sprache) verwenden: ein Crackerprogramm hat dies in kurzer Zeit herausgefunden, auch wenn das Wort rückwärts, klein oder gross geschrieben wird (siehe Brute-Force- und Dictionary-Attacks)
     
  • Passwörter weder speichern, noch aufschreiben
     
  • Passwörter niemals mehrfach verwenden: vor allem nicht bei Anmeldung auf Webservern im Internet
  • Ein Passwort sollte äußerst schwer oder überhaupt nicht zu erraten sein. Generell ist folgendes zu beachten: um so länger, um so besser: mindestens 10 Zeichen, besser 25-30.
    Zu merken sind solche Passwörter schlecht, deshalb sollten diese in einem verschlüsselten Container gespeichert werden (siehe diesen Beitrag).
     
  • Mischung aus Zahlen, Leerzeichen, Sonderzeichen, Gross- und Kleinschreibung verwenden.
    Ein gutes Passwort sieht z.B. so aus: Rb#TC.(|.e+H3K2o_{J~6V-KjpFu@g
    Ein Hybrid-Passwortcracker-Programm würde bei diesem Passwort ungefähr
    42.732.761.882.886.533.076.658.189.790.662.478.283.761.836.869.774.475.264 Versuche und eine Zeit
    von 21.366.380.941.443.265.835.333.638.624.583.856.859.879.959.429.120 Jahren (bei 2`000`000`000 Abfragen pro Sekunde) benötigen, um es zu knacken. Zur Verdeutlichung: Für ein schwaches Passwort wie beispielsweise "Karl20" wäre die benötigte Zeit ca. 1 Sekunde (Hybrid-Attacke) bis max. 5 Sekunden (reine Brute Force-Attacke).




    Selbstverständlich speichern wir keine oben generierte Passwörter! Sie können diese auch nach Ihrem Gutdünken modifizieren. Auf unserer Seite PASSWORT-CHECK kann man die Qualität von Passwörtern gleich online überprüfen. 

  • In regelmäßigen Abständen sollten Passwörter geändert werden, ohne einem potentiellen Angreifer das Erkennen einer Systematik bei der Vergabe des Passworts zu ermöglichen (z.B. durch Fortsetzung eines Zahlenanhängsel wie 1, 2, 3).
     
  • Auch sollte das Computersystem insgesamt gegen Angriffe geschützt sein (siehe generelle Massnahmen)
     
  • Des weiteren muss die Geheimhaltung ernst genommen werden und auf die Umstände der Preisgabe des Passwortes penibel geachtet werden: Ein seriöser Diensteanbieter (z.B. Onlinebank, Internet-Service-Provider) wird Sie niemals auffordern, Ihr Passwort per E-Mail einzugeben/zu verschicken oder am Telefon zu nennen (siehe Phishing).
     
  • Beim Versenden bzw. der Eingabe von persönlichen Daten oder Passwörtern im Internet sollten Sie grundsätzlich darauf achten, dass die Webseite verschlüsselt (https) ist und zusätzlich über ein Zertifikat des Domaineigners verfügt.

  • Auch ist es überhaupt keine gute Idee, bei Dienstleistern, die eine "Passwort-Vergessen-Funktion" über die Beantwortung von simplen Fragen - wie z.B. "Wie heisst mein Haustier" oder "Wie heisst meine erste Schule" - anbieten, eine reale Antwort zu hinterlegen (ein sicheres Passwort wäre so Makulatur). Vielmehr sollte hier eine harte Kombination aus Gross- und Kleinbuchstaben, Zahlen und Sonderzeichen zum Einsatz kommen. Z.B. Wie heisst mein Haustier? Antwort: M6R2Lg_J#4jl3)@{#+*0E3rb6297~qHKFOP (natürlich verwenden Sie diese Kombination nicht, sondern generieren eine eigene!)

  • Wird ein individueller Benutzername für die Anmeldung (Login) zu Webdiensten angeboten, sollte dieser ähnlich cryptisch wie das Passwort selbst aussehen (natürlich mit differenter Zeichenfolge!), d.h. keinen wirklichen Namen verwenden

  • Nutzen Sie, wenn möglich, für eine Anmeldung zu Webdiensten eine Zwei-Faktor-Authentifizierung, siehe nächsten Punkt (Absatz 2).
     
  • Programmierer von interaktiven Webanwendungen mit Backends (z.B. CMS u.s.w.) sollten Passwörter erstens verschlüsselt ablegen (beispielsweise in einer Datenbank) und zweitens mit einem sog. “Salt” versehen, um auch schlechte Passwörter besser zu sichern. Das “Salz in der Suppe” besteht aus einem möglichst langem Anhängsel von Zeichen an das gewählte Passwort vor der (Einweg-)Verschlüsselung z.B. per MD5. In diesem Fall helfen dem Angreifer, der an die verschlüsselten Passwörter herankommt, bestehende Hash-Tabellen (Rainbow-Tables) mit Klarnamen für einfache MD5-Hashes nicht weiter.

    Auch sollte für das Login in ein sensibles Backend (z.B. Homepageverwaltung) ein zweistufiges Loginverfahren (Zwei-Faktor-Authentifizierung) mit einem zusätzlichen (zufällig generierten) Einmalpasswort zum Einsatz kommen, welches auf drittem Weg (eMail, SMS...) zum Benutzer gelangt und nur für eine begrenzte Anzahl von Eingabeversuchen zugelassen ist (wie z.B. bei unserem Programm "Damn Small Homepage CMS" der Fall). Brute-Force- oder Dictionary-Attacks haben so keine Chance.

 

Kommentare (2) zu dieser Seite