WLAN-Verschlüsselung

Seite 3: TKIP und WPA

Inhaltsverzeichnis

Nach Bekanntwerden der WEP-Probleme gründete das IEEE eine Arbeitsgruppe für bessere Sicherungsmechanismen, die in den Standard IEEE 802.11i münden sollten. Die Ausarbeitung und Ratifizierung eines solchen Standards dauert üblicherweise mehrere Jahre, aber zwischenzeitlich war der Druck aus dem Markt so groß geworden, dass man in der Industrie nicht mehr auf dessen Fertigstellung warten wollte.

Unter Federführung von Microsoft hat daher die Wi-Fi Alliance (www.wi-fi.org) den Quasistandard Wi-Fi Protected Access (WPA) definiert. Sie ging dabei den pragmatischen Weg, die bereits klaren und für den Markt wichtigen Dinge aus den Entwürfen von 802.11i herauszunehmen und in ein eigenes Dokument zu packen. Dazu gehören unter anderem

  • die Algorithmen TKIP und Michael als Ersatz für WEP;
  • ein standardisiertes Handshake-Verfahren zwischen Client und AP zur Ermittlung der Sitzungsschlüssel;
  • ein vereinfachtes Verfahren zur Ermittlung des Master Secret per Passphrase, das ohne Radius-Server auskommt sowie
  • die Aushandlung des Verschlüsselungsverfahrens zwischen AP und Client.

Der Name Temporal Key Integrity Protocol (TKIP) leitet sich daraus ab, wie das Verfahren aus dem vorliegenden Schlüssel über Key Mixing einen weiteren, temporären Schlüssel ableitet. Erst dieser fließt dann in den nach wie vor verwendeten, für sich betrachtet sicheren RC4-Algorithmus ein. Das "Temporal" könnte auch andeuten, dass es sich um eine Zwischenlösung handelt, bei der von vornherein klar war, dass sie nur übergangsweise bis zur Einführung eines wirklich starken Verschlüsselungsverfahrens genutzt werden soll.

Eine Forderung war nämlich, dass das neue Verfahren auch auf existierender WEP/RC4-Hardware mit vertretbarem Mehraufwand implementierbar sei: Schon als TKIP definiert wurde, war abzusehen, dass es bis weit in die Ära der heute aktuellen 54/108-MBit/s-WLANs laufen muss. Eine reine Software-Verschlüsselung hätte auf den meisten Systemen zu hohen Geschwindigkeitseinbußen geführt.

TKIP nutzt viele der WEP-Funktionsblöcke weiter, baut aber den auf 48 Bit verlängerten IV anders zusammen und steigert mit Michael den Schutz gegen manipulierte Pakete.

Das Blockschaltbild von TKIP weist deshalb viele von WEP bekannte Komponenten auf, die in WLAN-Karten üblicherweise in Hardware existieren: Der RC4-Algorithmus übernimmt nach wie vor die eigentliche Verschlüsselung. Die Erweiterungen setzen bei der Erzeugung des RC4-Schlüssels (im Bild rot abgesetzt) wie auch der Paketintegrität (blau) an.

TKIP ermittelt die Vorgabe für den Schlüsselstromgenerator in zwei Key-Mixing-Stufen. Ein Angreifer kann damit aus dem IV keinen direkten Rückschluss auf den RC4-Schlüssel mehr ziehen. Das Key Mixing ist so ausgelegt, dass keine schwachen RC4-Schlüssel entstehen können. Außerdem ist der IV nun 48 statt 24 Bit lang. Damit kann ein Sender rund 280 Billionen Pakete – statt wie vorher nur knapp 17 Millionen – übertragen, bevor der 128 Bit lange TKIP-Schlüssel zwingend gewechselt werden muss. Selbst in einem 500-MBit/s-WLAN von morgen würde das erst nach rund 200 Jahren passieren.

Zwecks Rechenzeitoptimierung besteht der IV aus einem 16 Bit langen Lo-Teil und einem 32 Bit langen Hi-Teil. Dadurch braucht der WLAN-Prozessor die rechenintensive Phase 1 nur alle 65 536 Pakete zu durchlaufen. Die relativ simple Phase 2 nutzt die Ausgabe der ersten Phase sowie den Lo-Teil des IV, der sich mit jedem Paket ändert, um den RC4-Schlüssel zu erstellen. Anders als bei WEP ist nun festgelegt, dass der IV bei TKIP von Paket zu Paket um Eins erhöht wird. Der Empfänger ist gehalten, diese Sequenzialität zu überprüfen und Pakete zu verwerfen, die einen bereits benutzten IV enthalten, was Attacken durch simple Wiederholung (Replay) blockiert. Als weiteres Detail mischt TKIP in Phase 1 die MAC-Adresse des Senders ein. So ist sichergestellt, dass ein gleicher IV bei verschiedenen Sendern zu unterschiedlichen RC4-Schlüsseln führt.

