Luki w technologii zabezpieczeń sieci bezprzewodowych WPA3 i EAP-pwd

Mathy Vanhoef, autorka ataku KRACK na sieci bezprzewodowe z wykorzystaniem WPA2 oraz Eyal Ronen, współautor niektórych ataków na TLS, ujawnili informację o sześciu podatnościach (CVE-2019-9494 - CVE-2019-9499) w technologii ochrona sieci bezprzewodowych WPA3, pozwalająca na odtworzenie hasła połączenia i uzyskanie dostępu do sieci bezprzewodowej bez znajomości hasła. Luki te mają wspólną nazwę kodową Dragonblood i umożliwiają złamanie metody negocjacji połączenia Dragonfly, która zapewnia ochronę przed odgadywaniem haseł w trybie offline. Oprócz WPA3 metoda Dragonfly służy również do ochrony przed zgadywaniem słownikowym w protokole EAP-pwd używanym w systemach Android, serwerach RADIUS i hostapd/wpa_supplicant.

W badaniu zidentyfikowano dwa główne typy problemów architektonicznych w WPA3. Obydwa rodzaje problemów można ostatecznie wykorzystać do zrekonstruowania hasła dostępu. Pierwszy typ pozwala na powrót do niepewnych metod kryptograficznych (atak na downgrade): narzędzia zapewniające kompatybilność z WPA2 (tryb tranzytowy, pozwalający na użycie WPA2 i WPA3) pozwalają atakującemu wymusić na kliencie czteroetapową negocjację połączenia wykorzystywane przez WPA2, co pozwala na dalsze wykorzystanie klasycznych haseł typu brute-force mających zastosowanie do WPA2. Ponadto zidentyfikowano możliwość przeprowadzenia ataku typu downgrade bezpośrednio na metodę dopasowywania połączeń Dragonfly, umożliwiając powrót do mniej bezpiecznych typów krzywych eliptycznych.

Drugi typ problemu prowadzi do wycieku informacji o cechach hasła kanałami stron trzecich i opiera się na wadach w sposobie kodowania haseł w Dragonfly, które pozwalają pośrednim danym, takim jak zmiany opóźnień podczas operacji, na odtworzenie pierwotnego hasła . Algorytm hash-to-curve Dragonfly jest podatny na ataki na pamięć podręczną, a jego algorytm hash-to-group jest podatny na ataki związane z czasem wykonania operacji (atak na czas).

Aby przeprowadzić ataki polegające na eksploracji pamięci podręcznej, osoba atakująca musi mieć możliwość wykonania nieuprzywilejowanego kodu w systemie użytkownika łączącego się z siecią bezprzewodową. Obie metody pozwalają uzyskać informacje niezbędne do wyjaśnienia prawidłowego wyboru części hasła w procesie wyboru hasła. Skuteczność ataku jest dość wysoka i pozwala odgadnąć 8-znakowe hasło zawierające małe litery, przechwycić jedynie 40 sesji uzgadniania i wydać środki odpowiadające wynajęciu pojemności Amazon EC2 za 125 dolarów.

