Przechwytywanie ruchu przez sieć WLAN

Przechwytywanie pakietów Wi-Fi pozwala zobaczyć szczegóły i interakcje, które w inny sposób są zamaskowane, zanim trafią do oprogramowania działającego na urządzeniu. Dzięki temu są one ważne w przypadku niektórych rodzajów błędów.

Najważniejsze z nich:

  1. Znajdź właściwy kanał, żeby go wciągnąć.
  2. Przechwytuj ruch
  3. Udostępnij zapis i skrót hasła do sieci WLAN.

1. Wybieranie odpowiedniego kanału i właściwej szerokości

Sieci WLAN działają na:

  • kanału, zwykle oznaczany cyfrą. 1–13 oznacza kanały 2,4 GHz, 36–200 w przypadku kanałów 5 GHz
  • o określonej szerokości (20 MHz, 40 MHz, 80 MHz, 160 MHz).

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

Użyj panelu sterowania routera

Jeśli używasz usługi Nest WiFi, pomiń tę opcję – informacje nie będą widoczne.

Większość routerów ma listę połączonych urządzeń oraz używanych przez nie kanałów i szerokości.

  1. Znajdź adres IP routera, korzystając z tego przewodnika.
  2. Otwórz adres routera w przeglądarce, na przykład http://192.168.1.1.
  3. Zaloguj się. Nie pamiętasz swojego hasła? Poszukaj tagu na routerze lub użyj haseł do routera.
  4. Poszukaj strony o nazwie np. „klienty” lub „podłączone urządzenia”. Na przykład strona routera Netgear może wyglądać tak jak poniżej lub w przypadku urządzeń Eero.

    Widok klienta Netgear

  5. Konieczne może być znalezienie w innych ustawieniach ustawień, aby zmapować informacje z kroku 4 na konkretny kanał i przepustowość. Na przykład router Netgear:

    Widok kanałów Netgear

Użyj Maca, jeśli jest już podłączony do tego samego kanału.

Przytrzymaj Option na klawiaturze, a następnie kliknij ikonę WLAN w prawym górnym rogu paska stanu Maca. Powinno pojawić się zwykłe menu WLAN z kilkoma opcjami i informacjami. Spójrz na niedostępne pozycje w menu i poszukaj tej, która wspomina o kanale:

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

WLAN na Macu

Nie udało się znaleźć kanału ani szerokości

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

  1. Wymień wszystkie kanały, z których korzystają Twoi punkt dostępu (zwykle 2 dla każdego punktu AP lub sieci typu mesh).

    a. Zalecane na telefonie z Androidem możesz korzystać z aplikacji takich jak Wifiman czy Aruba Utilities.

    a. Na Macu możesz użyć /System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport-s, aby wyświetlić listę opcji.

  2. Zrób krótki filmik (nawet 15 sekund) na każdym z tych kanałów, postępując zgodnie z instrukcjami poniżej.

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

  4. Otwórz każdy zapis w programie Wireshark, zastosuj filtr wyświetlania wlan.addr == YOUR_DEVICE'S_MAC i sprawdź, czy się pojawiły.

2. Rozpocznij przechwytywanie

Ważne: przechwytywanie procesu uzgadniania połączenia 4-kierunkowego

Jeśli zabezpieczenia Wi-Fi są włączone, musisz znać klucze szyfrowania, aby odszyfrować przechwycone pakiety. Klucze szyfrowania powstają w wyniku 4-kierunkowego uzgadniania połączenia, które ma miejsce, gdy urządzenie łączy się z siecią, i są unikalne dla każdego połączenia między urządzeniem a punktem dostępu.

Z tego powodu MUSISZ przechwycić procedurę „4-way handshake”, aby odszyfrować ładunki Wi-Fi. Jeśli w momencie rozpoczęcia przechwytywania urządzenie jest już połączone z siecią, odłącz i podłącz je ponownie (lub zrestartuj) po rozpoczęciu nasłuchiwania.

Zrób zdjęcie na Macu

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

Przechwytywanie sygnału WLAN dla Maca

Na pasku menu Diagnostyka bezprzewodowa wybierz Okno > Sniffer:

Sniffer WLAN dla Mac OS

