Sicherheit bei WLANs
Transcription
Sicherheit bei WLANs
Sicherheit bei WLANs Ausarbeitung von Sebastian Zaccheddu im Rahmen des Seminars „Rechnernetze“ im Wintersemester 2001 / 2002 Inhalt 1. Einleitung 2. Der IEEE 802.11 Standard 3. Sicherheitskonzepte im IEEE 802.11 Standard 3.1 Authentifizierung 3.1.1 Open System Authentication 3.1.2 Shared Key Authentication 3.2 Verschlüsselung mit WEP 4. Angriffe auf Wireless LANs 4.1 Angriff auf den Authorisierungsmechanismus 4.2 Angriff auf die Vertraulichkeit der Daten 4.3 Angriff auf die Unversehrtheit der Daten 5. Verbesserungsvorschläge für die Sicherheit bei WLANs 5.1 Einsatz eines temporären per-packet-keys 5.2 Message Integrity Check (MIC) 6. Zusammenfassung 7. Abkürzungen 8. Quellen 1. Einleitung Der Bereich der mobilen Kommunikation hat in den letzten Jahren eine Menge an Einfluß gewonnen. So kommt es dazu, daß in vielen Firmen- und Privatnetzen mehr und mehr die drahtgebundene Übertragung durch drahtlose Übertragung ersetzt wird bzw. eine Verbindung von beiden Übertragungsarten eingesetzt wird. Die Vorteile liegen klar auf der Hand. Zum einen entfällt die teilweise teure, komplizierte Vernetzung mit Kabeln und zum anderen ist der Anwender nicht mehr an einen festen Arbeitsplatz gebunden. Er ist somit in der Lage, in einem wesentlich größerem Umfeld direkt auf seine Daten zuzugreifen und sie zu bearbeiten. So können mobile Geräte wie Laptops oder PDAs mit entsprechender Hardware z.B. in Krankenhäusern genutzt werden, um jederzeit und an jedem Ort Patientendaten abzufragen oder zu bearbeiten. Die Grundlage für die drahtlose Vernetzung bildet dabei der IEEE 802.11 Standard. Er wird im nächsten Abschnitt kurz vorgestellt. Den Schwerpunkt dieser Arbeit bilden die Abschnitte 3 und 4, die sich mit den Sicherheitsmechanismen von Wireless LANs beschäftigen. Im dritten Kapitel werden die verschiedenen Mechanismen vorgestellt und im darauf folgendem Abschnitt wird gezeigt, daß sie keinen besonderen Schutz vor Angriffen bieten. Zuletzt werde ich dann auf die Verbesserungsvorschläge der IEEE 802.11Taskgroup I bezüglich der Sicherheit von WLANs eingehen. 2. Der IEEE 802.11 Standard Im IEEE 802.11 Standard werden verschiedene Komponenten und deren Zusammenhänge spezifiziert. Die durch die Komponenten und deren Zusammenhänge definierte Architektur wird als Wireless LAN (WLAN) bezeichnet. Ein einfaches WLAN besteht aus mindestens 2 Kommunikationspartner, den sogenannten Stationen (STA) . Diese können, unter Verwendung einer speziellen Hardware, direkt über elektromagnetische Wellen miteinander kommunizieren. Der Bereich, indem die Stationen kommunizieren können, ist jedoch beschränkt durch die maximale Reichweite der Funkwellen. Die Reichweite der Funkwellen beträgt je nach eingesetztem System zwischen 20 Metern innerhalb von Gebäuden und bis zu 300 Metern im Freien. Der Bereich, indem Kommunikation stattfinden kann, wird als Basic Service Set (BSS) bezeichnet. BSS STA1 STA2 Abbildung 1: Ein BSS mit 2 Stationen Ein solches Netz, in dem die Stationen ohne weitere Hilfsmittel direkt miteinander kommunizieren können, wird als Ad-Hoc-Netzwerk bezeichnet. Ad-Hoc-Netzwerke haben allerdings nur eine stark begrenzte Reichweite haben. Um die Reichweite zu erhöhen fügt man eine weitere Komponente in das BSS ein, den sogenannten Access Point (AP). Dieser ist eine nicht mobile Station, der als Vermittler zwischen den einzelnen Stationen in einem BSS dient. Pro BSS kann es nur einen Access Point geben. Jede Station, die mit einer anderen Station kommunizieren will, muß sich entweder bei dem AP oder im Fall eines Ad-Hoc-Netzwerkes bei der anderen Stationen authentifizieren. Wenn ein AP zum Einsatz kommt, läuft die gesamte Datenübertragung im BSS über ihn, d.h. er leitet die Daten von einer Station an eine andere Station weiter. Der Einsatz eines Access Points erlaubt größere Entfernungen zwischen den Stationen. Bevor jedoch eine Station zum ersten mal senden darf, muß sie sich mit dem im BSS befindlichen AP assoziieren. Diese Information wird von einer weiteren Komponente, dem Distribution System ( auf welches später eingegangen wird ) verwaltet. Die Assoziierung dient zur Auffindung von Stationen in einem WLAN. BSS STA1 AP STA2 Abbildung 2 : Ein BSS erweitert um einen Access Point (AP) Ferner gibt es noch sogenannte Extension Points (EP), die als eine Art Repeater zwischen Stationen und AP gesetzt werden und somit nochmal die Reichweite erhöhen. BSS STA1 AP STA2 EP STA3 Abbildung 3 : Ein BSS mit einem Access Point und einem Extension Point (EP) Wenn man mehrere BSSse hat, möchte man, daß auch die Stationen aus einem BSS mit den Stationen eines anderen BSS kommunizieren können. Dafür benötigt man ein Verbindungsglied zwischen den verschiedenen BSSsen. Diese Komponente, die mehrere BSSse miteinander verbindet, wird als Distribution System (DS) bezeichnet. Die Realisierung eines DS ist im Standard offen gelassen, jedoch wird in der Praxis oft ein Ethernet eingesetzt. Falls es sich bei dem DS um ein LAN handelt, muß man noch eine Komponente, ein sogenanntes Portal, zum LAN hinzufügen. Dieses Portal bildet die Schnittstelle zwischen BSS und DS. Bei einem Datenaustausch zwischen Stationen in verschiedenen BSSsen nimmt eine Station Kontakt zu ihrem AP auf, welcher sich wiederum an sein Portal wendet. Von dort aus werden dann die Daten durch das DS an ein anderes Portal geleitet. Dieses Zielportal gibt die Daten an den verbundenen Access Point in dem ZielBSS weiter, welcher seinerseits Kontakt mit der Zielstation aufnimmt. BSS AP Distribution System AP BSS Abbildung 4 : Distribution Sytem, welches 2 BSS verbindet Die Gesamtheit aus DS und den daran gebundenen BSSsen wird als Extended Service Set (ESS) bezeichnet. Nachdem man nun den Ablauf der Kommunikation in einem WLAN kennt, wird jetzt noch kurz die Einbettung des IEEE 802.11 Standards in das OSI-Schichtenmodell erläutert. Der IEEE 802.11 Standard spezifiziert für WLAN die beiden untersten Schichten des OSIModells , da dort die physikalischen Veränderungen zu einem „normalen“ LAN wie z.B. einem Ethernet liegen. Die beiden Ebenen, die Physical Layer (PHY) und die Media Access Control Layer (MAC) bei IEEE 802.11 müssen sich den oberen Ebenen gegenüber wie ein normales LAN verhalten. Auf den unteren Ebene, der physikalischen Ebene, muß die Realisierung der physikalischen Übertragung geregelt werden, während auf der MAC-Ebene z.B. Management der Mobilität durchgeführt wird. Zum Abschluß der Einführung in WLANs wird im folgenden ein Blick auf die bei IEEE 802.11 verwendeten Frames geworfen. Der Aufbau eines solchen Frames besteht im wesentlichen aus drei Teilen : 1. Frame Header mit 34 Bytes 2. Frame Body mit einer Länge zwischen 0 bis 2312 Bytes 3. Frame Check Sequence (FCS) mit 4 Bytes Frame Control Duration Addr1 Addr2 Addr3 Sequence Control Frame Header Addr4 Data FCS Frame Body FCS Abbildung 5 : IEEE 802.11 Frame Format Im Feld „Frame Control“ stehen relevante Informationen über die benutzte Protokollversion sowie Art des Frames. Zu den verschiedenen Arten von Frames zählen z.B. Association oder Authentication Frames, auf die im späteren Verlauf eingegangen wird. Ferner ist noch die Option „WEP“ im Frame Control Feld wichtig, da damit bestimmt wird, ob die gesendeten Daten mit dem WEP-Verfahren verschlüsselt werden sollen oder nicht. Für die Address-Felder 1,2,3 und 4 werden, je nach Bitbelegungen im Feld „Frame Control“, verschiedene Bedeutungen zugewiesen. Mögliche Bedeutungen für die Address-Felder sind : 1. 2. 3. 4. Destination Address : Adresse des endgültigen Empfängers Source Address : Adresse des ursprünglichen Senders Receiver Address : Adresse des nächsten Empfängers Transmitter Address : Adresse desjenigen, der den Frame auf das Wireless Medium geschickt hat Ferner gibt das Feld „Duration“ an, wie lange eine Übertragung dauern darf und in „Sequence Control“ stehen Informationen über Fragmentnummer und Sequenznummer einer SDU. 3. Sicherheitskonzepte im IEEE 802.11 Standard Wie im vorherigen Abschnitt kurz erwähnt beträgt die Funkreichweite drahtloser Netzwerke bis zu 300 Metern. Daher bleiben die versendeten Daten nicht nur im Gebäude des Nutzers, sondern sind auch noch im Umfeld des Gebäudes empfangbar. Da nun nicht jeder mit einem mobilen Gerät und einem WLAN-Adapter in der Lage sein soll, die private Kommunikation außerhalb des Gebäudes abzuhören und zu verstehen, wurden im 802.11 Standard einige Sicherheitskonzepte vorgeschlagen. Bei den Konzepten handelt es sich um ein Authentifizierungsverfahren und um eine Verschlüsselung der gesendeten Daten. Diese beiden Mechanismen werden im folgenden vorgestellt. 3.1 Authentifizierung Wenn ein Client auf das Netzwerk zugreifen will, muß er sich vorher im Netz bei einem Access Point authentifizieren. Dafür bietet 802.11 zwei Möglichkeiten : 3.1.1 Open System Authentication Die Open System Authentication ist die einfachste Möglichkeit sich bei einem Netzwerk anzumelden. Sie umfaßt zwei Schritte. Im ersten Schritt erbittet eine Station beim Access Point ( oder auch bei einer anderen Station ) um Authentifizierung und im zweiten Schritt übermittelt der Responder das Ergebnis der Nachfrage. Die Nachfrage wird nur dann negativ beantwortet, wenn die um Authentifizierung bittende Station im Vorfeld explizit für den Zugriff auf ein WLAN gesperrt worden ist. Daher bietet die Open System Authentication keine echte Abwehr gegen unberechtigte Eindringlinge. Requester Responder Authentifizierungs-Request Authentifizierungs-Ergebnis Abbildung 6 : Ablauf der Open System Authentication 3.1.2 Shared Key Authentication Bei der Shared Key Authentication werden nur solche Stationen akzeptiert, die einen gemeinsamen geheimen Schlüssel kennen. Der geheime Schlüssel wird niemals übertragen, so daß er bei allen teilnehmenden Stationen und Access Points vorher von Hand eingetragen werden muß. Die Authentifizierung findet in 4 Schritten statt. 1. Eine Station erbittet um Authentifizierung. 2. Der AP antwortet auf die Nachfrage mit einer „128 Bit Challenge“. 3. Die Station antwortet mit der sogenannten „Response“, welche aufgrund der erhaltenen Challenge errechnet wurde. 4. Der AP überprüft die Antwort auf Korrektheit und je nach Ergebnis wird die Station authentifiziert oder nicht. Responder Requester Authentifizierungs-Request Authentifizierungs-Challenge Authentifizierungs-Response Authentifizierungs-Ergebnis Abbildung 7 : Ablauf der Shared Key Authentication Die im dritten Schritt errechnete Response wurde mit dem gemeinsamen, geheimen Schlüssel, dem WEP-Schlüssel, chiffriert. Wie dies im einzelnen funktioniert, folgt im nächsten Abschnitt, welcher die WEP-Verschlüsselung vorstellt. 3.2 Verschlüsselung mit WEP Um abgehörte Daten für einen Angreifer unbrauchbar zu machen, definiert der 802.11 Standard ein Verfahren zur Verschlüsselung des Nachrichtenverkehrs. Dieses Verfahren wird als „Wired Equivalent Privacy“ (WEP) bezeichnet und soll nahezu die gleiche Sicherheit bei drahtloser Kommunikation bieten, wie sie bei verkabelten Netzen besteht. Der Einsatz von WEP ist optional, d.h. in einem Frame wird mittels eines Bits gesagt, ob WEP eingesetzt wird oder nicht. Die Voraussetzung für den Einsatz von WEP ist ein geheimer Schlüssel, den jede Station und jeder AP im WLAN kennen muß. Mit diesem Schlüssel und noch weiteren Komponenten werden die zu versendenden Daten verschlüsselt. Die Länge des WEPSchlüssels beträgt zwischen 40 und 104 Bit, je nach Art der Implementierung. Weiterhin besteht die Möglichkeit zwischen 2 Schlüsselmodi. Zum einen kann man durchgehend nur einen einzigen WEP-Key, den sogenannten „Default-Key“, nutzen. Alternativ kann man auch eine Liste mit 4 WEP-Keys nutzen, wobei dann für jede Verschlüsselung ein anderer, mittels eines nicht genau spezifizierten Algorithmus ausgewählter WEP-Key, benutzt wird. Oft wird jedoch nur der Default-Key eingesetzt, um den Aufwand beim Schlüsselmanagement möglichst gering zu halten.Der genaue Ablauf der Verschlüsselung mittels WEP wird nun vorgestellt. Ablauf der Verschlüsselung mit WEP 1. Zu Beginn wird für die Nachricht m eine Checksumme nach dem CRC-32 Verfahren berechnet, der sogenannte „Integrity Check Value“ (ICV). Die Nachricht konkateniert mit der Checksumme bildet den Plaintext. 2. Im zweiten Schritt wird aus dem WEP-Schlüssel k und einem beliebig gewählten Initialisierungvektor v (IV), bestehend aus 24 Bit, mit Hilfe des RC4-Algorithmus ein Schlüsselstrom erzeugt ( RC4 ist ein Schlüsselstromerzeuger ). 3. Im letzten Schritt werden der Plaintext und der Schlüsselstrom mit einer XOROperation verknüpft. Dabei erhält man den Ciphertext. Die zu sendenden Daten bestehen dann aus dem IV v konkateniert mit dem Ciphertext. Plaintext Klartextnachricht XOR Schlüsselstrom = RC4 (v,k) = v Chiffretext Zu übertragenden Daten Abbildung 8 : Verschlüsselung mit WEP ICV Um eine erhaltene verschlüsselte Nachricht zu entschlüsseln, muß der Empfänger den Verschlüsselungsvorgang umdrehen, d.h. zuerst berechnet er aus dem übertragenen IV und dem geheimen Schlüssel k mit Hilfe des RC4-Algorithmus den Schlüsselstrom. Diesen verknüpft er mit einer XOR-Operation mit dem Ciphertext und erhält den Plaintext. Zur Verifikation der Nachrichtenunversehrtheit berechnet der Empfänger für die entschlüsselte Nachricht die Checksumme und überprüft diese mit der übertragenen Checksumme. Wenn diese beiden Werte übereinstimmen, akzeptiert der Empfänger die Nachricht, anderfalls wird sie verworfen. 4. Angriffe auf WLANs Die im 3. Abschnitt vorgestellten Sicherheitsmechanismen sollen für folgendes in einer WLAN-Kommunikation sorgen : 1. Zugriff nur für authorisierte Stationen 2. Vertraulichkeit der Daten durch Verschlüsselung 3. Unversehrheit der Daten durch Prüfsumme Leider ist keiner der 3 Punkte in konkreten Implementierungen erreicht worden. Im folgenden wird gezeigt, welche Schwachstellen die einzelnen Sicherheitsmechanismen haben. 4.1 Angriff auf den Authorisierungsmechanismus Wie vorher schon gezeigt, beruht die Authentifizierung mittels des Shared Key Mechanismus auf einem Challenge-Response Verfahren. Im 2.Schritt der Authentifizierung schickt der Responder dem Requester eine zufällige, unverschlüsselte 128 Bit Zeichenkette. Der Requester verschlüsselt diese mit seinem Wissen über den secret key k. Zur Verschlüsselung wählt er sich selber einen IV aus. Wenn ein Angreifer eine solche Authentifizierung abhört, erhält er die Challenge in unverschlüsselter Form sowie in verschlüsselter Form als Response inklusive des verwendeten IV. Requester Responder Authentifizierungs-Request Authentifizierungs-Challenge Authentifizierungs-Response Authentifizierungs-Ergebnis Angreifer Abbildung 9 : Abhören einer Shared Key Authentication Mit dem abgehörten Wissen kann der Angreifer zwar nicht auf den verwendeten Schlüssel k schließen, jedoch kann er durch eine einfache Rechenoperation den Schlüsselstrom errechnen, welcher, unter Verwendung des abgehörten IV, erzeugt worden ist. 128 Bit Challenge unverschlüsselt C R v 128 Bit Response verschlüsselt Im 2. Schritt abgehört Im 3. Schritt abgehört Berechnung des Schlüsselstroms : C P R\v = Schlüsselstrom für speziellen IV v Abbildung 10 : Berechnung eines Schlüsselstroms anhand abgehörter Daten Um sich selber erfolgreich zu authentifizieren muß er nur folgende Schritte durchführen : 1. Bei einem Responder um Authentifizierung bitten. 2. Die vom Responder erhaltene Challenge wird mit dem zuvor berechneten Schlüsselstrom XOR verknüpft. An den Kopf der berechneten Response wird der abgehörte IV gestellt. 3. Senden der erzeugten Response an den Responder. 4. Station wird authentifiziert. Wie man sieht, ist nur sehr wenig Aufwand nötig, um sich erfolgreich als Angreifer authentifizieren zu lassen. Mit den abgefangenen Daten einer einzigen korrekten Authentifizierung ist ein Angreifer in der Lage, sich beliebig oft zu authentifizieren. Allerdings kann man jetzt noch nicht aktiv an der Kommunikation teilnehmen, da bei der normalen verschlüsselten Kommunikation immer ein anderer IV vom Partner angegeben wird. Wie man diese Herausforderung lößt wird im folgenden gezeigt. 4.2 Angriff auf die Vertraulichkeit der Daten Wie vorher erwähnt, werden die Daten mit einer Stromchiffre verschlüsselt. Man kann zeigen, daß eine solche Verschlüsselung unknackbar ist. Allerdings muß man beim Einsatz von Stromchiffren eine wichtige Sache beachten. Wenn man zwei verschlüsselte Texte hat, die beide mit dem selben Schlüsselstrom erzeugt worden sind, ist es trivial an den verwendeten Schlüsselstrom zu gelangen. Daher ist es unabdingbar, daß niemals ein Schlüsselstrom mehrfach benutzt wird. Beispiel : Seien P1 und P2 zwei Plaintexte, die mit dem selben Schlüsselstrom, erzeugt durch den RC4 Algorithmus mit selben Schlüssel k und IV v, verschlüsselt werden, d.h. C1 = P1 ⊕ RC4(v,k) sowie C2 = P2 ⊕ RC4(v,k) Es gilt : C1 ⊕ C2 = P1 ⊕ P2 ⊕ RC4(v,k) ⊕ RC4(v,k) = P1 ⊕ P 2 Das heißt, daß wenn man 2 Chiffretexte hat, die mit dem selben Schlüsselstrom erzeugt worden sind, erhält man durch XOR-en der beiden als Ergebnis die beiden Plaintexte XOR verknüpft. Natürlich kann man nun noch nicht mit hundertprozentiger Sicherheit sagen, wie die Plaintexte aussehen, jedoch gibt es einige Möglichkeiten, sie zu bestimmen. So gibt es z.B. die Möglichkeit verschiedene Texte XOR zu verknüpfen und dann nach Übereinstimmungen mit C1 ⊕ C2 zu suchen. Eine wesentlich einfachere Methode ist das gezielte Einschleusen von Daten in ein WLAN. So kann ein Angreifer eine von ihm verfaßte Email an einen WLAN Teilnehmer schicken und dann einfach die Übertragung seiner eingeschleusten Daten abhören. Somit kennt er einen Plaintext und kann somit auf den Schlüsselstrom schließen. Damit es immer wechselnde Schlüsselströme gibt hat man im 802.11 Standard den IV eingeführt. Sobald er sich ändert, ändert sich auch der Schlüsselstrom. Wichtig für die Sicherheit ist somit ein Wechseln des IVs nach jedem gesendeten Frame. Ob und wie oft der IV gewechselt wird, läßt der Standard völlig offen. Die meisten Hersteller setzten den IV zu Beginn auf 0 und erhöhen ihn nach jedem Frame um den Wert 1. Wenn allerdings der WLAN-Adapter neu initialisiert wird ( z.B. beim Herausnehmen und Wiedereinführen in den Laptop ) wird der Wert des IV automatisch auf 0 gesetzt. Somit kommt es zu einer Häufung von niedrigen IV-Werten und somit zu häufigeren Übereinstimmungen des Schlüsselstroms. Alternativ wiederholen sich die IV-Werte bei einer durchschnittlichen Bandbreite von 5 Mbps nach ungefähr einem halben Tag ( da der IV nur 24 Bit umfaßt und somit der mögliche Wertebereich recht gering ist ). Daher ist ein Angreifer in der Lage, wenn er genug Zeit investiert, eine Tabelle mit IV- und Schlüsselstromwerten aufzustellen und dann immer mehr Daten zu entschlüsseln. 4.3 Angriff auf die Unversehrheit der Daten Das WEP-Verfahren benutzt ein Checksummenfeld, welches Gewähr leisten soll, daß die Daten nicht unbemerkt modifiziert werden können. Die verwendete Checksumme wird als eine CRC-32 Checksumme implementiert. Jedoch gibt es bei der Verwendung von CRC-32 als Absicherung gegen Modifikationen einen großen Nachteil. Die bei CRC-32 verwendete Funktion ist linear, d.h. Checksumme (Text1 ⊕ Text2) = Checksumme (Text1) ⊕ Checksumme (Text2) Aufgrund dieser Eigenschaft und aufgrund der Tatsache, das RC4 auch linear ist, ist ein Angreifer befähigt, die versendeten Frames zu manipulieren, auch wenn die Checksumme zusammen mit der Nachricht verschlüsselt wurde. Beispiel : Sei M die Klartextnachricht und c(M) die Checksumme der Nachricht. Ferner sei ∆ die gewünschte Änderung an der Nachricht (∆ ist eine Bitzeichenkette wie M). Der Ciphertext C ergibt sich aus : C = RC4 (v,k) ⊕ <M,c(M)> Durch eine XOR-Verknüpfung mit <∆,c(∆)> auf beiden Seiten der Gleichung ergibt sich : C ⊕ <∆,c(∆)> = RC4 (v,k) ⊕ <M,c(M)> ⊕ <∆,c(∆)> ⇔ C’ = RC4 (v,k) ⊕ <M ⊕ ∆,c(M) ⊕ c(∆)> ⇔ C’ = RC4 (v,k) ⊕ <M’,c(M ⊕ ∆)> ⇔ C’ = RC4 (v,k) ⊕ <M’,c(M’)> Hier stellt C’ den modifizierten Ciphertext und M’ die modifizierte Nachricht dar. Bei dieser Art des Angriffs kann man den Eindruck haben, das man nur blind irgendwelche Nachrichten verändert. Interessant wird dieses Verfahren jedoch, wenn man gezielt IP-Adressen in dem Ciphertext ändert. Oft kommunizieren die Stationen mit einem Rechner, welcher mit dem Internet verbunden ist. Um ihn zu adressieren benötigt man eine IP-Adresse. Wenn es dem Angreifer gelingt, die Adresse gezielt zu verändern, kann er die Pakete zu sich schicken lassen. Die bei ihm ankommenden Pakete liegen bei ihm unverschlüsselt vor, da sie das WLAN verlassen haben. Anhand dieser unverschlüsselten Pakete kann der Angreifer ganz leicht auf ein neues IV-Schlüsselstrom-Paar schließen. Diesen Angriff bezeichnet man mit „IP-Redirection“ und er läßt sich in der Praxis auch häufig durchführen, da das Format der Datenpakete festlegt, an welcher Stelle die IP-Adresse des Empfängers steht. 5. Verbesserungsvorschläge für die Sicherheit bei WLANs Aufgrund der in der letzten Zeit sich häufenden Sicherheitsprobleme bei WLANs hat sich die Taskgroup I der IEEE 802.11 damit befaßt, diese Probleme zu beseitigen. Oberstes Ziel ist eine Verbesserung der Sicherheit durch einfach zu realisierende Erweiterungen des bestehenden Standards. Es sollen keine grundsätzlichen Änderungen an der Hardware durchgeführt werden müssen, sondern mögliche Änderungen sollen sich nur auf die Software, welche bei der Arbeit mit WLANs eingesetzt wird, beschränken. Einige Vorschläge der Taskgroup I werden nun kurz vorgestellt. 5.1 Einsatz eines temporären per-packet-keys Die große Herausforderung beim Einsatz von WEP ist die Vermeidung der Wiederverwendung von IV-Werten, da diese zu einer Wiederverwendung von Schlüsselströmen führt und somit eine Attacke möglich ist ( siehe Abschnitt 4.2 ). An genau diesem Punkt setzt der hier beschriebene Vorschlag an. Die Idee ist es, für jedes Datenpaket einen einzigartigen Schlüsselstrom zu benutzen, welcher sich im Laufe der Zeit nicht wiederholt. Um dies zu garantieren, müssen folgende Vereinbarungen in einem WLAN getroffen werden : 1. Alle an der Kommunikation teilnehmenden Komponenten müssen, wie auch schon im Standard vorgeschlagen, einen gemeinsamen secret key haben. Dieser Schlüssel wird im weiteren als „Temporal Key“ (TK) bezeichnet. 2. Zur Ver- und Entschlüsselung wird weiterhin der RC-4 Algorithmus eingesetzt. 3. Jeder Kommunikationsteilnehmer hat dafür zu sorgen, daß niemals ein IV-Wert mehrfach mit einem TK verwendet wird. 4. Sobald der Wertebereich des IVs aufgebraucht ist, müssen alle Kommunikationsteilnehmer einen neuen TK bekommen. Die eigentliche Verbesserung der Sicherheit geschieht durch eine neue Art der Schlüsselstromerzeugung. Die neue Methode ist in 2 Phasen unterteilt : 1. Phase : Mischen des TK mit der Senderadresse 2. Phase : Mischen der Ausgabe der 1. Phase mit einem IV. Man erhält den per-packt-key. Eine weitere Erhöhung der Sicherheit wird durch den Einsatz von S-Boxen erreicht ( S-Boxen bilden einen 16 Bit Wert auf einen anderen ab ). Temporal Key Transmitter Address Phase 1 Mixer IV S-BOX Phase 2 Mixer S-BOX Per-packet-Key Abbildung 12 : Berechnung eines per-packet-keys 5.2 Message Integrity Check (MIC) Nachdem im vorherigen Abschnitt gezeigt wurde, wie man die Verschlüsselung der Daten sicherer machen kann ohne das man drastisch in bisher entwickelte Produkte eingreifen muß, soll nun eine Möglichkeit zur Absicherung der Datenunversehrheit vorgestellt werden. Die Grundidee, mit der man eine Manipulation an den Daten verhindern will, ist die Erzeugung einer weiteren Checksumme. Diese neue Checksumme wird als „Message Integrity Check“ (MIC) bezeichnet und umfaßt 32 Bits. In ihre Berechnung werden die Destination Address (DA) und die Source Address (SA) der Daten, sowie der unverschlüsselte Datenteil und ein MIC-Key einbezogen. Wie dies im einzelnen funktioniert, d.h. welcher Algorithmus zur Berechnung der MIC eingesetzt wird und wie der MIC-Key aufgebaut und verwaltet wird, ist zu Zeit noch offen ( da es sich bei dem MIC-Verfahren nur um einen Vorschlag für eine prinzipielle Verbesserung handelt ). Wie der Ablauf der Erzeugung der MIC und der Einbettung der MIC in einen Frame aussieht, wird in folgender Darstellung erläutert. DA SA MIC Algorithmus MIC-Key DA SA SDU vom LLC-Layer DATA DATA Frame Control Duration Addr. 1 ... IV MIC DATA+MIC FCS PDU auf MAC-Layer Abbildung 11 : Berechnung und Einbettung der MIC Wenn also ein Angreifer den ICV und den Datenteil eines Frames verändert, so ist der Empfänger im ersten Moment noch nicht in der Lage, die Manipulation zu erkennen. Auf der Empfängerseite wird geprüft, ob der übertragene Datenteil mit der übertragenen ICV übereinstimmt. Bei der Manipulation, wie sie in 4.3 gezeigt wird, wird der Empfänger den Frame als gültig ansehen und, nach Entfernung von Headerinformationen, die verbleibenden Daten zu Weiterverarbeitung weitergeben. Bei der darauf folgenden Weiterverarbeitung setzt das MIC-Verfahren zur Manipulationserkennung ein. Für den nun in veränderter Form vorliegenden Frame wird die MIC berechnet. Falls die errechnete MIC mit der übertragenen MIC im Datenteil übereinstimmt, gab es keine Manipulation an den Daten und die Daten werden an die nächsthöhere Schicht weitergeleitet. Im Falle einer Abweichung werden die Daten einfach verworfen und es können eventuell Gegenschritte zur Abwehr des Angreifers eingeleitet werden. 6. Zusammenfassung Die ansteigende Nachfrage nach Lösungen für mobile Kommunikation hat in den letzten Jahren für die Entwicklung von mehreren Standards für drahtlose Kommunikation gesorgt. In dieser Arbeit wurde nur der IEEE 802.11 Standard für WLANs betrachtet. Durch den Wechsel von drahtgebundener zu drahtloser Kommunikation gab es mehrere Aspekte, gerade im Bezug auf die Sicherheit der Kommunikation, zu beachten. So gibt es um IEEE 802.11 Standard direkt 3 Sicherheitsmechanismen die für, mit verkabelten Netzen vergleichbare, Sciherheit sorgen sollen ( Authentifizierung, Verschlüsselung und Unversehrtheti der Daten durch eine Prüfsumme ). Allerdings sorgt keiner der vorgeschlagenen Konzepte für eine sichere Kommunikation. Daher werden im Moment bei der IEEE 802.11 Task Group I Verbesserungen für die Implementierungen des Standards ausgearbeitet. Dabei haben alle Verbesserungsvorschläge gemein, daß sie den Standard nur geringfügig erweitern sollen und keine radikalen Änderungen an schon entwickelter Hardware einbeziehen sollen. 7. Abkürzungen AP = BSS = CRC = DA = DS = EP = ESS = FCS = ICV = IV = MIC = RC4 = RA = SA = STA = TA = TK = WEP = WLAN = Access Point Basic Service Set Cyclic Redundancy Check Code Destination Address Distribution System Extension Point Extended Service Set Frame Check Sequence Integrity Check Value Initialisierungs-Vektor Message Integrity Check Ron´s Code 4 Receiver Address Source Address Station Transmitter Address Temporal Key Wired Equivalent Privacy Wireless Local Area Network 8. Quellen [1] IEEE 802.11 Standard [2] N. Borisov, I. Goldberg, D. Wagner : “Intercepting Mobile Communications : The Insecurity of 802.11”; http://www.isaac.cs.berkeley.edu/isaac/mobicom.pdf; Juli 2001 [3] Papers zur Sicherheit bei WLANs der IEEE 802.11 Task Group I; http://grouper.ieee.org/groups/802/11/; November 2001 [4] Patrick Peschlow;Seminararbeit “Wireless LAN”, WS 00/01;