WPA2 kann geknackt werden 😱

Und zwar nicht eine Implementierung eines Herstellers, sondern der Standard selbst. Aber die gute Nachricht ist: es ist möglich, die Lücke zu schließen und dabei trotzdem kompatibel mit gepatchten als auch ungepatchten Systemen zu bleiben.

WPA2 führt beim Beitritt eines neuen Gerätes einen 4-Wege Handshake durch, bei dem der gemeinsame Encryption Key ausgehandelt wird. Bei der 3. Nachricht des 4-Wege Handshakes teilt der Access Point dem Client den Encryption Key mit und wartet auf die Bestätigung durch den Client. Da diese 3. Nachricht ja auch mal durch Paketverlust oder ähnliches verloren gehen kann, ist es möglich, diese erneut zu senden. Und genau das ist die Schwachstelle: der Angreifer kann dieses Paket mitlauschen und es dann immer und immer wieder an den Client schicken. Jedes mal, wenn dieser das Paket erhält, setzt er seine inkrementellen transmit/receive Packet Counter zurück und verhält sich so, als ob er gerade dem Netzwerk neu beigetreten ist. Durch diese ständigen Widerholungen kann der Angreifer das “Opfer” gezielt immer die gleichen Pakete verschicken lassen und diese dann relativ einfach knacken.

Besonders betroffen sind Linux und Android Systeme (besser gesagt wpa_supplicant in der Version 2.4), da ihnen durch einen Trick zusätzlich noch ein Schlüssel, der nur aus Nullen besteht, untergeschoben werden kann. Ab diesem Moment kann der komplette Netzwerkverkehr des entsprechenden Gerätes mitgelesen werden.

Die kompletten Details findet ihr hier: krackattacks.com

[Quicktip] Sicheres surfen über ssh unter OSX

Stellt euch folgende Situation vor: ihr sitzt in einem Caffé und möchtet gern das dort vorhandene, offene Wlan nutzen. Das ist natürlich sicherheitstechnisch nicht gerade optimal, da eure Kommunikation so von jedem Script-Kiddie abgehört werden kann.

Sofern ihr einen Server irgendwo im Internet habt, auf dem ihr euch per SSH einloggen könnt, gibt es einen sehr leichten Weg, eure Verbindung abzusichern:

Im Terminal

ssh -ND 9999 benutzername@server.de

eingeben (an Stelle von 9999 könnt ihr natürlich auch einen anderen freien Port verwenden). Sofern ihr auf dem Server bereits euren public ssh Key hinterlegt habt, dann könnt ihr das Terminal nun minimieren (nicht schließen!). Wenn nicht, werdet ihr nach eurem Passwort gefragt. Eintippen, Enter drücken und nun das Fenster minimieren.

Nun habt ihr einen laufenden Socks Proxy. Richtet entweder direkt im Browser oder in den Netzwerkeinstellungen den Proxy

Server: localhost
Proxy: 9999 (bzw. den von euch gewählten Port)

ein. Ab sofort surft ihr nun über einen sicheren Kanal zu eurem Server und erst dann ins Netz.