Sicheres WLAN durch WPA und 802.11i, Teil 2

29.09.2005 von Eckhart Traber
Das im originalen WLAN-Standard vorgesehene WEP hat sich für den Schutz der Daten als unzureichend erwiesen. Im zweiten Teil unserer Serie stellen wir Alternativen wie EAP, 802.1x und WPA zur Absicherung des WLANs vor.

In Teil 1 dieser Serie haben wir die grundsätzlichen Sicherheitsanforderungen in einem WLAN und den dafür vorgesehenen Schutzmechanismus WEP erläutert. Doch wie sich zeigte, enthält WEP prinzipielle Schwachstellen und stellt keinerlei Schutz mehr dar. Auch die Erweiterung auf WEPplus schafft das grundsätzliche Problem des zu kurzen IVs nicht aus der Welt. Denn es kann das Format der Pakete in einem WLAN nicht ändern, ohne inkompatibel zu allen bisher existierenden WLAN-Karten zu werden.

Es gibt aber eine Möglichkeit, mehrere der aufgetauchten Probleme mit einer zentralen Änderung zu lösen: Man verwendet nicht mehr wie bisher die fest konfigurierten WEP-Schlüssel, sondern handelt diese dynamisch aus. Als dabei anzuwendendes Verfahren hat sich dabei das Extensible Authentication Protocol durchgesetzt. Wie der Name schon nahe legt, ist der ursprüngliche Zweck von EAP die Authentifizierung. Der geregelte Zugang zu einem WLAN, also die Möglichkeit, einen für die folgende Sitzung gültigen WEP-Schlüssel zu installieren, fällt dabei sozusagen als Zusatznutzen ab.

Ablauf von EAP

Die Abbildung zeigt den grundsätzlichen Ablauf einer mittels EAP geschützten Sitzung. In der ersten Phase meldet sich der Client wie gewohnt beim Access Point an und erreicht einen Zustand, in dem er bei normalem WEP oder WEPplus jetzt über den Access Point Daten senden und empfangen könnte. Nicht so jedoch bei EAP, denn in diesem Zustand verfügt der Client ja noch über keinerlei Schlüssel, mit denen man den Datenverkehr vor dem Abhören schützen könnte.

Stattdessen befindet sich der Client aus Sicht des Access Points in einem Zwischenzustand, in dem er nur bestimmte Pakete vom Client weiterleitet. Diese sind alle an einen Authentifizierungs-Server gerichtet. Bei diesen Paketen handelt es sich um das bereits erwähnte EAP/802.1x, das sich an ihrem Ethernet-Typ 0x888e zweifelsfrei von sonstigen Protokollen unterscheiden lässt.

Der Access Point verpackt diese Pakete in RADIUS-Anfragen und reicht sie an den Authentifizierungs-Server weiter. Umgekehrt wandelt der Access Point vom RADIUS-Server kommende Antworten wieder in EAP-Pakete um und reicht sie an den Client weiter. Der Access Point dient dabei sozusagen als Mittelsmann zwischen Client und Server: Er muss den Inhalt dieser Pakete nicht prüfen; er stellt lediglich sicher, dass kein anderer Datenverkehr von oder zu dem Client erfolgen kann.

Vorteile von EAP

Dieses Verfahren hat zwei Vorteile:

Über den so gebildeten Tunnel durch den Access Point versichern sich Client und Server nun ihrer gegenseitigen Authentizität. Der Server überprüft die Zugangsberechtigung des Clients zum Netz, und der Client überprüft, ob er wirklich mit dem richtigen Netz verbunden ist. Von Hackern aufgestellte wilde Access Points lassen sich so erkennen.

Es gibt eine ganze Reihe von Authentifizierungsverfahren, die in diesem Tunnel angewendet werden können. Ein gängiges (und von Windows XP unterstütztes) Verfahren ist TLS, bei dem Server und Client Zertifikate austauschen. Ein anderes ist TTLS, bei dem nur der Server ein Zertifikat liefert – der Client authentifiziert sich über einen Benutzernamen und ein Passwort.

