KRAK: niewyobrażalna skala podatnych urządzeń na podsłuchanie komunikacji Wi-Fi przez błędy w protokole WPA

Mathy Vanhoef z firmy imec-DistrNet poruszył swoim odkryciem cały świat. Do tej pory sądziliśmy, że protokół WPA2 dla sieci bezprzewodowych (IEEE 802.11) jest zabezpieczeniem całkowicie wystarczającym. Niestety nie jest.  

KRAK (Key Reinstallation AttaCK) —  dotyczy 11 podatności w protokole WPA2, przy czym niektóre urządzenia mogą zawierać więcej niż jedną lukę, które są reprezentowane przez poniższe identyfikatory CVE. Autor badania udostępnił zidentyfikowane i opisane do tej pory podatności:

  • CVE-2017-13077: Reinstallation of the pairwise encryption key (PTK-TK) in the 4-way handshake.
  • CVE-2017-13078: Reinstallation of the group key (GTK) in the 4-way handshake.
  • CVE-2017-13079: Reinstallation of the integrity group key (IGTK) in the 4-way handshake.
  • CVE-2017-13080: Reinstallation of the group key (GTK) in the group key handshake.
  • CVE-2017-13081: Reinstallation of the integrity group key (IGTK) in the group key handshake.
  • CVE-2017-13082: Accepting a retransmitted Fast BSS Transition (FT) Reassociation Request and reinstalling the pairwise encryption key (PTK-TK) while processing it.
  • CVE-2017-13084: Reinstallation of the STK key in the PeerKey handshake.
  • CVE-2017-13086: Reinstallation of the Tunneled Direct-Link Setup (TDLS) PeerKey (TPK) key in the TDLS handshake.
  • CVE-2017-13087: Reinstallation of the group key (GTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame.
  • CVE-2017-13088: Reinstallation of the integrity group key (IGTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame.

Czym jest KRAK?

KRAK to nazwany zbiór podatności w protokole WPA2, którym zabezpieczamy sieci bezprzewodowe w domu, na terenie firmy lub w miejscach publicznych. KRAK nie dotyczy bezpośrednio konkretnego urządzenia lub systemu operacyjnego, więc naraża użytkowników niemal wszystkich urządzeń podpiętych do globalnej sieci przez Wi-Fi na podsłuchanie komunikacji. Obrywają przede wszystkim: smartfony, komputery, punkty dostępowe (Access Point), urządzenia IoT, telewizory, kamery IP, itd.

Jak zaznacza autor, KRAK jest szczególnie katastrofalny dla Linuksów i Androida w wersji 6 lub nowszej, a to dzięki komponentowi WPA_Supplicant — ten, na skutek wykorzystania jednej z podatności, podczas otrzymywania klucza szyfrującego z trzeciej wiadomości ustalonej w procesie nawiązywania komunikacji (4-key handshake), ponownie odtwarza jeden z komunikatów 4-key handshake resetując tzw. „nonce” (arbitrary number that may only be used once) używany w szyfrowaniu komunikacji. Z założenia „nonce” może być użyty tylko jeden raz, ale atakujący może zmusić router lub access point do wielokrotnego instalowania klucza szyfrującego składającego się z samych zer. Znając zawartość klucza napastnicy mogą wykorzystać tę technikę ataku do przechwytywania zaszyfrowanych wiadomości, w tym: kradzieży poufnych informacji (haseł, numerów kart płatniczych i innych wiadomości). W zależności od konfiguracji sieci możliwe jest również wstrzykiwanie i manipulowanie danymi — napastnik może wstrzykiwać ransomware lub inne złośliwe oprogramowanie do przeglądarki.

Przeprowadzaliśmy podobne doświadczenie wstrzykiwania dodatkowej zawartości do stron internetowych w sieci lokalnej, sprawdzając jak radzą sobie produkty zabezpieczające z wykrywaniem ataków sieciowych.


Tabelka z możliwymi atakami.

Co należy zrobić?

Problemem nie jest implementacja protokołu, lecz jego architektura, co sprawia, że producenci muszą zaktualizować firmware swoich urządzeń, a użytkownicy zainstalować aktualizacje bezpieczeństwa automatycznie, albo ręcznie. Aby skutecznie przeprowadzić atak, napastnik musi znajdować się w zasięgu punktu dostępowego oraz klienta, dlatego zarówno klient (urządzenie użytkownika), jak i punkt dostępowy (access point lub router) muszą zostać zaktualizowane. Z urządzeniami z systemem Android, które nie otrzymują już aktualizacji bezpieczeństwa, może to być naprawdę nie do przeskoczenia. Bardzo pomocna jest lista producentów, którzy udostępnili aktualizację.

Nie da się podsłuchać użytkowników, którzy szyfrują komunikację tunelem VPN (np. OperaVPN lub OpenVPN), ale da się taką komunikację przechwycić. To podobnie jak z atakami MiTM — jeżeli komunikacja nie jest szyfrowana, „widać wszystko” — wysyłanie maili protokołem IMAP, surfowanie po stronach z „kłódką i HTTPS” da się przechwycić, ale nie da się rozszyfrować komunikacji opisywanym KRAK-iem, jeśli protokół jest poprawnie zaimplementowany i nie jest podatny np. na ssltrip, gdzie przestępca będzie w stanie zmusić przeglądarkę do komunikacji z podstawionym serwerem WWW nieszyfrowanym kanałem.

Niezależnie od systemu operacyjnego i urządzenia wszyscy użytkownicy powinni odwiedzić centrum aktualizacji i zainstalować udostępnione łatki. Większość dystrybucji Linux już otrzymała aktualizacje. Microsoft również opracował poprawkę. Aktualizacje trafiły też do urządzeń Apple i znanych producentów urządzeń sieciowych. Pozostała część użytkowników — głównie nowszych smartfonów — musi poczekać na swoją kolej. Może nawet kilka miesięcy, albo lat. Starsze urządzenia z pewnością spisane są na straty.




Tagi

Dodaj komentarz