Das WLAN zuhause und in der Firma ist mehr als ein Zugang zum Internet für Rechner, Smartphones und Tablets. Die gängigen WLAN-Router, die Provider ihren Privat- und Geschäftskunden zur Verfügung stellen, verbinden nicht nur iPhone & Co über DSL- oder Kabelverbindung mit dem Internet, über die Router-Funktion der Geräte haben die Clients nach einer erfolgreichen Anmeldung auch vollen Zugriff auf alle Netz-Ressourcen wie Server, Rechner mit Freigaben, Netzdrucker und mehr.
Aus diesem Grund ist der Zugang zum WLAN auch per Passwort geschützt – nicht jeder in Reichweite des WLAN-Routers soll Zugriff haben. Anders als bei Internet-Routern ohne WLAN-Modul muss ein Nutzer jedoch nicht innerhalb Ihrer Räumlichkeiten zuhause oder in der Firma sein, jeder in Sendereichweite des WLAN-Routers kann sich einloggen. Das erfordert deutlich bessere Sicherheitsmaßnahmen als bei Routern ohne WLAN-Modul, bei denen sich ein Fremder per Ethernet-Kabel mit Ihrem Router verbinden müsste, um Zugriff zu erhalten.
Die Voraussetzungen im WLAN
Zum Schutz vor unbefugter Nutzung eines WLANs gibt es verschiedene Möglichkeiten. In allen Fällen müssen sich die Benutzer mithilfe eines Passworts anmelden. Ist das korrekt, erhält er Zugang. Mit WPA beziehungsweise WPA2 (Wi-Fi Protected Access) bieten alle WLAN-Router heute eine gute und nach heutigem Kenntnisstand nicht knackbare Verschlüsselungsmethode für Drahtlos-Netzwerke. WPA/WPA2 ersetzt den als unsicher und hackbar bekannten Vorgänger WEP. WPA basiert zwar auf WEP, bietet jedoch zusätzlich durch dynamische Schlüssel (TKIP) sowie Preshared-Keys (PSK) zur Authentifizierung Sicherheit. In großen Firmeninstallationen kommt statt PSK das Extensible Authentication Protocol (EAP) zum Einsatz, das eine Authentifizierungsinstanz voraussetzt, etwa einen Radius-Server. Auf solche Sonderfälle gehen wir in diesem Beitrag allerdings nicht ein.
Verschlüsselungsoptionen
Egal ob Sie privat oder als Firma ein kleines Netz anlegen, erhalten Sie entweder einen WLAN-Router von Ihrem Internet-Provider oder Sie legen sich selbst ein Modell zu: etwa eine Fritzbox von AVM, einen Router eines anderen Herstellers oder eine Airport Extreme von Apple. Je nach Vorgabe des Herstellers richten Sie erst den Internetzugang ein, danach das WLAN. Wählen Sie zur Verschlüsselung den sicheren Standard WPA/WPA2. Bei Einhaltung von ein paar Sicherheitsrichtlinien, die wir in diesem Artikel erarbeiten, sind beide Varianten geeignet, WPA2 bietet einen erweiterten Schutz, statt des bei WPA zum Einsatz kommenden Stromchiffre RC4 wird AES verwendet. Apple nennt die im Soho-Bereich (Small Office Home Office) genutzten Verfahren „Persönlicher WPA/WPA2“, die hier nicht behandelte Version mit Authentifizierungsinstanz „Firmenweiter WPS/WPA2“. Diese Einstellungen finden Sie unter iOS ebenso, wie unter OS X und im Airport Dienstprogramm. In Netzen zuhause und kleinen Firmen kommt immer die Version „Persönlicher WPA/WPA2“ zum Einsatz.
Schwachstelle Handshake
Die Anmeldung eines Geräts an einer WLAN-Station ist für den Benutzer einfach. Entweder findet er den Namen des WLANs (SSID, Service Set Identifier) in der Auswahl oder er hat ihn vom WLAN-Betreiber bekommen und tippt ihn ein. In beiden Fällen gibt er dann noch das Passwort ein – bei WPA/WPA2 kann es eine Länge zwischen 8 und 63 Zeichen haben – und er ist verbunden. Unbemerkt läuft dabei im Hintergrund eine komplexe Schlüsselerzeugung samt Austausch ab, der so genannte 4-Wege-Handshake. Dabei handelt es sich um den Hashwert (PBKDF2) aus einer Verkettung von Attributen der Kommunikationspartner wie der MAC-Adresse der WLAN-Schnittstelle von Router und Client (Laptop, Smartphone, Tablet-PC) und weiterer Werte, einschließlich des PMK (Pairwise Master Key), der aus dem aus WPA2-PSK (Passwort) abgeleitet ist.
Genau diesem Handshake gilt ein komplexer Angriff mit dem Ziel, das WPA/WPA2 Passwort zu knacken. Der Handshake findet aber nur während der Verbindung statt, ist ein Client erst einmal mit dem WLAN verbunden, folgt kein weiterer Handshake. Die Schwachstelle, die sich Angreifer vornehmen, ist eigentlich nicht das Verschlüsselungsverfahren WPA/WPA2, sondern das vom WLAN-Betreiber gewählte Passwort.
Unsere Testaufstellung
Um ein WLAN-Passwort zu knacken, gilt es also, den Handshake zu bekommen. Dazu muss sich der Angreifer in der Nähe (im Empfangsbereich) des WLAN befinden und über spezielle Hard- und Software verfügen. Ist der Handshake gespeichert, versucht ein weiteres Programm, den Hashwert zu knacken und so das Passwort zutage zu fördern. Beliebt bei Sicherheitsfachleuten und Hackern zum Abfangen des Handshake ist die Aircrack-Suite, eine Sammlung von Programmen. Die gibt es für Linux und Windows, doch nur die Linux-Version bietet alle Funktionen. Die Software versetzt einen Angreifer in die Lage, umliegende Netzwerke aufzuspüren, sie einzeln samt der verbundenen Clients darzustellen und bei Neuverbindung eines Clients den 4-Wege-Handshake (samt anderer Daten) in eine Datei zu schreiben. Ein anderes Aircrack-Modul kann dann aus der Datei den 4-Wege-Handshake extrahieren und in ein Format für einen Hashcracker wandeln.
Da „normale“ WLAN-Module für den Rechner diese Aufgaben des Hack-Jobs nicht erledigen können, sind modifizierte Treiber für bestimmte, geeignete WLAN-Karten einzusetzen. Wir haben uns für diesen Beitrag genau so ein Set zusammengestellt und damit kein fremdes WLAN angegriffen, sondern mehrere Test-WLAN-Router für den Zweck aufgesetzt. Nur so lassen sich ein Angriff genau nachvollziehen und entsprechende Sicherheitsmaßnahmen entwickeln.
Der erste Testlauf
Für unseren Linux-Rechner unter Ubuntu 12.04 LTS haben wir den WLAN-Adapter Alfa AWUS036H mit dem Chipsatz RTL8187L im Einsatz, der USB-Adapter kostet knapp 20 Euro. Für den Chipsatz, wie auch für viele andere, gibt es Patches für die Firmware, die den späteren Angriff auf die WLAN-Station erst möglich machen. Nach deren Installation ist der WLAN-Adapter über das Aircrack-Modul airmon-ng per Terminal zunächst in den sogenannten „Monitor-Modus“ zu versetzen. Das Modul airodump-ng sucht und findet in dem Modus alle umliegenden WLANs, stellt deren MAC-Adressen (BSSID), die verbundener Geräte, die WLAN-Namen (SSID, falls freigegeben), sowie weitere Werte dar. Leistungsfähige WLAN-Adapter stellen in Verbindung mit airodump-ng wesentlich mehr Netzwerke dar, als etwa die Auswahl am Mac. Fast alle WLANs geben auch ihren Namen preis, bei denen in der Liste (siehe Abbildung auf dieser Seite) wo statt des Namens der Wert „length: 0“ steht, ist der Name der WLAN-Station versteckt.
Der 4-Wege-Handshake wird aufgefangen
Das Modul airodump-ng kommt auch zum Einsatz, wenn der Datenverkehr einer bestimmten WLAN-Station aufgezeichnet werden soll, um den 4-Wege-Handshake zu speichern. Dazu werden die BSSID der WLAN-Station und der Kanal, auf dem sie funkt als Parameter eingegeben –beide Werte ergeben sich aus dem vorausgegangenen WLAN-Scan. Das Programm airodump-ng zeigt jetzt die Basisstation, in unserem Falle „VolkstestAP“, sowie unten eventuell verbundene Clients samt deren BSSID und Übertragungsparameter. Bleibt es dabei, lässt sich auch nach Stunden kein 4-Wege-Handshake gewinnen. Dazu muss sich – während airodump-ng die WLAN-Station überwacht, ein zusätzlicher Client anmelden. In diesem Falle informiert das Modul über den erfolgreich gespeicherten Handshake, das Modul kann beendet werden.
Da das Warten auf die Verbindung eines neuen Clients Stunden dauern kann, hat die Airckrack-Suite mit „aireplay-ng“ ein weiteres Modul in petto. Gefüttert mit der BSSID der WLAN-Basis und des Clients löst das Modul eine De-Authorisierung aus: Der schon angemeldete Client wird kurz getrennt und meldet sich automatisch wieder an – ein Handshake kann abgegriffen werden. Dieser „aktive Eingriff“ klappt zwar nicht immer beim ersten Versuch, kann aber beliebig wiederholt werden.
Schwachstelle Passwort
Der 4-Wege-Handshake ist unter anderem in einer Netzwerk-Mitschnittdatei gespeichert (Dateiendung .cap). Damit das Profi-Tool oclHashcat den Handshake verarbeiten kann, muss ihn das Modul aircrack-ng in das korrekte Format .hccap verwandeln. Erst jetzt kann der Angreifer versuchen, das Passwort für das WLAN zutage zu fördern. WPA/WPA2 lässt sich nicht knacken, nur ein vom Benutzer vergebenes, „schwaches Passwort“.
oclHashcat gehört zur Hashcat-Suite, ein Softwareset, das unter Federführung des Deutschen Jens „Atom“ Steube für Sicherheitsfachleute entwickelt wurde. Das Hashcat-Team ist bei internationalen Wettbewerben zum Thema Sicherheit und Passwort-Cracks immer ganz vorn dabei. oclHashcat nutzt wie andere Passwort-Cracker verschiedene Tools, um ein gesuchtes Passwort zu finden. Dabei lassen sich Hashes – wie auch der des Handshake nicht „entschlüsseln“, sondern immer nur knacken. oclHashcat probiert alle möglichen Passwörter aus, etwa aus Wörterlisten, im Bruteforce-Verfahren, mit Hybrid-Attacken (Wörterbuch plus Bruteforce), mit Regeln und mehr.
Dabei geht es je nach Hashalgorithmus denselben Weg, der bei der Erstellung des Hashes gewählt wurde. Ergibt sich aus einem ausprobierten Wort „geheim“ etwa derselbe Hashwert, wie der zu knackende, ist das Passwort gefunden. oclHashcat nutzt bei der Arbeit Hochleistungsgrafikkarten von AMD oder Nvidia, wie sie Gamer schätzen. Die Leistungsfähigkeit ist dabei enorm. Leider verwenden immer noch viele Internetportalbetreiber zum Erzeugen von Hashwerten für die Passwörter ihrer Benutzer den Algorithmus MD5 oder SHA1. Bei MD5-Hashes kann ein Rechner mit einer Grafikkarte AMD HD7970 bis zu acht Milliarden Passwörter pro Sekunde ausprobieren, mit der neuen Generation AMD R9 290X sind es rund zehn Milliarden pro Sekunde.
Handshake knacken
Ganz anders liegt die Performance bei WPA/WPA2, da es zu den „langsamen“ Hashes gehört (siehe Kasten Seite 85). Die genannte AMD HD7970 schafft hier rund 130 000 Hashes pro Sekunde. Selbst ein mit acht Grafikkarten AMD R9 290X aufgerüsteter Monster-Cracker schafft bei WPA/WPA2 „nur“ knapp 1,5 Millionen Hashes pro Sekunde. Ein kleines Beispiel anhand unserer Ubuntubox mit einer AMD HD7970 erläutert, was dies bedeutet: WPA/WPA2 verlangt Passwörter mit einer Mindestlänge von acht Zeichen. Ein Bruteforce-Versuch auf alle Passwörter, die aus acht Ziffern besteht, dauert gut zwei Stunden (10^8/13.000/60/60) – jede Ziffer mehr im Passwort würde die Crack-Dauer verzehnfachen. Verwendet man nur acht Kleinbuchstaben ist das bei einem MD5-Hash selbst mit unserem Test-Cracker in rund 30 Sekunden geschafft (26^8/8.000.000.000). Für einen entsprechenden WPA/WPA2-Hash benötigt dieselbe Maschine schon 4462 Stunden (26^8/13.000/60/60).
Bruteforce ist beim Cracken von WPA/WPA2 nicht die Lösung. Zum Einsatz kommen hier meist kleine, leistungsfähige Wörterbücher. Der deutsche Duden umfasst rund 135 000 Wörter, die sind in knapp einer Sekunde ausprobiert. In unserem Test verändern wir nach bestimmten Regeln Wörter aus dem Wörterbuch, hängen Ziffern und Sonderzeichen an und mehr. Die Regeln in dieser Sammlung haben wir über ein Jahr zusammengetragen. Jedes Wort des Dudens wird in unserem Beispiel in 350 Variationen probiert – das ganze dauert nur rund sechs Minuten. Jeder Cracker setzt für seine Angriffe natürlich seine persönlichen Top-Passwörter ein, die er über die Jahre gesammelt hat – statt des Dudens oder anderer öffentlich zugänglicher Wörterbücher.
Wir nutzen im ersten Anlauf eine sortierte Liste der Top-1-Million-Passwörter aus dem Rockyou-Hack vor Jahren und einer Regeldatei mit 20-Top-Regeln – Dauer theoretisch bis zu 25 Minuten (1.000.000*20/13.000/60). Und wir finden mit der Kombination alle möglichen Passwörter, die Freunde an unserem Test-WLAN eingetragen hatten.
Nur gute, lange Passwörter
Ein Passwort wie zum Beispiel "1234567890" hat zwar zehn Zeichen und ist per Bruteforce ebenso wenig zu knacken wie unser Beispiel "peter4ever", beiden ist aber mit anderen Methoden beizukommen. Die Ziffernfolge ist ganz oben in jeder Wörterliste beliebter Passwörter zu finden. Unser Passwort fällt ebenfalls ganz einfach: "peter" ist in jedem Wörterbuch zu finden. Passwortendungen wie "4ever", "4you", "4everU" und andere sind enorm beliebt und in jeder guten Regeldatei zu finden. Da "peter" in der von uns verwendeten Wörterliste weit oben steht, war "peter4ever" bereits nach ein paar Sekunden geknackt.
Der einzige für WPA und WPA2 bekannte Angriffspunkt ist das Passwort. Ist das Passwort sicher und wird WPA2 verwendet, gilt ein Netzwerk als unknackbar. Wählen Sie also unbedingt ein längeres Passwort, wir empfehlen mindestens 16 Zeichen. Es soll nicht aussprechbar sein, Ziffern, Großbuchstaben, Kleinbuchstaben und Sonderzeichen enthalten.
WLAN-Schutz – die 7 wichtigsten Regeln
Das Thema Sicherheit in Bezug auf die persönlichen Daten im Internet wird hier groß geschrieben1. Gutes Passwort wählen
Wählen Sie ein Passwort mit mindestens 16 Zeichen, besser sind 20 oder mehr. Es darf nicht aussprechbar sein – auch bei Ersatz von Buchstaben durch Zahlen (Leet-Speak) – sollte aus Großbuchstaben, Kleinbuchstaben, Ziffern und Sonderzeichen gemischt sein. Verwenden Sie einen Passwortmanager.
2. WLAN benennen
Besonders die Router von DSL-Providern kommen meist mit einem Standardnamen für das WLAN und einem Standardpasswort. Anhand des Namens lässt sich Hersteller und Modell herausfinden. In letzter Zeit wurden zu bestimmten Routern Sicherheitslücken bekannt, derartige sind über den Namen schnell zu identifizieren. Wählen Sie einen beliebigen Namen für Ihr WLAN.
3. Geräte manuell konfigurieren
Einige Router bieten mit WPS (Wi-Fi Protected Setup) eine einfache Option, weitere Netzwerkgeräte wie Drucker in das WLAN ohne umständliche Konfiguration zu integrieren. Seit Dezember 2001 ist eine gravierende Sicherheitslücke bekannt, in deren Folge ein Angreifer die WPS-PIN erfahren kann und dann über eine Bruteforce-Attacke das WPA-Passwort des Routers in wenigen Stunden bekommt. Falls Ihr Router WPS bietet, schalten Sie die Option aus und konfigurieren neue Geräte manuell.
4. SSID verstecken
Das Verstecken der SSID (WLAN-Name der Station) ist optional möglich. Der Sicherheit hilft das aber nicht, eher der Privatsphäre. Das Modul airodump-ng stellt auch WLAN-Stationen mit versteckter SSID dar, natürlich ohne den Namen. Sind mit der Station Clients verbunden, lässt sich mit dem Modul aireplay-ng die De-Authentifizierung eines Clients und dessen automatische Wiederanmeldung auslösen. Bei der Wiederanmeldung überträgt der Client dann die SSID, airodump-ng speichert sie.
5. Zugriffsliste MAC-Adressen
Die Einschränkung des Zugangs über MAC-Adressen der Clients hilft beim Thema Sicherheit auch nicht wirklich, ist zudem nervig. Hierbei wird am Router eine Liste mit MAC-Adressen (BSSID) erlaubter Clients (Smartphone, Tablet oder Rechner) eingetragen. Nur die dürfen sich mit dem WLAN verbinden. Das Modul airodump-ng zeichnet die BSSIDs der erlaubten Clients natürlich auf. Mit ein paar Handgriffen lässt sich am angreifenden Rechner die eigene MAC-Adresse durch eine beliebige ersetzen, er ist dann am Router „berechtigt“.
6. Gastnetz einrichten
Bessere WLAN-Router bieten „Gastnetze“. Neben dem „normalen“ WLAN, dass Sie optimal geschützt nur für sich und Ihre Geräte betreiben, können diese Router ein zweites WLAN aufbauen. Das ist zwar mit dem Internet, nicht aber mit Ihrem lokalen Netzwerk verbunden. Es hat einen eigenen Namen samt Passwort. Das können Sie dann Freunden, Besuchern und Geschäftspartnern bedenkenlos geben, sie können im Internet surfen, haben aber nie Zugriff auf ihr Netzwerk und dessen Ressourcen.
7. Server extra schützen
Falls Sie befürchten, dass Ihr WLAN beziehungsweise das Passwort dennoch gehackt werden könnte, sorgen Sie für die Sicherheit Ihrer Server. Der Zugriff aus NAS, Server und Shares sollte immer zusätzlich mit einem natürlich anderen, sicheren Passwort geschützt sein.