Przechwytywanie ruchu przez sieć WLAN

Przechwytywanie pakietów Wi-Fi umożliwia wyświetlanie szczegółów i interakcji, które są w innej sytuacji zamaskowane, zanim dotrą do oprogramowania działającego na urządzeniu. Dzięki temu przechwytywanie jest ważnym narzędziem do wykrywania niektórych typów błędów.

Główne kroki to:

  1. Znajdź odpowiedni kanał do skanowania.
  2. Przechwyć natężenie ruchu.
  3. Udostępnij zrzut ekranu i hash hasła do sieci WLAN.

1. Określ odpowiedni kanał i szerokość

Sieci WLAN działają w zakresie:

  • kanał, zwykle oznaczany numerem; 1–13 to kanały 2,4 GHz, 36–200 to kanały 5 GHz
  • o określonej szerokości (20 MHz, 40 MHz, 80 MHz, 160 MHz)

Każdy punkt dostępu (np. router, węzeł sieci mesh) w Twojej sieci ma zwykle unikalny kanał 2,4 GHz i 5 GHz. Musisz sprawdzić, z którym z nich jest połączone urządzenie. Jest kilka możliwości:

Używanie panelu sterowania routera

Jeśli używasz Nest WiFi, pomiń tę opcję – informacje nie są widoczne.

Większość routerów ma listę połączonych urządzeń oraz informacje o tym, którego kanału i częstotliwości używają.

  1. Znajdź adres IP routera za pomocą tego przewodnika.
  2. W przeglądarce otwórz adres routera, np. http://192.168.1.1.
  3. Zaloguj się. Nie znasz hasła? Poszukaj tagu na routerze lub użyj haseł do routera.
  4. Poszukaj strony o nazwie „Klienci” lub „Podłączone urządzenia”. Na przykład strona routera Netgear może wyglądać tak, jak na poniższym obrazku, lub tak, jak w przypadku urządzeń Eero.

    Widok klienta Netgear

  5. Aby przypisać informacje z kroku 4 do konkretnego kanału i szerokości pasma, może być konieczne sprawdzenie innych ustawień. Na przykład router Netgear:

    Widok Netgear Channels

Użyj komputera Mac, jeśli jest on już połączony z tym samym kanałem.

Naciśnij i przytrzymaj klawisz Option, a następnie kliknij ikonę WLAN w prawym górnym rogu paska stanu na Macu. Powinieneś zobaczyć zwykłe menu WLAN z kilkoma dodatkowymi opcjami i informacjami. Spójrz na niedostępne pozycje menu i znajdź tę, która dotyczy kanału:

`Channel 60 (DFS, 5GHz, 40MHz)`

Mac WLAN

Nie można znaleźć kanału i szerokości

Jeśli inne metody nie zadziałają, możesz spróbować:

  1. Wymień wszystkie kanały używane przez punkty dostępu (zazwyczaj 2 kanały na punkt dostępu lub punkt dostępu w sieci mesh).

    a. Zalecany sposób – na telefonie z Androidem możesz użyć aplikacji takiej jak Wifiman lub Aruba Utilities.

    a. Na komputerze Mac możesz użyć /System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport-s, aby wyświetlić opcje.

  2. Wykonaj krótkie (wystarczy nawet 15 sekund) nagranie każdego z tych kanałów, postępując zgodnie z instrukcjami podanymi poniżej.

  3. Zainstaluj Wireshark (pomoc znajdziesz w artykule Instalowanie Wiresharka).

  4. Otwórz każdą z przechwyconych transmisji za pomocą Wiresharka, zastosuj filtr wyświetlania wlan.addr == YOUR_DEVICE'S_MAC i sprawdź, czy pojawiają się jakieś pakiety.

2. Rozpocznij nagrywanie

Ważne: rejestrowanie 4-stronnego uścisku dłoni

Jeśli zabezpieczenia Wi-Fi są włączone, musisz znać klucze szyfrowania, aby odszyfrować przechwycone pakiety. Klucze szyfrowania są wyprowadzane z 4-stronnego uścisku dłoni, który ma miejsce, gdy urządzenie łączy się z siecią. Są one unikalne dla każdego połączenia między urządzeniem a punktami dostępu.

Z tego powodu MUSISZ przechwycić 4-way handshake, aby odszyfrować dane ładunku w Wi-Fi. Jeśli urządzenie jest już połączone z siecią, gdy rozpoczynasz przechwytywanie, rozłącz je i połącz ponownie (lub uruchom ponownie), gdy rozpocznie się skanowanie.

Rejestrowanie na Macu

Przytrzymując klawisz Option na klawiaturze, kliknij ikonę WLAN, a następnie wybierz „Otwórz diagnostykę sieci bezprzewodowej…”:

Przechwytywanie WLAN na Macu

Na pasku menu diagnostyki sieci bezprzewodowej wybierz Okno > Sniffer:

Sniffer WLAN na Macu