Nachdem die Authentifizierungsphase abgeschlossen ist, ist ein auch ohne WEP gesicherter Tunnel entstanden, in den im nächsten Schritt der Access Point eingebunden wird. Dazu schickt der RADIUS-Server das so genannte Master Secret, einen während der Verhandlung berechneten Sitzungsschlüssel, zum Access Point. Das LAN zum Access Point wird in diesem Szenario als sicher betrachtet. Von daher kann diese Übertragung im Klartext erfolgen.

Sicherheit durch automatischen Schlüsselwechsel

Mit diesem Sitzungsschlüssel übernimmt der Access Point jetzt den gebildeten Tunnel. Er kann ihn nutzen, um dem Client die eigentlichen WEP-Schlüssel mitzuteilen. Je nach Access-Point-Hardware kann das ein echter Sitzungsschlüssel sein, also ein WEP-Schlüssel, der nur für Datenpakete zwischen dem Access Point und genau diesem Client benutzt wird. Alternativ kann der Access Point einen so genannten Gruppenschlüssel nutzen, den der Access Point für die Kommunikation mit mehreren Clients einsetzt. Klassische WEP-Hardware kennt meistens nur die im Kapitel über WEP erwähnten vier Gruppenschlüssel.

Der besondere Vorteil dieses Verfahrens besteht darin, dass der Access Point über den EAP-Tunnel die WEP-Schlüssel regelmäßig wechseln und ein so genanntes Rekeying durchführen kann. Auf diese Weise lassen sich WEP-Schlüssel gegen andere ersetzen, lange bevor sie durch IV-Kollisionen Gefahr laufen, geknackt zu werden. Eine gängige Nutzungszeit für einen WEP-Schlüssel sind fünf Minuten.

Zu den weiteren Vorteilen dieses Verfahrens zählt die einfache Implementation im Access Point, die nur geringe Erweiterungen der existierenden Hardware benötigt. Nachteilig ist bei diesem Verfahren seine Komplexität: Die Pflege des zentralen RADIUS-Servers und der dort gespeicherten Zertifikate ist im Allgemeinen nur in größeren Einrichtungen mit separater IT-Abteilung möglich. Für den Heimgebrauch oder für kleinere Unternehmen eignet es sich weniger.

Des Weiteren ist bisher nirgendwo eine Mindestausstattung an Kommunikationsverfahren festgelegt, die ein Client oder ein Server unterstützen müssen. Es sind also durchaus Szenarien denkbar, in denen ein Client und ein Server keinen EAP-Tunnel aufbauen können, weil die Menge unterstützter Verfahren nicht übereinstimmt. Diese praktischen Hürden haben den Einsatz von EAP/802.1x daher bisher auf den professionellen Bereich beschränkt. Der Heimanwender musste sich weiterhin bestenfalls mit WEPplus begnügen oder sich selber auf Anwendungsebene um das Sicherheitsproblem kümmern.

TKIP und WPA

Wie in den letzten Abschnitten gezeigt wurde, ist der WEP-Algorithmus prinzipiell fehlerhaft und unsicher. Die bisher erläuterten Maßnahmen sind im Wesentlichen entweder Schnellschüsse mit nur geringen Verbesserungen oder so kompliziert, dass sie für den Heimbenutzer oder kleine Installationen schlicht unpraktikabel sind.

Die IEEE hatte nach dem Bekanntwerden der Probleme mit WEP eine Task Group gegründet, die sich mit der Definition besserer Sicherungsmechanismen befasst. Diese sollten schließlich in den Standard IEEE 802.11i münden. Die Ausarbeitung und Ratifizierung eines solchen Standards dauert jedoch üblicherweise mehrere Jahre.

Zwischenzeitlich war der Druck aus dem Markt so groß geworden, dass man in der Industrie nicht mehr auf die Fertigstellung von 802.11i warten konnte und wollte. Unter Federführung von Microsoft wurde daher von der Wi-Fi-Alliance der Standard Wi-Fi Protected Access (WPA) definiert. Die Wi-Fi-Alliance ist ein Zusammenschluss von WLAN-Herstellern, der die herstellerübergreifende Funktion von WLAN-Produkten fördern möchte und auch das Wi-Fi-Logo vergibt.

