Hardware-View: Passwortrichtlinien und -angriffe
Titel: Passwortrichtlinien und -angriffe |
Hinweis: Für die Korrektheit oder Aktualität der Informationen kann nicht garantiert werden. Der Autor übernimmt daher keine Haftung für Schäden, die durch Nutzung der Informationen entstanden sind.
Dieser Artikel soll Ihnen eine Übersicht über alle gängigen Passwort-Richtlinien, sowie Passive- und Active-Hardware-Glossar: Brute-Force-Tools geben. Die einzelnen Programme sind zwar nicht detailliert kommentiert, doch Sie werden grundlegende Informationen und Bezugsquellen finden, was natürlich auch heißt, dass wir uns im Rahmen dieses Artikels auf überwiegend nicht kommerzielle Produkte beschränken. Dieser Artikel enthält keine Anleitungen zu den jeweiligen Programmen.
Passwörter knacken
Ob die Eingangstür zur Wohnung oder das Betriebssystem des Rechners, diese und viele weitere Dinge im Leben verlangen einen Schlüssel, bevor man sie benutzen kann. Während Ihr Haustür-Schlüssel vorwiegend dieselbe Form behält, nimmt das Passwort nach Eingabe und Bestätigung in der Regel eine andere Form an: Es wird verschlüsselt. Diese Form des Passworts nennt man Hash-Code, das Passwort wurde also gehasht, und da es bekanntlich verschiedene Algorithmen zur Passwort-Verschlüsselung gibt, sind demnach auch mindestens ebenso viele unterschiedliche Hash-Typen vorhanden. Der Hacker hat nun zwei Möglichkeiten, ein Passwort zu knacken. Er kann zunächst versuchen, das Passwort zu raten. Diese Methode hat eine höhere Daseinsberechtigung, als Sie sich vielleicht denken. Sie ist alt und trivial, aber ebenso effektiv und verbreitet. Diese Art des Passwortknackens nennt man Active-Brute-Forcing, die entsprechenden Werkzeuge hierzu finden Sie weiter unten im Abschnitt der Active-Brute-Force-Tools. Die andere Möglichkeit besteht darin, den Hash-Code des Passworts zu finden und anschließend zu entschlüsseln. Hierfür erstellt der Hacker einen Passwort-Hash des gleichen Typs von einer beliebigen Zeichenkette, und vergleicht diesen mit dem zu knackenden Hash. Diese Methode wird wiederum Passive-Brute-Forcing genannt und ist um einiges effizienter als konkurrierende Variante.
Passwortrichtlinien
Passwortrichtlinien sind genau das, wofür ihr Name steht - Richtlinien zum Aufbau eines Passwortes, an die sich die Benutzer halten müssen oder sollten. Diese Richtlinien enthalten Regeln, die beispielsweise besagen, dass ein Passwort eine bestimmte Mindestlänge mit einer bestimmten Buchstaben-Zahlen-Kombination haben muss, damit es valide (gültig) ist und somit sorglos entgegengenommen werden kann. Solche Regeln müssen wohl definiert und eingepflanzt werden. Genau das tun die folgenden Werkzeuge.
PassFilt.dll für Windows-Systeme
Seit Windows NT 4.0 (ab Service Pack 2) wird das PassFilt.dll-Werkzeug ausgeliefert. Damit können System-Administratoren bestimmte Regeln für Benutzerpasswörter festlegen und aktivieren. Für alle Nicht-Administrator-Passwörter werden standardmäßig folgende Regeln auf Übereinstimmung geprüft:
- Das Passwort darf keine Zeichenfolge aus dem Namen des Benutzerkontos enthalten.
- Es muss mindestens sechs Zeichen enthalten.
- Es muss Zeichen aus a-z, A-Z und 0-9 enthalten.
Als außergewöhnlich sicher dürfen Sie das Tool jedoch nicht sehen, da es dennoch sehr beschränkt ist, so würde Pa55word auch als valides Passwort akzeptiert. Folgender Link ist eine Anleitung von Microsoft zum PassFilt.dll-Werkzeug:
http://support.microsoft.com/?kbid=161990
PAM für Unix-Systeme
Die meisten Unix-Systeme enthalten ein so genanntes Pluggable Hardware-Glossar: Authentication Modul (PAM), dass alle Benutzerinteraktionen überwacht, die ein Passwort vom Benutzer anfordern (können oder werden). Authentifizierungsschemata wie Kerberos und RADIUS haben Zugriff auf das PAM. Mit dem PAM lassen sich ähnlich dem PassFilt.dll-Tool von Windows Passwortrichtlinien erstellen, allerdings gibt es keine Standard-Validierung. Eine vollständige Anleitung für PAM unter Linux (und somit auch weiteren UNIX-Systemen) finden Sie hier: www.kernel.org/pub/linux/libs/pam/Linux-PAM-html
login.conf für OpenBSD
OpenBSD bietet die Funktionalität von PAM aus Kompatibilitätsgründen zu den anderen Unix-Systemen über die Datei login.conf an. Der Systemadministrator kann hierbei zwischen multipler Hardware-Glossar: DES-, MD5- und Blowfish-Verschlüsselung wählen. Eine Anleitung hierzu finden Sie unter http://geodsoft.com/howto/harden/OpenBSD/users_files.htm.
Passive-Brute-Force-Tools
Weiter oben im Artikel wurde bereits beschrieben, was Passive-Brute-Forcing ist. Dieser Abschnitt des Artikels stellt Ihnen die bekanntesten Programme zum Abgreifen und Knacken von Passwort-Hashes vor.
John the Ripper
Das vermutlich schnellste und flexibelste (und dadurch auch beliebteste) Werkzeug zum Passwort-Knacken ist John the Ripper. Das Programm, und außerdem zahlreiche Dokumentationen dazu, finden Sie auf der offiziellen Homepage www.openwall.com/john. John unterstützt insgesamt sechs unterschiedliche Passwort-Hashschemata, die sich über verschiedene UNIX-Varianten und die Windows-LanMan-Hashe (NT, 2000 und XP) erstrecken, außerdem funktioniert es auf nahezu jedem erhältlichem Betriebssystem. Eine besondere Zuneigung empfindet John zu Pentium-Prozessoren mit MMX-Architektur, da es hierfür speziell optimiert worden ist, und bis zu 200 mal schneller arbeitet, als beispielsweise auf einem BSD-System mit gleicher Hardware. John arbeitet mit (Pass)Wortlisten und speziellen Richtlinien, um Passwörter zu knacken, die der Benutzer selbst angibt. Die Leistung von John wird sinnigerweise in Cracks per Second (c/s) angegeben.
LophtCrack
Einige Zeit lang hielt man das LanMan-Hash-Verfahren (Windows) für vergleichsweise sicher. Ein Irrtum, wie Mudge und Weld Pond von Lopht Heavy Industries nach kurzer Zeit feststellten. Die beiden haben sich das Verfahren etwas genauer angesehen und kurze Zeit danach ein Werkzeug zum Windowspasswort-Knacken erstellt - LophtCrack. Während Dokumentationen zu LophtCrack sehr rar sind, können Sie das Programm unter anderem hier beziehen: www.chip.de/downloads/c1_downloads_12992140.html
Pwdump
Bevor Sie Passwort-Hashe mit John the Ripper oder LophtCrack knacken können, müssen Sie sie besitzen. Zum Abgreifen der Hashe unter Windows-Systemen gibt es die Pwdump-Tools (pwdump, pwdump2, pwdump3 und weitere Ableger). Passwort-Hashe werden in Windows in die binäre Datenbank SAM (Security Accounts Manager) abgelegt. Die Pwdump-Tools greifen genau hier ein und besorgen die Hash-Codes. Im Folgenden werden die jeweiligen Bezugsquellen und Dokumentationen separat aufgelistet, da wir die Homepage des Autors (www.entmag.com) zu unübersichtlich finden:
pwdump: http://us1.samba.org/samba/ftp/pwdump
pwdump2: www.openwall.com/passwords/microsoft-windows-nt-2000-xp-2003
pwdump3: www.buha.info/files/user/html/id_Tools_pwdump3.html
Das von Todd Sabin entwickelte Update zu pwdump mit Namen Lsadump2 bietet weitere Funktionalität und ist unter folgendem Link zu finden:
http://razor.bindview.com/tools/desc/lsadump2_readme.html
Active-Brute-Force-Tools
Das Active-Brute-Forcing wurde ebenfalls im Abschnitt über das Passwort-Knacken weiter oben beschrieben. Leider sind hier überwiegend kommerzielle Programme zu finden, daher sind hier keine Download-Links vorhanden.
SMBGrind
SMBGrind gehört zum Lieferumfang des Schwachstellen-Scanners von CyberCop, dass Sie auf deren (ehemals) offiziellen Homepage erhalten: www.cybercop-software.com. Es handelt sich um ein Befehlszeilen-Programm, das ein Konto mit der Brute-Force-Methode anhand von Namen und Passwörtern aus einer Textdatei angreift. Diese Methode verursacht allerdings eine Menge Lärm im Netzwerk und ist die langsamste und am wenigsten erfolgversprechende.
Nbaudit (nat)
Nbaudit stellt eine Verbesserung von SMBGrind dar, weil der Nutzer einen Hardware-Glossar: IP-Adressbereich untersuchen kann. Diese Technik kann bei der Entdeckung von stark exponierten Schwachstellen wie Administratorkonten ohne Passwort vielversprechender sein. BSD-Nutzer (Berkley Software Distribution) finden dieses Hardware-Glossar: Paket im Verzeichnis security unter ports.