Ustaw kanał i szerokość na wcześniej odczytywane wartości (przykład ze zrzutem ekranu dotyczy kanału 60 i szerokości 40 MHz):

Kanał i szerokość WLAN dla Maca

Naciśnij Start i wpisz hasło. Teraz spróbuj odtworzyć problem. Upewnij się, że przechwycono procedurę 4-way handshake, zgodnie z opisem w sekcji Rejestrowanie 4-way handshake.

Gdy skończysz, naciśnij Stop. W interfejsie /var/tmp znajdziesz nowy plik *.pcap zawierający cały ruch. Przykładowa nazwa pliku: (null)_ch100_2018-11-06_10.52.01.pcap.

Robienie zdjęć w systemie Linux

  1. Wyłącz Wi-Fi. Aby to zrobić:

    • Korzystanie z GUI (zalecane)
    • Używanie interfejsu wiersza poleceń sieci menedżera w celu zakończenia zarządzania interfejsem WLAN: sudo nmcli dev set <wlan-ifname> managed on
    • Jeśli używasz innego menedżera sieci, odpowiednio dostosuj ustawienia.
  2. Zapisz ten skrypt. Zastąp <wlan-ifname> nazwą interfejsu Wi-Fi. W tym dokumencie założono, ż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 przekaż go w kanale o największej przepustowości na potrzeby wędkowania, np. na kanale 153 z pasmem 80 MHz:

    ./setup-wifi-capture chan 153 80 MHz
    
  4. Otwórz program Wireshark. Przechwytywanie pakietów powinno być teraz możliwe w interfejsie Wlan.

3. Udostępnij zapis

  1. Użyj generatora WPA PSK (nieprzetworzonego klucza), aby wygenerować hasz hasła. Dzięki temu możesz odszyfrować zapis bez znajomości hasła zapisanego w postaci zwykłego tekstu.

  2. Musisz też udostępnić wygenerowany klucz PSK, aby inne osoby mogły go odszyfrować.

Dodatek

Instalowanie Wiresharka

Możesz zainstalować program Wireshark za pomocą polecenia apt Zainstaluj Wireshark w systemie Linux lub pobrać go online z witryny Wireshark.

Skonfiguruj Wireshark do odszyfrowywania ruchu

Nie jest to konieczne do udostępniania plików przechwytywania. Zrób to tylko wtedy, gdy chcesz samodzielnie zbadać odszyfrowany ruch w Wireshark.

Dzięki zabezpieczeniom WPA2 w sieci Wi-Fi standard WPA2-PSK nie jest bezpośrednio używany do szyfrowania i odszyfrowywania ruchu. Jest on używany w ramach uzgadniania połączenia 4-kierunkowego, które trzeba przechwycić, aby odszyfrować pakiety. Jeśli jednak próbujesz zarejestrować tylko problemy z połączeniem z Wi-Fi lub spadkiem połączenia, które można odczytać za pomocą ramek zarządzania Wi-Fi, nie musisz rejestrować 4-kierunkowego uzgadniania połączenia. W obu przypadkach zarejestrowanie i tak nie zaszkodzi.

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

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

    Preferencje na Maca Wireshark

  2. Kliknij przycisk Edytuj obok etykiety Klucze odszyfrowywania.

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

    Zabezpieczenia WPA i hasła na komputerze Mac Wireshark

  4. Kliknij kolumnę klucza nowo utworzonego wiersza (tuż obok ciągu wpa-pwd) i wpisz swój klucz WPA2 PSK i identyfikator SSID w formacie <password>:<ssid>. Jeśli na przykład nazwa sieci to MyHomeNetwork, a stan WPA2 PSK to myp4ssword, wpisz myp4ssword:MyHomeNetwork.

    Identyfikator SSID programu Mac Wireshark

  5. Kliknij OK, aby potwierdzić.

Więcej informacji znajdziesz w oficjalnym przewodniku Wiresharka (ze zrzutami ekranu) w artykule Jak odszyfrować 802.11.

Jeśli używasz funkcji tshark, przekaż te argumenty:

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

Dane Colorize Wireshark 802.11

Na stronie metageek.com dostępny jest przydatny profil kolorów 802.11: profil konfiguracji Wireshark.