Pragmatischer Ansatz mit WPA

Bei der Definition von Standards, so auch bei 802.11i, sind die grundlegenden Mechanismen üblicherweise recht schnell klar. Die Verabschiedung der Standards zieht sich meistens auf Grund von unterschiedlichen Detailauffassungen in die Länge. Diese Details sind dann jedoch häufig nur für selten genutzte Anwendungen wichtig.

WPA ging deshalb den pragmatischen Weg, die bereits klaren und für den Markt wichtigen Dinge aus den Entwürfen von 802.11i herauszunehmen und in einen eigenen Standard zu packen. Zu diesen Details gehören im Einzelnen:

TKIP

TKIP steht für Temporal Key Integrity Protocol. Wie der Name nahe legt, handelt es sich dabei um eine Zwischenlösung, die nur übergangsweise bis zur Einführung eines wirklich starken Verschlüsselungsverfahrens genutzt werden soll. Dennoch soll sie mit den Problemen von WEP aufräumen. Eine Designanforderung war demzufolge, dass das neue Verschlüsselungsverfahren auch auf existierender WEP/RC4-Hardware mit vertretbarem Aufwand implementiert werden kann.

Als TKIP definiert wurde, war bereits abzusehen, dass es bis weit in die Ära der 54/108-Mbit-WLANs genutzt werden würde. Eine reine Software-Verschlüsselung wäre auf den meisten Systemen mit zu hohen Geschwindigkeitseinbußen verbunden gewesen. Im Blockschaltbild von TKIP auf der nächsten Seite finden sich deshalb viele von WEP bekannte Komponenten wieder, die in WLAN-Karten üblicherweise in Hardware existieren und damit effektiv für TKIP genutzt werden können.

Als Komponenten, die auch schon von WEP her bekannt sind, erkennt man die RC4-Engine zur eigentlichen Ver- und Entschlüsselung sowie die CRC-Bildung davor. Als neue Komponente wird den unverschlüsselten Paketen neben der CRC allerdings noch der so genannte Michael-MIC angehängt. Bei diesem handelt es sich um einen extra für WLAN entwickelten Hash-Algorithmus, der so konzipiert wurde, dass er auch auf älterer WLAN-Hardware mit vertretbarem Overhead berechnet werden kann. Da im Gegensatz zur CRC in diesen Hash ein weiterer Schlüssel (der Michael-Schlüssel) eingeht, lässt er sich ohne die Kenntnis des Schlüssels weder berechnen noch lässt sich ein Datenpaket verfälschen, ohne dass der Empfänger dies erkennt.

Dies gilt natürlich nur unter der Voraussetzung, dass ein Angreifer den Michael-Hash nicht mit Brute-Force-Methoden bricht. Wegen der Forderung der hohen Laufzeiteffizienz geht Michael hier gewisse Kompromisse ein: Obwohl ein 64 Bit langer Schlüssel verwendet wird, beträgt die effektive Stärke von Michael nur etwa 40 Bit. Dies wurde allerdings als hinreichend angesehen. Ein potenzieller Angreifer müsste erst einmal die TKIP-Komponente brechen, um Datenpakete zu erzeugen, welche die CRC-Prüfung der WEP/RC4-Komponente überstehen.

TKPI/Michael im Detail

TKIP kümmert sich um die Berechnung der eigentlichen Schlüssel für die RC4-Engine. Im Gegensatz zu WEP wird der eigentliche Schlüssel und der im Paket enthaltene IV hier niemals direkt als RC4-Schlüssel genutzt, sondern er durchläuft zusammen mit dem IV zwei so genannte Key-Mixing-Phasen. Ein Angreifer kann also vom im Klartext enthaltenen IV keine direkten Rückschlüsse auf den RC4-Schlüssel ziehen. Dies löst das Problem der schwachen IVs von WEP. Das Key-Mixing selbst ist so ausgelegt, dass niemals schwache RC4-Schlüssel entstehen können.

