Hilfreiche Passwort-Attacken

04.05.2006
Von Mike Hartmann
Ein System ist nur so sicher wie seine Passwörter. Schwachstellen sind nicht geänderte Default-Passwörter in Routern oder anderen Netzwerkgeräten. Ein großes Problem stellen aber auch so genannte schwache Passwörter dar, die sich allzu leicht erraten lassen.

Vom Mike Hartmann, tecChannel.de

Auch wenn Sie eine noch so ausgefeilte Policy für die Vergabe von Passwörtern aufgestellt haben: Ihre Benutzer werden immer einen Weg finden, sich die Arbeit so einfach wie möglich zu machen. Fordern Sie beispielsweise mindestens ein Sonderzeichen im Passwort, kommt unter Garantie anstatt "qwertz" das "neue" Passwort "qwertz_" dabei heraus. Sind die Benutzer gezwungen, ihr Kennwort alle 30 Tage zu ändern, und lassen Sie dabei die letzten zwei verwendeten Kennwörter nicht zu, können Sie sicher sein, dass Ihre Anwender am Stichtag einfach ihre Kennung drei Mal ändern und dann das alte Passwort wieder verwenden.

Um zu überprüfen, ob Ihre Benutzer zu einfache Passwörter verwenden, haben Sie viele Möglichkeiten. Eine relativ einfache, wenn auch Zeit und Ressourcen fressende Methode ist das Ausprobieren gängiger Zeichenkombinationen gegen einen bekannten Benutzernamen. Viel zu lange würde es auch dauern, die Unzahl der oft benutzten Passwörter auszuprobieren, die an verschiedenen Stellen im Internet als so genannte "Passwortlisten" zu finden sind.

Mit ein wenig Feintuning können Sie die Arbeit allerdings deutlich beschleunigen. Für die weiteren Experimente benötigen Sie ein installiertes Linux oder eine Linux-Live-CD sowie das Security- und Hackertool "Hydra". Dieses können Sie von http://thc.org/thc-hy dra/ in der aktuellen Version herunterladen.

Viele der im Netz erhältlichen Passwortlisten sind wild aus anderen Listen zusammenkopiert. Daher sollten Sie zunächst sicherstellen, dass sich keine Dubletten in der von Ihnen gewählten Liste befinden. Das erledigen Sie einfach mit folgender Befehlskombination:

cat wortliste.txt | sort | uniq > neue_liste.txt

Wenn Sie eine bestimmte Passwort-Policy implementiert haben, etwa die Vorgabe, dass ein Kennwort mindestens sechs Zeichen lang sein sowie sich aus Groß-, Kleinbuchstaben, Ziffern und Sonderzeichen zusammensetzen soll, können Sie die Testliste weiter reduzieren. Dazu enthält die Hydra-Suite das unscheinbare Tool "pw-inspector", mit dem Sie Ihre Passwortlisten an Ihre Policy anpassen. Für das obige Beispiel lautet der passende Befehl:

pw-inspector -i wortliste.txt -o neue_liste.txt -m 6 -l -u -n -p Im Allgemeinen kennt der Password Inspector die Parameter folgender Tabelle:

Hydra

Hydra von der THC-Group ist ein ausgefeiltes und komfortables Linux-Tool, um eine Reihe von Diensten gegen schwache Passwörter zu testen. Derzeit unterstützt Hydra die folgenden Dienste:

TELNET, FTP, HTTP, HTTPS, HTTP-PROXY, SMB, SMBNT, MS-SQL, MYSQL, REXEC, RSH, RLOGIN, CVS, SNMP, SMTP-AUTH, SOCKS5, VNC, POP3, IMAP, NNTP, PCNFS, ICQ, SAP/R3, LDAP2, LDAP3, Postgres, Teamspeak, Cisco auth, Cisco enable, LDAP2, Cisco AAA.

Zusätzlich bietet das Tool aber noch eine Vielzahl nützlicher Features. So lässt sich beispielsweise einstellen, ob ein Rechner oder eine Reihe von Rechnern gescannt werden soll oder auf welchem Port anstelle des Default-Ports es nach dem Dienst suchen soll. Zu testende Accounts oder Passwörter lassen sich mittels einer Liste an das Programm übergeben.

