- Wired Equivalent Privacy
-
Wired Equivalent Privacy (WEP, engl. „Verdrahteten (Systemen) entsprechende Privatsphäre“) ist das ehemalige Standard-Verschlüsselungsprotokoll für WLAN. Es sollte sowohl den Zugang zum Netz regeln, als auch die Vertraulichkeit und Integrität der Daten sicherstellen. Aufgrund verschiedener Schwachstellen gilt das Verfahren als unsicher. Die Berechnung des Schlüssels aus einigen Minuten an aufgezeichneten Daten dauert normalerweise nur wenige Sekunden. Daher sollten WLAN-Installationen die sicherere WPA2-Verschlüsselung verwenden.
Inhaltsverzeichnis
Funktionsweise
Generell handelt es sich um eine einfache XOR-Verknüpfung des Bitstroms der Nutzdaten mit einem aus dem RC4-Algorithmus generierten, pseudozufälligen Bitstrom.
Das WEP-Protokoll verwendet den RC4-Algorithmus als Pseudozufallszahlengenerator (PRNG) bei der Erzeugung eines Keystreams, der einen Schlüssel und einen Initialisierungsvektor als Eingabe erhält. Für jede zu schützende Nachricht M wird ein neuer 24 Bit langer Initialisierungsvektor IV gebildet und mit einem Schlüssel K verknüpft, der allen Stationen im Basic Service Set bekannt ist. Das Ergebnis dient als Eingabe für den RC4-Algorithmus, welcher daraus einen Keystream erzeugt. Zusätzlich wird mittels Zyklischer Redundanzprüfung (ZRP, engl. CRC) ein vermeintlich sicherer „Integritätsprüfwert“ (Integrity Check Value – ICV) berechnet und an die Nachricht M angehängt (||). Die resultierende Nachricht (M||ICV) wird mit dem Keystream (RC4(IV||K)) des RC4-Algorithmus XOR-verknüpft und der Initialisierungsvektor IV wird dem resultierenden Ciphertext vorangestellt. Die unteren Abbildungen verdeutlichen Kodierung und Dekodierung.[1]
Bei der Authentifizierung unterscheidet man zwei Verfahren:
Open System Authentication
Die Open System Authentication ist die Standard-Authentifizierung.
- Ist der Accesspoint für keine Verschlüsselung konfiguriert, findet praktisch keine Authentifizierung statt und jeder Client kann sich mit dem WLAN verbinden.
- Ist der Accesspoint für Verschlüsselung konfiguriert (in diesem Fall WEP):
- logisch: Der WEP-Schlüssel dient gleichzeitig zur Authentifizierung: Jeder Client mit korrektem WEP-Schlüssel bekommt Zugang zum Netz.
- technisch: Es findet ein Austausch von Authentifizierungsnachrichten statt und der Client wird authentifiziert. Stimmen WEP-Key auf Accesspoint und Client überein, ist Kommunikation möglich. Stimmen diese nicht überein, ist der Client zwar authentifiziert, kann jedoch keine Daten mit dem Netz austauschen.
Die Implementation der Authentifizierung mittels Schlüssel ist ein Herstellerfeature und ist nicht im Standard beschrieben.
Die Shared Key Authentication ist die vermeintlich sichere Variante. Die Authentifizierung erfolgt dabei über die Challenge-Response-Authentifizierung mit einem geheimen Schlüssel.
Allerdings basiert das Challenge-Response-Verfahren auch auf WEP und weist dieselbe Schwäche auf. Durch den Einsatz von Shared-Key Authentication wird der geheime Schlüssel entblößt, wie im nächsten Abschnitt gezeigt wird. Höchst ratsam ist es daher, auf die Shared-Key-Authentication zu verzichten und die Open Authentication einzusetzen. Auf Verschlüsselung sollte dennoch nie verzichtet werden. Auch mit Open Authentication kann ein verbundener Netzwerkteilnehmer nur mit Kenntnis des WEP-Schlüssels eine Kommunikation mit dem Access Point aufbauen.Die vier Nachrichten der WEP-Authentifizierung stellen die Zugriffsberechtigung des Client sicher.
Angriff auf die Authentifikation
Wie schon erwähnt, trägt die Shared-Key-Authentifikation nicht zum Schutz bei, sondern gibt im Gegenteil ungewollt Informationen preis. Da wir es hier mit einer Challenge-Response-Authentifizierung zu tun haben, spielt sich das ganze folgendermaßen ab:
- Der Server schickt dem Client die Challenge1, bspw. eine Zufallszahl.
- Der Client verschlüsselt diese Zahl wie oben angegeben und schickt das WEP-Paket (IV1 + Ciphertext1) zurück an den Server
- Trudy, die Angreiferin (von engl. intruder), kann also die drei Informationen (Challenge1, IV1 und Ciphertext1) erlauschen. Sie errechnet nun mittels XOR Challenge1 Ciphertext1 = Challenge1 (Challenge1 Keystream1) = Keystream1
Trudy hat nun Keystream1 und IV1, was sich als gültige Kombination erweist. Sie kann nun selbst versuchen, sich authentifizieren zu lassen. Eine Challenge2 vom Server beantwortet sie nun einfach mit dem WEP-Paket, bestehend aus IV1 + Ciphertext2, wobei sich Letzterer ergibt aus Challenge2 Keystream1. Dies schickt sie an den Server und wird erfolgreich authentifiziert.
Das WEP-Datenpaket
Ein WEP-Datenpaket besteht aus:
- den eigentlichen Nutzdaten,
- einer 32-Bit-Prüfsumme dieser Nutzdaten (Integrity Check Value, ICV, mittels Zyklischer Redundanzprüfung) und
- einem unverschlüsselten 24-Bit-Initialisierungsvektor (IV), der den WEP-Schlüssel zum Gesamtschlüssel mit 64 Bit, 128 Bit oder 256 Bit macht.
Das eigentliche WEP-Datenpaket besteht aus den Daten und der 32 Bit langen Prüfbitfolge. Dieses wird mit der IV-WEP-Schlüsselkombination verschlüsselt, und dem Ganzen wird der Initialisierungsvektor vorangestellt.
Aus dem IV kann der Empfänger schließlich zusammen mit dem RC4-Schlüssel wieder den Klartext der Nachricht berechnen.
Schwachstellen
Es existieren viele gut funktionierende Angriffe auf WEP-gesicherte Netze. Wenn ein WEP-gesichertes WLAN jedoch keine Teilnehmer hat, das heißt wenn sich niemals jemand an diesem Netzwerk angemeldet hat, dann ist die Wahrscheinlichkeit sehr gering, den Schlüssel schnell zu berechnen bzw. ihn überhaupt zu berechnen. Die meisten Angriffe nutzen die Schwachstelle des mit 24 Bit sehr kurzen Initialisierungsvektor IV bei der RC4-Verschlüsselung aus. Diese Angriffsmethode wird in allgemeinen Bezug auch als Related-Key-Attack bezeichnet.
Viele aktive Angriffe setzen seitens des Angreifers modifizierte Treiber voraus, da diese 'reinjection' beherrschen müssen. Anfangs unterstützen viele Treiber nicht einmal das passive Lauschen auf einem oder gar mehreren Kanälen, was durch den 'monitor mode' erreicht werden kann. Jedoch ist passives Lauschen nur eine Grundvoraussetzung. Angenommen, ein AP hat viele Clients, die viele Daten produzieren, dann könnte man einfach alles aufzeichnen und versuchen, mit den gewonnenen Daten den WEP-Schlüssel zu berechnen. Falls die Datenmenge noch nicht ausreicht, so kann man oft diesen Datenstrom verwenden, um daraus 'arp requests' zu extrahieren, die man für das 'reinjection' benötigt. Das Flooding seitens des Angreifers mittels 'arp requests' führt richtig durchgeführt zu vielen 'arp replies', die dann zum Brechen des WEP-Schlüssels verwendet werden können. 'Reinjection' ist treiberseitig recht kompliziert, da die Frames, die man in das WLAN bringt, im richtigen Timing gesendet werden müssen. Weiter ist zu beachten, dass ein Access Point nach einer gewissen Zeit eine erneute Authentifikation seitens des Clients voraussetzt. Wenn der Client sich nicht wieder am Netz anmeldet, dann werden alle gesendeten Daten am Access Point verworfen und in Kismet ist beispielsweise von suspicious client zu lesen.
CRC32 als Message Authentication Code (MAC)
Die CRC32-Funktion ist streng linear, denn CRC32(A XOR B)=CRC32(A) XOR CRC32(B).[2] Daher ist es möglich, die Bits zu berechnen, die sich in der Prüfsumme ändern müssen, wenn man den Geheimtext ändern will, jedoch den eigentlich dafür benötigten geheimen Schlüssels nicht besitzt. Durch diese Schwäche kann man den Payload des Paketes nach Belieben modifizieren, da man nach der Modifikation nur noch den MAC also den neuen CRC32 Wert berechnen muss.
Der obige Modifikationsschritt sieht in etwa so aus:
Verschlüsselte Nachricht m c=CRC32(m) 00100101001110010100101010101010100101... 10101010 10111101 10101101 10100000 Modifikationsvektor m' c'=CRC32(m') 00000000000000000000000000000000001000... 00000001 10101010 10100000 10100100
Im letzten Schritt berechnet man die neue Nachricht m_neu und den dazugehörigen MAC c_neu:
m_neu = m XOR m' c_neu = CRC32(m) XOR CRC32(m')
Um eine gefälschte Nachricht zu erstellen und um diese dann zu versenden, müssen nun die Datenfelder m und CRC32(m) im original Datenpaket (engl. Frame) durch die neu errechneten Werte m_neu und c_neu ersetzt werden. Nach dem Ersetzen kann das modifizierte Paket dann erneut versendet werden.
Auf diese Art kann man alle Pakete ändern. Wenn man jedoch wissen will, ob die Modifikation erfolgreich war, sollte man ein Paket wählen, das bei der Gegenstelle dann wieder zu einer Antwort führt.
Wenn das Quellpaket z. B. ein ping request war, so könnte man z. B. testen, auf welche Modifikationen im Paket man eine Antwort bekommt. Interessante zustandslose Pakete wären: arp-request sowie ping.
Brechen des Schlüssels
Es ist möglich, einen genutzten WEP-Schlüssel und damit die gesamte WEP-Verschlüsselung zu brechen. Es gibt für verschiedene Systeme Zubehör, das durch Mithören einer ausreichenden Menge des Datenverkehrs den verwendeten WEP-Schlüssel berechnen kann, zum Beispiel Aircrack oder Airsnort. Dieser Angriff basiert darauf, möglichst viele Pakete mit gleichem, schwachem Initialisierungsvektor zu haben. So ist es heute bereits möglich, eine WEP-Verschlüsselung in unter einer Minute zu knacken.[3]
In den letzten Jahren wurden die Angriffsmöglichkeiten immer weiter verbessert und ausgeweitet. So ist es beispielsweise möglich, wenn auch nur eine der übermittelten Nachrichten auch im Klartext bekannt ist, beliebige Inhalte (korrekt verschlüsselt) in das WLAN einzuspeisen. Des Weiteren gibt es eine Technik, einzelne, mitgehörte Datenpakete zu entschlüsseln, indem sie mehrmals leicht modifiziert wieder in das WLAN eingespielt werden. Dieser so genannte KoreK-Angriff verwendet nicht wie bisher Datenpakete mit gleichem Initialisierungvektor, sondern mit unterschiedlichen, wodurch der Angriff viel effektiver wird.
Außerdem kommen neben den passiven Angriffen auch aktive Angriffe zum Einsatz. So kann man Antworten des Access-Points forcieren, um innerhalb kürzester Zeit (~1 min) ausreichend Daten für einen erfolgreichen passiven Angriff zu sammeln. Dazu werden ARP-Pakete anhand bestimmter Signaturen gezielt abgefangen und – ohne ihren entschlüsselten Inhalt zu kennen – wieder verschlüsselt in das WLAN eingespeist.
Sicherheitsmaßnahmen
An erster Stelle sollte der Verzicht auf WEP zugunsten von WPA2 stehen. Dieses Ziel lässt sich in vielen Fällen bereits durch ein Treiber- oder Firmwareupdate erreichen. Lässt sich der Einsatz von WEP nicht vermeiden, sollten aber folgende, teils grundlegende, teils umstrittene, Behelfsmaßnahmen beachtet werden, um gezielte und zufällige Angriffe fremder Personen auf das WLAN zu unterbinden:
- Das Standard-Passwort des Access-Points ändern bzw. überhaupt erst einmal ein Passwort setzen.
- Umstritten ist die Aktivierung der Zugriffskontrollliste auf MAC-Adressen-Basis. Hier wird eine Liste, die ACL (Access Control List) aktiviert, damit der Access-Point nur Endgeräte (WLAN-Karten) mit bekannter (und vorher in der ACL registrierten) MAC-Adresse zulässt. Diese Maßnahme verhindert in der Praxis nur das unabsichtliche Einbuchen, denn die MAC-Adresse lässt sich oft ganz einfach per Software beliebig einstellen, so dass ein Angreifer eine mitgelesene zugelassene MAC-Adresse leicht als eigene Adresse ausgeben kann.
- Die SSID des Access-Points sollte keine Rückschlüsse auf verwendete Hardware, Einsatzzweck oder Einsatzort zulassen.
- Umstritten ist die Deaktivierung der SSID-Übermittlung (Broadcasting). Sie verhindert das unabsichtliche Einbuchen in das WLAN, jedoch kann die SSID trotz deaktiviertem Broadcasting mit einem Sniffer mitgelesen werden, wenn sich etwa ein Endgerät beim Access-Point anmeldet.
- WLAN-Geräte (wie der Access-Point) sollten nicht per WLAN konfiguriert werden können, sondern ausschließlich über eine kabelgebundene Verbindung.
- Im Access-Point sollte, sofern vorhanden, die Fernkonfigurierbarkeit abgestellt werden.
- WLAN-Geräte ausschalten, wenn sie nicht genutzt werden.
- Reichweite des Access-Points verringern (z. B. durch Antennenauswahl, Dämpfungsglieder, Teilabschirmung)
- Regelmäßige Firmware-Updates vom Access-Point durchführen, um sicherheitsrelevante Aktualisierungen zu erhalten.
Alle diese Sicherheitsmaßnahmen dürfen aber nicht darüber hinwegtäuschen, dass diese letztlich keinen wirklichen Schutz beim Einsatz von WEP bedeuten. Ein Angriff auf die WEP-Verschlüsselung ist trotz all dieser Vorkehrungen mit den richtigen technischen Voraussetzungen innerhalb von ca. einer Minute mit großer Sicherheit erfolgreich.
Wirkungsvoll – aber aufwendig – ist die Kombination von beliebiger WEP- Technologie (WEP64 oder WEP128) mit professioneller VPN-Technologie wie IPsec. Einziger Wermutstropfen sind hier die Kosten für die zusätzlichen VPN-Gateway-Systeme wie z. B. Cisco PIX, Checkpoint VPN oder auch die frei verfügbare OpenVPN-Lösung.
Einsatz
Aufgrund der Schwachstellen empfehlen Netzwerktechniker, den Verkehr über den Access Point mit einer zusätzlichen Verschlüsselung abzusichern. In der Praxis wird dies häufig durch ein VPN gelöst. Als Nachfolger für das unsichere WEP gilt WPA bzw. dessen Verbesserung WPA2 als IEEE-802.11i-Standard.
Bei der Absicherung durch ein VPN wird wahlweise nur die Nutzlast oder das gesamte Datenpaket verschlüsselt. Da WEP dann keinerlei zusätzlichen Sicherheitsgewinn mehr bringt, kann es nach dem KISS-Prinzip abgeschaltet werden, um mögliche Fehlerquellen zu minimieren. Eine andere Meinung ist, dass man WEP nutzen sollte, um die OSI-Schicht 2 wenigstens minimal abzusichern.
Einzelnachweise
- ↑ Seminar Net Security – Sicherheit im WLAN von Jörg Hedrich (PDF)
- ↑ Flaws in WEP
- ↑ heise Online WEP-Verschlüsselung von WLANs in unter einer Minute geknackt
Weblinks
- TU Darmstadt – Angriff auf WEP in einer Minute
- Break WEP Faster with Statistical Analysis Rafik Chaabouni, June 2006.
- Scott Fluhrer, Itsik Mantin, Adi Shamir: Weaknesses in the Key Scheduling Algorithm of RC4 (PDF; 297 kB)
- aircrack-ng Airsnort, KisMAC – Programme zum Brechen der WEP-Verschlüsselung
- WLAN-Hacking en passant
- Dammbruch bei WEP
- Vorbereiten des Einsatzes von IEEE 802.11-Netzwerken in Unternehmen
- WEP-Hexschlüssel aus Merksatz (Passphrase) generieren
- WEP-/WPA-Schlüssel generieren
- WEP is dead, Podcast mit Erik Tews
- WEP gesichertes WLAN knacken (Fragmentation Attack)
- Flaws in WEP
Kategorien:- Kryptologischer Standard
- WLAN
Wikimedia Foundation.