Des Weiteren ist der intern hochgezählte und im Paket im Klartext übertragene IV statt 24 jetzt 48 Bit lang. Damit kann ein Sender nun etwa 280 Billionen Pakete übertragen, bevor der 128 Bit lange TKIP-Schlüssel zwingend gewechselt werden müsste. Selbst in einem modernen WLAN mit brutto 108 Mbit/s, das netto 50 Mbit/s erreicht, würde das 2000 Jahren entsprechen.

Es bleibt noch zu erwähnen, dass sich der IV aus Optimierungsgründen in zwei Teile aufteilt: einen 16 Bit langen Lo-Teil und einen 32 Bit langen Hi-Teil. Der Hintergrund dafür ist, dass das Key-Mixing wie im Bild gezeigt in zwei Phasen abläuft:

Zusätzliche Sicherheitsmaßnahmen

Im Gegensatz zu WEP ist bei TKIP festgelegt, dass die von Paket zu Paket zu verwendenden IVs streng monoton ansteigen müssen. Der Empfänger muss die Phase 1 also auch nur für alle 65.536 empfangenen Pakete durchlaufen. Der Entschlüsselungsteil von TKIP ist gehalten, diese Sequenz zu überprüfen. Er soll Pakete verwerfen, die einen bereits benutzten IV enthalten, was Replay-Attacken verhindert.

Als weiteres Detail mischt TKIP in der ersten Phase auch noch die MAC-Adresse des Senders ein. Auf diese Weise ist sichergestellt, dass eine Verwendung gleicher IVs von verschiedenen Sendern nicht zu identischen RC4-Schlüsseln und damit wieder zu Angriffsmöglichkeiten führt.

Wie oben erwähnt, stellt der Michael-Hash keine besonders hohe kryptografische Hürde dar: Kann der Angreifer den TKIP-Schlüssel brechen oder verschlüsselte Pakete durch Modifikationen ähnlich wie bei WEP an der CRC-Prüfung vorbeischleusen, bleiben nicht mehr allzu viele Hürden zu überwinden. WPA definiert aus diesem Grund Gegenmaßnahmen, wenn eine WLAN-Karte mehr als zwei Michael-Fehler pro Minute erkennt. Sowohl Client als auch Access Point brechen dann für eine Minute den Datentransfer ab und handeln danach TKIP- und Michael-Schlüssel neu aus.

Ausblick

WPA und TKIP räumen die Schwachstellen von WEP größtenteils aus dem Weg. Doch sie stellen nur eine vorläufige Lösung dar. Seit Mitte 2004 ist endlich der neue Sicherheitsstandard IEEE 802.11i verabschiedet. Er stellt die Sicherheit im WLAN auf eine vollkommen neue Basis.

Im letzten Teil unserer Serie, die in wenigen Tagen erscheint, erläutern wir zunächst den Schlüsselaustausch von WPA. Dieses Verfahren wird auch von 802.11i genutzt. Anschließend stellen wir die Neuerungen von 802.11i und die dabei genutzte Verschlüsselung mit AES-CCM vor. (ala)

Dieser Beitrag basiert auf einem Techpaper der Firma LANCOM. Das in Würselen ansässige deutsche Unternehmen ist Hersteller von innovativen und sicheren Kommunikationslösungen in den Bereichen Secure Internet Access, VPN Network Connectivity und Wireless LAN. LANCOM Systems verwendet in seinen 54-Mbit/s-Produkten den Atheros-Chipsatz mit einem Hardware-AES-Beschleuniger. Dadurch ist die höchstmögliche Verschlüsselung ohne Perfomance-Verluste gewährleistet. Im Zusammenspiel mit weiteren Einstellungsmöglichkeiten wie Multi-SSID und VLAN-Tagging ist es mit LANCOM-Access-Points möglich, rundum sichere und gleichzeitig für mehrere Benutzergruppen angepasste Netze mit verschiedenen Sicherheitsstufen anzubieten.