WiFi Protected Access: Difference between revisions

From
Jump to navigation Jump to search
Line 29: Line 29:


=== 4-Way-Handshake ===
=== 4-Way-Handshake ===
Nach der EAP Success Nachricht wird der 4 Way Handshake initialisiert, bei dem die aktuellen Session Keys ausgehandelt und installiert werden. An diesem Punkt hat der Authentication Server sowohl der STA als auch dem AP unabhängig voneinander einen Pairwise Master Key - '''PMK''' - zugestellt. Details zu den verschiedenen Schlüsseln im nächsten Abschnitt.
#Mittels einer ''EAPOL Key'' Nachricht schickt der AP eine Zufahlszahl an den Client. Aus der erhaltenen und der eigenen Zufallszahl und dem PMK erzeugt der Client seinen Pairwise Transient Key - '''PTK'''
#Der Client schickt seine Zufallszahl an den AP und signiert die Nachricht mit dem eben erstellten PTK. Der AP erzeugt nun ebenfalls aus beiden Zufallszahlen den PTK und überprüft damit die Signatur der letzten Nachricht, danach glaubt er, dass der Client im Besitz des PTK ist.
#AP schickt eine Sequenznummer an den Client, mit der nachfolgende Pakete der eigentlichen Verbindung nummeriert werden und signiert diese Nachricht ebenfalls, der Client überprüft die Signatur und glaubt danach, dass der AP im Besitz des PTK ist.
#Der Client schickt eine Acknowledge Nachricht an den AP, woraufhin ein kontrollierter Port für die nachfolgende Session freigegeben wird.
(Alle hierbei verwendeten Nachrichten sind vom Typ ''EAPOL Key'')


== Key Management ==
== Key Management ==

Revision as of 19:22, 7 July 2007

Introduction

Mängel im Design von WEP führten zur Entwicklung von 802.11i, Robust Security Network - RSN. Da einige der Änderungen neue Netzwerkhardware erfordern, wurde auch eine Übergangslösung entworfen, die als Softwareupgrade auf alter Hardware installiert werden kann, das Tempory Key Integrity Protocol - TKIP.


WPA vs WPA2

WPA basiert auf TKIP, WPA 2 vollständig auf RSN. Gemeinsamkeiten gibt es bei der Authentication und beim Key Management, Unterschiede beim verwendeten Cipher und in Folge bei der Integrity Protection und Confidentiality. An den entsprechenden Stellen sind die Unterschiede ausgewiesen.

Authentication

Grundsätzlich sollen nur autorisierte Stations Zugang zum Netzwerk und dessen Ressourcen erhalten und Access Points sollen sich gegenüber den Stations ausweisen, damit diese sich nicht bei sogenannten Rogue AP anmelden. Es wird keine spezielle Methode für die Autorisierung im Standard vorgegeben. Mögliche Varianten könnten Passwörter, Signaturen, Smart Cards und ähnliches oder Kombinationen davon sein. Um die Verbindung für die Dauer einer Sitzung zu schützen, wird im Zuge der Authentifizierung ein Session Key zwischen STA und AP ausgehandelt. Dieser soll auch verhindern, dass dritte die Identität eines der beiden Teilnehmer vortäuschen können. Das allgemeine Verfahren wurde aus dem Standard 802.1X abgeleitet.

Participating Entities

Es werden 3 Entitäten definiert, die am Authentifizierungsprozess beteiligt sind.

  1. Supplicant (hier STA), der mobile Client, der sich beim Netzwerk anmelden möchte
  2. AP, der Access Point, der den Zugang zum Netzwerk in der Form von offenen und geschlossenen Ports regelt
  3. AS, Authentication Server der sich um die eigentliche Autorisierung kümmert

STA und AP kommunizieren drahtlos und vor erfolgreicher Authentifierung nur über den uncontrolled Port des AP. Dabei leitet der Access Point die Nachrichten des Supplicants nur an den Authentication Server weiter und verpackt sie eventuell noch mit dem entsprechenden Protokoll, ohne sie zu lesen. Der Kommunikationsweg zwischen AP und AS ist im Standard nicht definiert, aber die Sicherheit dieses Übertragungsweges ist wichtig.

EAP / EAPOL & RADIUS