Als neue Komponente hängt TKIP dem unverschlüsselten Paket neben der CRC einen zusätzlichen Prüfwert an, den Michael-MIC (Message Integrity Check). Der extra für WLAN entwickelte Hash-Algorithmus Michael ist so konzipiert, dass er auch auf älterer WLAN-Hardware mit vertretbarem Aufwand laufen kann. Weil darin ein weiterer Schlüssel eingeht, lässt sich der MIC ohne dessen Kenntnis nicht berechnen. Genauso wenig kann dadurch ein Angreifer ein Datenpaket verfälschen, ohne dass der Empfänger dies erkennt – solange er den Michael-Hash nicht mit Brute-Force-Methoden bricht. Wegen der Forderung nach hoher Laufzeiteffizienz geht Michael Kompromisse ein: Obwohl der Schlüssel 64 Bit lang ist, entspricht seine effektive Stärke nur etwa 40 Bit. Dies wird allerdings als hinreichend angesehen, da ein Angreifer erst einmal TKIP brechen müsste, bevor er gefälschte Datenpakete erzeugen kann.

Sollte das wider Erwarten geschehen, stellt Michael keine besondere Hürde mehr dar. WPA definiert deshalb Gegenmaßnahmen, wenn eine WLAN-Karte mehr als zwei Michael-Fehler pro Minute erkennt: Sowohl Client als auch AP brechen dann für eine Minute den Datentransfer ab und handeln danach TKIP- und Michael-Schlüssel neu aus. Damit eröffnet sich zwar prinzipiell ein Tor für Denial-of-Service-Angriffe, aber die kann man bei Funknetzen auch mit wesentlich geringerem Aufwand bewerkstelligen.

WPA stellt den bei EAP beschriebenen Schlüsselaustausch auf eine standardisierte Grundlage und berücksichtigt dabei die Fähigkeit moderner WLAN-Chipsätze, neben vier globalen Schlüsseln auch pro eingebuchtem Client einen individuellen Session Key zu verwenden.

Bei WPA gliedert sich der Key Handshake in zwei Phasen: zuerst den Pairwise Key Handshake, dann den Group Key Handshake. Über das erste ausgetauschte Paketpärchen schicken sich Client und AP Zufallswerte (Nonces) für die Schlüsselaushandlung. Beide mischen das bereits bekannte Master Secret damit und erzeugen über ein festgelegtes Hash-Verfahren weitere Daten, die zum einen dem Schutz des weiteren Austauschs, zum anderen als Session Key dienen. Das Master Secret nicht direkt zu benutzen schafft den Vorteil, dass man es für spätere Neuverhandlungen wiederverwenden darf.

Im zweiten Pärchen instruiert der Access Point den Client, den berechneten Sitzungsschlüssel zu installieren. Sobald der Client dies bestätigt, verwendet ihn auch der AP. Ab sofort können beide Daten chiffriert austauschen und nutzen das für den letzten Schritt, in dem der AP seinen selbst festgelegten Group Key überträgt. Mit diesem verschlüsselt er Broadcast- und Multicast-Pakete, die er gleichzeitig an alle Stationen senden muss. Während bestehender Sitzungen können sowohl Access Point als auch Client ein Rekeying nach diesem Verfahren anstoßen.

Der Handshake läuft bei WPA grundsätzlich ab, ein Anwender wird niemals selbst TKIP- oder Michael-Schlüssel definieren müssen. Ist kein Radius-Server zur Erteilung des Master Secrets vorhanden, wie typischerweise in kleineren Firmen oder bei Heimanwendern, sieht WPA das PSKVerfahren vor. Dabei muss der Anwender auf dem AP wie auf allen Stationen eine zwischen acht und 64 Zeichen lange Passphrase eingeben, aus der diese zusammen mit der verwendeten SSID das Master Secret über ein Hash-Verfahren berechnen. Die Nonces sorgen dafür, dass sich trotz des konstanten Master Secret individuelle TKIP-Schlüssel ergeben.

In einem PSK-Netz hängen – ähnlich wie bei WEP ohne EAP – sowohl Zugangsschutz als auch Vertraulichkeit daran, dass die Passphrase nicht in unbefugte Hände gerät. Leicht zu ratende oder zu kurze Phrasen sind obendrein anfällig gegen Wörterbuchattacken und deswegen tabu. Solange man mit der Passphrase sorgfältig umgeht, bietet WPA-PSK eine deutlich höhere Sicherheit gegen Einbrüche und Abhören als jede WEP-Variante. Für Installationen, in denen die Passphrase einem zu großen Nutzerkreis bekannt gemacht werden müsste, als dass sie geheim zu halten wäre, nutzt man EAP/802.1x.