Wireshark jest to narzędzie do analizy sieci, przechwytuje pakiety w czasie rzeczywistym i wyświetla je w formacie czytelnym dla człowieka.Program zawiera filtry, kodowanie kolorów i inne funkcje, które pozwalają głęboko wkopać się w ruch sieciowy i sprawdzać pojedyncze pakiety.
Ten samouczek pomoże Ci poznać podstawy przechwytywania pakietów, filtrowania ich i sprawdzania ich.
Program możesz pobrać z oficjalnej strony.
Przechwytywanie pakietów
Po pobraniu i zainstalowaniu programu Wireshark można go uruchomić i kliknąć dwukrotnie nazwę interfejsu sieciowego w obszarze Przechwytywanie, aby rozpocząć przechwytywanie pakietów w tym interfejsie. Na przykład, jeśli chcesz przechwytywać ruch w sieci bezprzewodowej, kliknij interfejs bezprzewodowy.
Po dwukrotnym kliknięciu na interfejs natychmiast włącza się tryb przechwytywania pakietów.
W oknie oznaczonym numerem 1 widzimy podstawowe informacje na temat pakietu: numer i czas przechwycenia pakietu wraz z adresem źródłowym i docelowym oraz typem użytego protokołu. Mamy również krótką informację na temat pakietu.
W oknie numer 2 mamy szczegółowe informacje na temat wybranej ramki.
W ostatnim oknie mamy wybraną ramkę zapisaną w postaci heksadecymalnej.
Kontrolę przechwytywania pakietów można dokonać za pomocą czterech przycisków w górnym menu. Dzięki nim możemy:
- Uruchomić przechwytywanie pakietów
- Zatrzymać przechwytywanie pakietów
- Zrestartować przechwytywanie pakietów
- Ustawić dodatkowe opcje przechwytywania pakietów
Po zatrzymaniu przechwytywania pakietów efekty możemy zapisać w pliku i przeglądnąć później używając zakładki Plik.
Filtrowanie pakietów
Jeśli w przechwyconych pakietach szukasz czegoś konkretnego to możesz użyć filtrowania, dzięki któremu można zawęzić liczbę pakietów.
Na przykład używając filtrowania pakietów dotyczących tylko DNS wpiszemy w filtrze wyświetlania po prostu dns . Korzystając z tych wyników można prześledzić na jakie strony wchodził ktoś z podanego adresu IP.
Przydatne filtry
http.request.method == POST or http.request.method == GET -możemy przeglądać niezabezpieczone formularze
tcp || udp – Widzimy tylko protokoły TCP i UDP (służące do komunikacji)
icmp – Widzimy tylko protokoły ICMP (między innymi polecenie ping)
ip.addr == XXX.XXX.X.XXX – filtrowanie pakietów (przychodzących i wychodzących) z podanego adresu IP
ip.dst == XXX.XXX.X.XXX – filtrowanie pakietów których celem jest adres XXX.XXX.X.XXX
ip.src == XXX.XXX.X.XXX – filtrowanie pakietów których źródłem jest adres XXX.XXX.X.XXX
! – znak wykluczający (wszytko oprócz) np.: !(tcp || udp) wyświetli wszystkie protokoły oprócz TCP i UDP
“Czytanie” pakietów
Pakiet różni się w zależności jaki protokół z niego korzysta.
Tak wyglądają pakiety przesłane do serwera DNS i z powrotem po skorzystaniu z polecenia nslookup w Wierszu poleceń i wpisaniu skiprzeworsk.pl. Dopiero w 6 pakiecie(po trzeciej “rozmowie” z serwerem) otrzymujemy adres IP naszej strony ponieważ wcześniejsze serwery nie posiadały informacji o takiej stronie. Całe wyszukiwanie adresu IP strony trwało ≈0.2s czyli ≈200ms.
Tutaj możemy zobaczyć przesłany formularz logowania na stronie internetowej który w żaden sposób nie jest zabezpieczony dlatego możemy zobaczyć jego zawartość i odczytać hasło.