Das vom Standard vorgesehen Protokoll für den Nachrichtenaustausch bei der Authentifizierung ist EAP. Darin sind 4 Typen von Nachrichten vorgesehen. EAP Start, EAP Request, EAP Response und EAP Success. EAP kann die speziellen Nachrichten einer Vielzahl von Authentifizierungsmethoden übertragen. Die aktuelle Methode wird festgelegt, während sich ein Client mit einem Netzwerk assoziiert. Zwischen STA und AP wird EAP over LAN - EAPOL verwendet und zwischen AP und AS EAP over RADIUS. Die Verwendung von RADIUS ist bei WPA2 nicht vorgeschrieben, aber weit verbreitet.

  1. Der Supplicant kann die Authentication mit einer optionalen EAPOL Start Nachricht einleiten
  2. Der AP schickt eine EAPOL Request Nachricht
  3. Der Supplicant antwortet mit einer EAPOL Response Nachricht, die der AP als RADIUS Access Request an den AS weiterleitet
  4. Der AS schickt RADIUS Access Challenge, die vom AP als EAPOL Request weitergeleitet wird
  5. Der Supplicant antwortet mit einem EAP Response, das als RADIUS Access Request den AS erreicht
  6. Der AS schickt RADIUS Access Accept, die als EAP Success an die STA weitergeleitet wird
  7. Die STA kann sich mit einer optionalen EAPOL Logoff Nachricht abmelden

Die Schritte 4. und 5. können beliebig oft wiederholt werden, denn hier findet der eigentliche Nachrichtenaustausch statt. Die Errichtung eines TLS Tunnels könnte zum Beispiel 10 bis 20 Nachrichten erfordern. In einem solchen Fall würde sich der AS mit einem Zertifikat gegenüber der STA ausweisen und über den TLS Tunnel könnte dann mittels einer Passwortabfrage die Identität des Clients überprüft werden.

4-Way-Handshake

Nach der EAP Success Nachricht wird der 4 Way Handshake initialisiert, bei dem die aktuellen Session Keys ausgehandelt und installiert werden. An diesem Punkt hat der Authentication Server sowohl der STA als auch dem AP unabhängig voneinander einen Pairwise Master Key - PMK - zugestellt. Details zu den verschiedenen Schlüsseln im nächsten Abschnitt.

  1. Mittels einer EAPOL Key Nachricht schickt der AP eine Zufahlszahl an den Client. Aus der erhaltenen und der eigenen Zufallszahl und dem PMK erzeugt der Client seinen Pairwise Transient Key - PTK
  2. Der Client schickt seine Zufallszahl an den AP und signiert die Nachricht mit dem eben erstellten PTK. Der AP erzeugt nun ebenfalls aus beiden Zufallszahlen den PTK und überprüft damit die Signatur der letzten Nachricht, danach glaubt er, dass der Client im Besitz des PTK ist.
  3. AP schickt eine Sequenznummer an den Client, mit der nachfolgende Pakete der eigentlichen Verbindung nummeriert werden und signiert diese Nachricht ebenfalls, der Client überprüft die Signatur und glaubt danach, dass der AP im Besitz des PTK ist.
  4. Der Client schickt eine Acknowledge Nachricht an den AP, woraufhin ein kontrollierter Port für die nachfolgende Session freigegeben wird.

(Alle hierbei verwendeten Nachrichten sind vom Typ EAPOL Key)

Key Management

Integrity Protection

TKIP with Michael

AES-CCMP

Confidentiality

TKIP with RC4

AES-CCMP

Summary

Glossary

  • AES - Advanced Encryption Standard, Block Cipher used by WPA2
  • AES-CCMP - AES in Counter Mode with Cipher Block Chaining Protocol, Mode used by WPA2
  • AP - Access Point
  • AS - Authentication Server, process or machine responsible for user identifaction
  • PMK - Pairwise Master Key
  • PTK - Pairwise Transient Key
  • RC4 - Stream Cipher, used by WEP and WPA
  • RSN - Robust Security Network, defined in 802.11i
  • STA - mobile Station (Client)
  • TKIP - Tempory Key Integrity Protocol, used by WPA
  • WPA - WiFi Protected Access
  • WPA2 - WPA based on RSN