Na podstawie zidentyfikowanych podatności zaproponowano kilka scenariuszy ataku:

  • Atak typu rollback na WPA2 z możliwością wyboru słownika. W środowiskach, w których klient i punkt dostępu obsługują zarówno WPA3, jak i WPA2, osoba atakująca może wdrożyć własny fałszywy punkt dostępu o tej samej nazwie sieci, która obsługuje tylko WPA2. W takiej sytuacji klient zastosuje charakterystyczną dla WPA2 metodę negocjacji połączenia, podczas której zostanie stwierdzone, że takie wycofanie jest niedopuszczalne, jednak nastąpi to na etapie wysłania komunikatów negocjujących kanał i uzyskania wszystkich niezbędnych informacji ponieważ atak słownikowy już wyciekł. Podobną metodę można zastosować do wycofania problematycznych wersji krzywych eliptycznych w SAE.

    Ponadto odkryto, że demon iwd, opracowany przez firmę Intel jako alternatywa dla wpa_supplicant, oraz stos bezprzewodowy Samsunga Galaxy S10 są podatne na ataki typu downgrade nawet w sieciach korzystających wyłącznie z WPA3 - jeśli urządzenia te były wcześniej podłączone do sieci WPA3 , spróbują połączyć się z fikcyjną siecią WPA2 o tej samej nazwie.

  • Atak typu side-channel polegający na wyodrębnieniu informacji z pamięci podręcznej procesora. Algorytm kodowania haseł w Dragonfly zawiera rozgałęzienia warunkowe, a atakujący, mając możliwość wykonania kodu w systemie użytkownika bezprzewodowego, może na podstawie analizy zachowania pamięci podręcznej określić, który z bloków wyrażeń if-then-else został wybrany. Uzyskane informacje można wykorzystać do stopniowego odgadywania haseł przy użyciu metod podobnych do ataków słownikowych offline na hasła WPA2. Dla ochrony proponuje się przejście na stosowanie operacji o stałym czasie wykonania, niezależnym od charakteru przetwarzanych danych;
  • Atak bocznokanałowy z oszacowaniem czasu wykonania operacji. Kod Dragonfly wykorzystuje wiele grup multiplikatywnych (MODP) do kodowania haseł i zmienną liczbę iteracji, których liczba zależy od użytego hasła i adresu MAC punktu dostępu lub klienta. Osoba atakująca zdalnie może określić, ile iteracji wykonano podczas kodowania hasła i wykorzystać je jako wskazówkę do stopniowego odgadywania hasła.
  • Odmowa połączenia serwisowego. Osoba atakująca może zablokować działanie niektórych funkcji punktu dostępowego ze względu na wyczerpanie dostępnych zasobów, wysyłając dużą liczbę żądań negocjacji kanału komunikacyjnego. Aby ominąć ochronę przeciwpowodziową zapewnianą przez WPA3, wystarczy wysyłać żądania z fikcyjnych, niepowtarzalnych adresów MAC.
  • Powrót do mniej bezpiecznych grup kryptograficznych używanych w procesie negocjacji połączenia WPA3. Na przykład, jeśli klient obsługuje krzywe eliptyczne P-521 i P-256 i używa P-521 jako opcji priorytetowej, to atakujący, niezależnie od wsparcia
    P-521 po stronie punktu dostępowego może zmusić klienta do korzystania z P-256. Atak polega na odfiltrowaniu części komunikatów podczas procesu negocjacji połączenia i wysłaniu fałszywych wiadomości z informacją o braku obsługi niektórych typów krzywych eliptycznych.

Aby sprawdzić urządzenia pod kątem podatności, przygotowano kilka skryptów z przykładami ataków:

  • Dragonslayer - realizacja ataków na EAP-pwd;
  • Dragondrain to narzędzie do sprawdzania podatności punktów dostępowych pod kątem luk w implementacji metody negocjacji połączenia SAE (Simultaneous Authentication of Equals), które można wykorzystać do zainicjowania odmowy usługi;
  • Dragontime - skrypt do przeprowadzenia ataku side-channel na SAE, uwzględniający różnicę w czasie przetwarzania operacji przy wykorzystaniu grup MODP 22, 23 i 24;
  • Dragonforce to narzędzie służące do odzyskiwania informacji (odgadywania haseł) na podstawie informacji o różnym czasie przetwarzania operacji lub określaniu retencji danych w pamięci podręcznej.

Organizacja Wi-Fi Alliance, która opracowuje standardy dla sieci bezprzewodowych, ogłosiła, że ​​problem dotyczy ograniczonej liczby wczesnych wdrożeń protokołu WPA3-Personal i można go rozwiązać poprzez aktualizację oprogramowania sprzętowego i oprogramowania. Nie ma jeszcze przypadków wykorzystania luk w zabezpieczeniach do szkodliwych działań. Aby wzmocnić bezpieczeństwo, Wi-Fi Alliance dodało do programu certyfikacji urządzeń bezprzewodowych dodatkowe testy w celu sprawdzenia poprawności wdrożeń, a także skontaktowało się z producentami urządzeń w celu wspólnej koordynacji rozwiązania zidentyfikowanych problemów. Poprawki zostały już wydane dla hostap/wpa_supplicant. Aktualizacje pakietów są dostępne dla Ubuntu. Debian, RHEL, SUSE/openSUSE, Arch, Fedora i FreeBSD nadal mają nierozwiązane problemy.

Źródło: opennet.ru

Dodaj komentarz