Ustaw kanał i szerokość na wartości, które zostały wcześniej pobrane (na zrzucie ekranu przykładowo wybrano kanał 60 i szerokość 40 MHz):

Kanały i szerokość WLAN na Macu

Naciśnij Start i wpisz hasło. Teraz spróbuj odtworzyć problem. Upewnij się, że rejestrujesz 4-kierunkowe uzgadnianie połączenia z urządzenia, jak opisano w artykule Rejestrowanie 4-kierunkowego uzgadniania połączenia.

Gdy skończysz, naciśnij Stop. W folderze /var/tmp znajdziesz nowy plik *.pcap, który zawiera cały ruch. Przykładowa nazwa pliku to: (null)_ch100_2018-11-06_10.52.01.pcap.

Rejestrowanie w Linuksie

  1. Wyłącz Wi-Fi. Możesz to zrobić na 2 sposoby:

    • Za pomocą interfejsu graficznego (zalecane)
    • Użycie interfejsu wiersza poleceń Network Manager do zaprzestania zarządzania interfejsem WLAN: sudo nmcli dev set <wlan-ifname> managed on
    • Jeśli używasz innego menedżera sieci, dokonaj odpowiednich zmian.
  2. Zapisz ten skrypt. Zastąp <wlan-ifname> nazwą interfejsu Wi-Fi. Ten dokument zakłada, że nazwa skryptu to setup-wifi-capture.

    #!/usr/bin/env bash
    sudo ifconfig <wlan-ifname>  down
    sudo rfkill unblock wifi
    sudo iwconfig <wlan-ifname>  mode monitor
    sudo ifconfig <wlan-ifname>  up
    sudo iw dev <wlan-ifname> set channel $@
  3. Wykonaj poprzedni skrypt i podaj kanał oraz najwyższą przepustowość do skanowania, np. kanał 153 z przepustowością 80 MHz:

    ./setup-wifi-capture chan 153 80 MHz
  4. Otwórz Wiresharka. Teraz powinieneś mieć możliwość przechwytywania pakietów na interfejsie wlan.

3. Udostępnianie zapisu

  1. Aby wygenerować hasz hasła, użyj generatora WPA PSK (klucza surowego). Dzięki temu możesz odszyfrować dane bez znajomości hasła w postaci zwykłego tekstu.

  2. Musisz też udostępnić wygenerowany klucz PSK, aby inni użytkownicy mogli odszyfrować nagranie.

Dodatek

Instalowanie Wireshark

Możesz zainstalować Wireshark za pomocą apt install wireshark w systemie Linux lub pobrać go online ze strony Wireshark.

Konfigurowanie Wiresharka do odszyfrowywania ruchu

Nie jest to konieczne do udostępniania plików z przechwyconymi pakietami. Zrób to tylko wtedy, gdy chcesz samodzielnie analizować odszyfrowany ruch w Wiresharku.

W przypadku zabezpieczeń WPA2 w sieci Wi-Fi klucz WPA2-PSK nie jest używany bezpośrednio do szyfrowania i odszyfrowywania ruchu. Jest on używany w 4-way handshake, który musisz przechwycić, aby odszyfrować pakiety. Jeśli jednak chcesz tylko uchwycić problemy z połączeniem z Wi-Fi lub utratą połączenia, które można uzyskać z ramek zarządzania Wi-Fi, nie musisz uchwycić 4-stronnego procesu nawiązywania połączenia. W obu przypadkach warto je jednak wykonać.

Otwórz Wiresharka i otwórz stronę Ustawienia (menu Wireshark > Ustawienia lub **Cmd + , **).

  1. W kategorii „Protokoły” odszukaj sekcję „IEEE 802.11” i upewnij się, że zaznaczona jest opcja „Włącz deszyfrowanie”:

    Ustawienia Wireshark na Macu

  2. Kliknij przycisk Edytuj obok etykiety Klucze odszyfrowywania.

  3. W lewym dolnym rogu kliknij przycisk „+” i wybierz opcję „wpa-pwd”.

    Mac Wireshark WPA i hasło

  4. Kliknij kolumnę klucza w nowo utworzonym wierszu (obok ciągu wpa-pwd), wpisz klucz PSK WPA2 i SSID w formacie <password>:<ssid>. Jeśli na przykład nazwa sieci to MyHomeNetwork, a klucz PSK WPA2 to myp4ssword, wpisz myp4ssword:MyHomeNetwork.

    Identyfikator SSID Wiresharka na Macu

  5. Kliknij OK, aby potwierdzić.

Więcej informacji znajdziesz w oficjalnym przewodniku Wireshark (ze zrzutami ekranu) na stronie Jak odszyfrować 802.11.

Jeśli używasz tshark, podaj te argumenty:

tshark -o wlan.enable_decryption:TRUE -o 'uat:80211_keys:"wpa-pwd","<psk>:<ssid>"'

Kolorowanie danych Wireshark 802.11

Na stronie metageek.com znajduje się przydatny profil kolorów 802.11: Profil konfiguracji Wireshark.