Skip to content

WLAN-Sicherheit 12 - Authentifizierung in WPA2

Wi-Fi Protected Access 2 (WPA2) implementiert die grundlegenden Funktionen des aktuellen Sicherheitsstandards IEEE 802.11i für drahtlose Netze nach dem IEEE 802.11 Standard (WLAN). Der allgemeine Aufbau, Schlüsselmanagement und Schlüsselhierarchie wurden bereits vorgestellt, ebenso der Pairwise Master Key PMK und Pairwise Transient Key und die Gruppenschlüssel. Auch der für die Verschlüsselung und Authentisierung verwendete "Counter-Mode/CBC-MAC" wurde bereits beschrieben. In dieser Folge geht es um die Authentifizierung der WPA2-Clients.

Authentifizierung im Überblick

Nachdem bisher der Schutz der über WLAN übertragenen Daten beschrieben wurde, geht es im Folgenden um die Authentifizierung. Diese erfolgt anders als bei WEP von der Verschlüsselung und Integritätssicherung getrennt. Man kann dabei drei Beteiligte unterscheiden: Das WLAN, die Zugangskontrolle und die Authentifizierung.

Während im WLAN die eigentliche Kommunikation samt Verschlüsselung und Integritätssicherung abgewickelt wird, ist die Zugangskontrolle dafür zuständig, dass nur authentifizierte Pakete das WLAN erreichen. Dazu befragt sie die Authentifizierung, die über den Zugang entscheidet. Damit nicht für jedes Paket eines bereits authentifizierten Kommunikationsteilnehmers erneut nachgefragt werden muss, wird die portbasierte Zugangskontrolle gemäß dem Standard IEEE 802.1x verwendet. Für den Austausch der benötigten Nachrichten wird das in RFC 3748 standardisierte Extensible Authentication Protokoll EAP eingesetzt. Zwischen Client und Authentifizierer/Access-Point werden die EAP-Nachrichten in EAPOL-Nachrichten gekapselt. EAPOL (EAP over LAN) wird ebenfalls in IEEE 802.1x spezifiziert.

IEEE 802.1x wurde eigentlich für kabelgebundene lokale Netze entwickelt. Dabei wird jedem Client ein tatsächlich vorhandener Netzwerk-Port zugeordnet, für dessen Kontrolle ein bestimmter Authentifizierungsserver (im Folgenden mit AS abgekürzt) zuständig ist.

Dieses Verfahren wird auf das drahtlose Netz übertragen, indem statt der physikalischen Ports logische Verbindungen zwischen Client und Access Point als Port betrachtet werden. Für jeden eine Verbindung aufbauenden Client wird vom Access Point ein logischer Port erzeugt, der dann einem virtuellen AS zugeordnet wird. Dabei wird zwischen kontrollierten und unkontrollierten Ports unterschieden: Der Client sendet seine Verbindungsanforderung an einen unkontrollierten Port, über den er dann während der Authentifizierung mit dem Access Point und dem AS kommuniziert. Nach erfolgreicher Authentifizierung wird dem Client ein kontrollierter Port zugewiesen, über den er dann Zugriff auf das WLAN erhält.

EAP

Für die Kommunikation zwischen Authentifizierer (in der Regel dem Access Point, daher im Folgenden mit AP abgekürzt) und AS wird das Extensible Authentication Protocol (EAP, RFC 3748) verwendet, das ursprünglich für die Nutzung in Einwahl-Netzen entwickelt wurde. EAP baut erst eine Verbindung auf, über die dann die Authentifizierung abgewickelt wird. Dazu werden lediglich 4 Nachrichtentypen benötigt:

  • EAP-Request für Nachrichten, die der AS über den AP an den Client schickt und
  • EAP-Response für Nachrichten, die der Client über den AP an den AS schickt.
  • EAP-Success, um dem Client über den AP vom AS eine erfolgreiche Authentifizierung zu melden und
  • EAP-Failure, um eine fehlgeschlagene Authentifizierung zu melden.

EAP-Request- und EAP-Response-Nachrichten werden in verschiedene Untertypen aufgeteilt, die über das EAP-Type-Feld markiert werden. Sie dienen z.B. dazu, die Identität des Clients abzufragen bzw. darauf zu antworten oder ein bestimmtes Upper-Layer-Authentifizierungsprotokoll auszuwählen.