Hydra kann beliebig viele Prozesse starten, um den Test zu beschleunigen. Diese Anzahl reduziert das Tool automatisch, falls es zu Verbindungsproblemen kommt. Die grafische Oberfläche "HydraGTK" stellt lediglich ein Frontend für das eigentliche Tool dar, erleichtert jedoch die Parameterübergabe ungemein.

John

Um die Passwörter einer lokalen Linux- oder Windows-Maschine zu überprüfen, kommen Sie mit dem Tool "John the Ripper password cracker" komfortabler und schneller voran. Das Tool können Sie für Unix, Windows, BeOS und OpenVMS auf der Website www.openwall.com/john/ herunterladen.

Neben der üblichen Variante mit Wortlisten kann das Tool John einige subtilere Verfahren anwenden oder auch die Holzhammermethode, bei der es einfach alle möglichen Zeichenkombinationen ausprobiert. Dabei macht John jedoch keinen Login-Versuch, sondern ermittelt nur, ob das getestete Passwort mit dem Hash in der Datei "/etc/passwd" korreliert. Der Vorteil: Der Account kann nicht wegen zu vieler fehlerhafter Logins gesperrt werden.

Sie müssen allerdings als Superuser "root" im System angemeldet sein, um gegebenenfalls die Dateien "passwd" und "shadow" zu einer gemeinsamen Datei zusammenführen zu können. Ist das nicht der Fall, kann John einige seiner intelligenteren Verfahren nicht anwenden.

Ophcrack

Ähnlich wie John kann auch "Ophcrack" Windows-Kennungen über eine Attacke entschlüsseln. Der Ansatz dieses Tools ist relativ einfach, aber zeitaufwändig. Mit entsprechend vorbereiteten Entschlüsselungstabellen reduziert sich die Zeitdauer aber erheblich. Ophcrack benötigt jedoch in jedem Fall viel Speicher.

Die Windows-Version des Tools kann, sofern man als Administrator angemeldet ist, direkt auf die SAM-Datenbank zugreifen und beispielsweise einen User-Dump mitsamt den Passwort-Hashes erzeugen. Mit der Linux-Version benötigen Sie entweder einen vorab erzeugten Dump, oder Sie greifen direkt auf die - in diesem Fall allerdings verschlüsselte - SAM der Windows-Partition zu. Ophcrack finden Sie bei Sourceforge (http://sourceforge.net/projects/ ophcrack) zum Download.

Protocol detection

Nicht immer laufen Dienste auf den Standardports, etwa weil die lokale Sicherheits-Policy bestimmte Ports sperrt oder um zu verbergen, welcher Dienst sich hier versteckt. In diesem Fall kommt das Linux-Tool "Amap" gerade recht. Dieses verbindet sich mit jedem offenen Port und versucht, anhand der Antworten herauszufinden, welcher Dienst sich hinter einem Port versteckt. Amap stammt ebenso wie das bereits erwähnte Hydra von der THC-Group und kann unter thc.org/thc-amap/ herunter geladen werden.

Amap durchsucht beispielsweise mit der folgenden Kommandozeile die Ports 1 bis 6.000 eines Rechners und ermittelt die darauf laufenden Dienste:

amap -bqv -1 <IP-Adresse> 1-6000

Mit diesen Informationen können Sie dann weiter vorgehen und beispielsweise Tests auf schwache Passwörter durchführen.

Passwort-Tools für Netzwerk-Devices

Alle Netzwerkkomponenten wie Router oder managebare Switches werden mit einem voreingestellten Administrator-Account und entsprechendem Passwort ausgeliefert. Nur in wenigen Fällen handelt es sich hierbei um ein spezifisches Passwort für dieses spezielle Gerät, beispielsweise mit eingearbeiteter MAC-Adresse. Meistens verwenden die Hersteller Kombinationen wie etwa Username "admin" und Passwort "admin" oder "password".

Aus diversen Gründen ist es hilfreich, eine Liste mit solchen Default-Kennwörtern zur Hand zu haben. Sei es, um zu überprüfen, ob die Accounts entsprechend umgestellt wurden, oder weil man ein Gerät günstig gebraucht erstanden hat und nun die Administrationsoberfläche benötigt. Eine entsprechende Liste mit Hersteller von 3Com über Cisco bis hin zu Zyxel finden Sie unter www.phenoe lit.de/dpl/dpl.html.

Zur Startseite