WLAN und LAN sichern mit IEEE 802.1X und Radius

Seite 3: AAA-Modell

Inhaltsverzeichnis

EAP selbst ist ein medienunabhängiges Protokoll, es kann über beliebige Trägerprotokolle laufen. 802.1X definiert für Verwendung in verkabelten Netzwerken EAPOL (EAP over LAN), das die EAP-Pakete kapselt. Neben der Art des verwendeten Netzwerks, beispielsweise Ethernet oder Token Ring, können EAPOL-Pakete Informationen bezüglich dynamischer Sitzungsschlüssel, Initialisierungs-Vektoren für den bei WEP verwendeten RC4-Algorithmus und einen Replay Counter transportieren. Der Replay Counter verhindert durch schlichtes Hochzählen Replay-Attacken, also das Wiedereinspeisen mitgeschnittener Übertragungen. Konkrete Vorgaben zur Erzeugung und Verteilung von Schlüsseln macht EAPOL nicht, es empfiehlt lediglich, Schlüssel zu verwenden, die während der EAP-Authentifizierung generiert werden.

Obwohl Radius (Remote Access Dialin User Service) zeitlich vor dem AAA-Modell ("Triple-A") entwickelt wurde, ist es das erste AAA-basierte Protokoll. Bei AAA handelt es sich um Konzepte, die von der Authentication, Authorization and Accounting Working Group der IETF entwickelt wurden. Früchte dieser Arbeit sind mehrere allgemeine und spezielle RFCs zum Thema, beispielsweise der RFC 2904 (AAA Authorization Framework).

Die Aufgaben von AAA sind die Authentifizierung von Nutzern, die Autorisierung zur Nutzung bestimmter Dienste und das Accounting, also die Messung und Dokumention der Nutzung. Die üblichen Komponenten eines AAA-Systems sind:

  • ein Nutzer (Client), der Dienste in Anspruch nehmen möchte,
  • ein Network Access Server (NAS), der spezielle Dienste oder den Zugang zum Netz anbietet, etwa in Form eines Access Points und
  • ein AAA-Server, der Informationen über die Berechtigung zur Nutzung der vom NAS bereitgestellten Dienste vorhält.

Als letzte Komponente tritt Radius auf den Plan. Obwohl 802.1X die Verwendung eines Radius-Servers als Authentication Server nicht explizit vorschreibt, äußert der Anhang D der Spezifikation die Vermutung, dass die meisten Authenticatoren als Radius-Clients agieren – und so ist es in der Praxis auch.

Das Radius-Protokoll und seine Funktionsweise definiert der RFC 2865. Radius-Nachrichten werden auf IP-Ebene in UDP-Pakete gekapselt, die relevanten Informationen stecken in Attribute Value Pairs (AVP). Die wichtigsten Pakettypen sind Access-Request, Access-Accept und Access-Reject, sie heißen wie ihre Funktion.

Die Authentifizierung des Radius-Clients gegenüber dem Server geschieht mit einem MD5-Hashwert. Diesen errechnet der NAS aus dem Paketinhalt, einer vom Radius-Server vorgegebenen Zufallszahl und einem Shared Secret. Nutzer- und Autorisierungsinformationen kann der Radius-Server in nahezu beliebigen Formaten speichern, Textdateien, SQL-Datenbanken oder LDAP-Verzeichnissen. Dabei ermöglicht Radius die Implementierung und Verwendung beliebiger Authentifizierungsmechanismen. Der RFC geht zwar nur auf die Verwendung von PAP oder CHAP ein, aber genauso gut kann man die oben besprochenen EAP-Varianten einsetzen.

Mehr Infos

Sichere Passwörter

Nehmen Sie für das Passwort keinesfalls Eigennamen oder Begriffe, die Sie in Wörterbüchern finden; auch Zusammensetzungen sind tabu. Zwar stehen simple Zeichenfolgen wie "abcd1234" in keinem gängigen Lexikon, aber durchaus in Wortlisten der Hacker und sind deshalb ebenfalls verboten. Mischen Sie Ihr Passwort aus mindestens 12 alphanumerischen Zeichen wild zusammen. Verzichten Sie dabei auf Sonderzeichen (Umlaute, Satzzeichen, Symbole), denn die werden häufig von Weboberflächen oder Konfigurationstools unterschiedlich interpretiert. Nehmen Sie deshalb vorsorglich nur Klein- (a-z) und Großbuchstaben (A-Z) sowie Ziffern (0-9). Wenn Ihnen Sorgen macht, dass dadurch der Schlüsselraum schrumpft, verlängern Sie Ihr Passwort einfach um vier Zeichen.

In einem 802.1X-System mit EAP-TLS baut ein mobiles Gerät, der Supplicant, eine EAP-TLS-Sitzung auf. Die Kommunikation mit dem Authenticator – dem Access Point beziehungsweise dem NAS im AAA-Modell – findet via EAPOL statt, das die EAP-TLS-Pakete kapselt. Access Point und Radius-Server sprechen via Radius miteinander, die EAP-TLS-Pakete liegen dabei in AVPs. Der Access Point fungiert als Proxy für die gekapselten EAP-TLS-Pakete und als NAS.

Ob und wie dynamische Sitzungsschlüssel zum Einsatz kommen, bestimmt der Radius-Server. Der Access Point stößt via EAPOL das Re-Keying, also Austauschen der Sitzungsschlüssel an. Für den Schlüsselwechsel beim Supplicant ist dessen Betriebssystem zuständig, man kann folglich gewöhnliche WLAN-Hardware verwenden.

Während an einem Ethernet-Hub oder in einem WLAN mit gemeinsamem WEP-Schlüssel alle Teilnehmer den Datenverkehr aller anderen Teilnehmer mitlesen können, ist das bei dynamischen Schlüsseln ausgeschlossen. Jeder Client erhält einen individuellen Schlüssel, der den für ihn gedachten oder von ihm kommenden Datenverkehr schützt.

Da aber kein Netz ohne Broadcasts – Nachrichten an alle – funktioniert, gibt es neben dem privaten Unicast-Schlüssel auch einen Broadcast-Schlüssel. Welcher jeweils zum Einsatz kommt, hängt von der Empfänger-Adresse ab. Broad- und Unicast-Schlüssel werden direkt auf der WLAN-Karte vorgehalten, wobei der WLAN-Standard IEEE 802.11 ein Array für vier Schlüssel vorsieht.

Die hier beschriebenen Verfahren sind natürlich nicht nur im WLAN nutzbar, sie lassen sich problemlos auf kabelgebundene Netze übertragen. Ob eine bestimmte EAP-Konstellation verwendet werden kann, hängt von der 802.1X-Unterstützung des Betriebssystems ab. Windows unterstützt dies ab Windows XP, Mac OS ab Version 10.3 und bei halbwegs aktuellen Linux-Distributionen kümmert sich der Gnome-NetworkManager im Zusammenspiel mit dem wpa_supplicant aus dem hostap-Projekt darum. (ea)