EAPOL

Da EAP ursprünglich für den Einsatz in Einwahl-Netzen entworfen wurde, fehlen ihm einige für eine Kommunikation in einem LAN notwendige Funktionen. Diese wurden in EAPOL (EAP over LAN, IEEE 802.1x) definiert. Folgende Nachrichtentypen werden für den Einsatz in IEEE 802.11i benötigt:

  • EAPOL-Start wird an eine reservierte Multicast-Adresse gesendet, um die MAC-Adresse des AP zu erfahren. Der AP antwortet mit einer EAP-Request-Nachricht vom Typ Identity, um die Identität des Clients abzufragen.
  • EAPOL-Keys wird für den Austausch der notwendigen Schlüssel verwendet.
  • EAPOL-Packet wird für die Kapselung der eigentlichen EAP-Nachrichten verwendet.
  • EAPOL-Logoff wird vom Client verwendet, um sich beim AP abzumelden, wenn er das Netzwerk verlassen will.

Ablauf der Authentifizierung

Authentifizierungsserver allgemein sowie das häufig genutzte RADIUS-Protokoll werde ich in in einer zukünftigen Folge beschreiben, daher verzichte ich hier auf eine Beschreibung der Nachrichten des AS. Die zwischen AP und AS ausgetauschten EAP-Nachrichten werden in Nachrichten des Authentifizierungsprotokolls gekapselt, das im Folgenden hilfsweise 'Auth' genannt wird.

  1. Der Client möchte auf das WLAN zugreifen und sendet eine EAPOL-Start-Nachricht an den AP.
  2. Der AP sendet dem Client eine EAP-Request/Identity-Nachricht, gekapselt in eine EAPOL-Packet-Nachricht, um dessen Identität abzufragen.
  3. Der Client antwortet mit seiner Identität in Form einer EAP-Response/Identity-Nachricht, gekapselt in eine EAPOL-Packet-Nachricht.
    Der AP kapselt die EAP-Response in eine Auth-Nachricht und sendet sie an den AS.
  4. Der AS antwortet mit einem EAP-Request, gekapselt in eine Auth-Nachricht.
    Der AP kapselt den EAP-Request in eine EAPOL-Nachricht und sendet sie an den Client.
  5. Der Client antwortet mit einer EAP-Response, gekapselt in eine EAPOL-Nachricht.
    Der AP kapselt die EAP-Response in eine Auth-Nachricht und sendet sie an den AS.
  6. Ist die Authentifizierung erfolgreich, sendet der AS eine EAP-Success-Nachricht, gekapselt in eine Auth-Nachricht, an den AP.
    Der AP kapselt die EAP-Success-Nachricht in eine EAPOL-Nachricht und sendet sie an den Client.
  7. Der AS sendet den Pairwise-Master-Key an den AP, der dann die temporären Schlüssel über EAPOL-Key-Nachrichten mit dem Client austauscht.

Hier die ausgetauschten Nachrichten in einer Übersicht:

Ablauf der Authentifizierung
Abb. 1: Bei der Authentifizierung ausgetauschte Nachrichten (Klick für großes Bild in neuem Fenster)

Oben wurde davon ausgegangen, dass der AS EAP-Nachrichten versteht und dies dem AP bekannt ist. Andernfalls würde der AP in Schritt 2 eine sog. EAP-Start-Nachricht an den AS senden. Dabei handelt es sich um eine EAP-Nachricht ohne Datenteil, gekapselt in das Protokoll des AS. Versteht der AS EAP, antwortet er mit einer in seinem Protokoll gekapselten EAP-Request/Identity-Nachricht, die der AP dann an den Client weiterleitet.

In der nächsten Folge wird die Beschreibung von IEEE 802.11i / WPA2 abgeschlossen.

Trackbacks

Dipl.-Inform. Carsten Eilers am : WLAN-Sicherheit 13 - Authentifizierung in WPA2, Teil 2

Vorschau anzeigen
Wi-Fi Protected Access 2 (WPA2) implementiert die grundlegenden Funktionen des aktuellen Sicherheitsstandards IEEE 802.11i für drahtlose Netze nach dem IEEE 802.11 Standard (WLAN). Der allgemeine Aufbau, Schlüsselmanagement und Schl&uu