- Wprowadzenie do skanowania Nping ARP
- Typy skanowania Nmap ARP
- Nmap ARP discovery
- Zakończenie
.
ARP (Address Resolution Protocol) jest niskopoziomowym protokołem działającym na poziomie warstwy Link modelu Internetu lub pakietu protokołów internetowych, który został wyjaśniony we wstępie do podstaw Nmapa. Istnieją jeszcze 3 inne wyższe warstwy: warstwa Internetu, warstwa Transportu i warstwa Aplikacji.
Źródło obrazu: https://linuxhint.com/nmap_basics_tutorial
Uwaga: niektórzy eksperci opisują Model Internetu z 5 warstwami włączając warstwę fizyczną, podczas gdy inni eksperci twierdzą, że warstwa fizyczna nie należy do Modelu Internetu, ta warstwa fizyczna jest nieistotna dla nas dla Nmap.
Warstwa łącza jest protokołem używanym w sieciach lokalnych IPv4 do odkrywania hostów online, nie może być używana w Internecie i jest ograniczona do urządzeń lokalnych, albo jest używana w sieciach IPv6, w których protokół NDP (Neighbor Discovery) zastępuje protokół ARP.
Podczas używania Nmapa w sieci lokalnej protokół ARP jest stosowany domyślnie, ponieważ jest szybszy i bardziej niezawodny według oficjalnych danych, możesz użyć flagi -send-ip aby zmusić Nmapa do używania protokołu internetowego w sieci lokalnej, możesz także zapobiec wysyłaniu przez Nmapa pingów ARP używając opcji -disable-arp-ping.
Typy skanowania ARP w Nmapie
Poprzednie wersje Nmapa posiadały wiele opcji do przeprowadzania skanowania ARP, obecnie Nmap nie obsługuje tych flag, które są teraz użyteczne poprzez narzędzie Nping zawarte w Nmapie, jeśli masz zainstalowany Nmap, to już masz to narzędzie.
Nping pozwala na generowanie pakietów pod wieloma protokołami, jak opisuje oficjalna strona internetowa, może być również użyty do ARP poisoning, Denial of Service i więcej. Jego strona internetowa wymienia następujące cechy:
- Niestandardowe generowanie pakietów TCP, UDP, ICMP i ARP.
- Obsługa specyfikacji wielu hostów docelowych.
- Obsługa specyfikacji wielu portów docelowych.
- Tryby nieuprzywilejowane dla użytkowników niebędących rootami.
- Tryb Echo dla zaawansowanego rozwiązywania problemów i odkrywania.
- Wsparcie dla generowania ramek Ethernet.
- Wsparcie dla IPv6 (obecnie eksperymentalne).
- Uruchomienie w systemach Linux, Mac OS i MS Windows.
- Możliwość śledzenia trasy.
- Wysokie możliwości dostosowania.
- Bezpłatny i open-source.
(Źródło https://nmap.org/nping/)
Protokoły istotne dla tego samouczka:
ARP: zwykłe żądanie pakietu ARP szuka adresu MAC przy użyciu adresu IP urządzenia. (https://tools.ietf.org/html/rfc6747)
RARP: żądanie RARP (Reverse ARP) rozwiązuje adres IP przy użyciu adresu MAC, ten protokół jest przestarzały. (https://tools.ietf.org/html/rfc1931)
DRARP: protokół DRARP (Dynamic RARP) lub rozszerzenie protokołu opracowane w celu przydzielenia dynamicznego adresu IP na podstawie adresu fizycznego urządzenia, może być również używany do uzyskania adresu IP. (https://tools.ietf.org/html/rfc1931)
InARP: żądanie InARP (Inverse ARP) rozwiązuje adres DLCI (Data Link Connection Identifier), który jest podobny do adresu MAC. (https://tools.ietf.org/html/rfc2390)
Podstawowe przykłady pakietów ARP, DRARP i InARP:
Następujący przykład wysyła żądanie ARP w celu poznania adresu MAC routera:
Jak widać flaga -arp-type ARP zwróciła docelowy adres MAC 00:00:CA:11:22:33
Następujący przykład wydrukuje informacje o protokole, adresie fizycznym i IP współdziałających urządzeń:
Where:
HTYPE: Hardware Type.
PTYPE: Typ protokołu.
HLEN: Długość adresu sprzętowego. (6 bitów dla adresu MAC)
PLEN: Długość adresu protokołu. (4 bity dla IPv4)
SIP: Źródłowy adres IP.
SMAC: Source Mac Address.
DMAC: Destination Mac Address.
DIP: Destination IP Address.
Następujący przykład zwraca te same dane wyjściowe:
Nmap ARP discovery
Następujący przykład z użyciem nmap to skanowanie ARP ping z pominięciem wszystkich możliwości ostatniego oktetu, poprzez użycie symbolu wieloznacznego (*), można również ustawić zakresy oddzielone myślnikami.
Gdzie:
-sP: Ping skanuje sieć, wymieniając maszyny, które odpowiadają na ping.
-PR: ARP discovery
Następujący przykład to skanowanie ARP przeciwko wszystkim możliwościom ostatniego oktetu włącznie ze skanowaniem portów.
Następujący przykład przedstawia skanowanie ARP przeciwko wszystkim możliwościom ostatniego oktetu
Poniższy przykład wymusza skanowanie ip nad skanowaniem arp, ponownie ostatni oktet z użyciem symbolu wieloznacznego.
Jak widać, podczas gdy wcześniejsze skanowanie trwało 6 sekund, to to zajęło 23.
Podobne wyniki i czas zdarzają się po wyłączeniu protokołu ARP przez dodanie flagi -disable-arp-ping:
Wnioski
Skanowanie ARP za pomocą nmapa i Npinga jest ok do odkrywania hostów, natomiast według oficjalnej dokumentacji programy te mogą być przydatne do DoS, ARP Poisoning i innych technik ataku, moje testy nie przyniosły rezultatów, są lepsze narzędzia skupiające się na protokole ARP jak ARP spoofing, Ettercap, czy arp-scan, które zasługują na więcej uwagi w tym aspekcie. Jednak kiedy używamy Nmapa lub Npinga, protokół ARP dodaje do procesu skanowania wiarygodność oznaczania pakietów jako ruchu w sieci lokalnej, dla którego routery lub firewalle wykazują więcej cierpliwości niż dla ruchu zewnętrznego, oczywiście nie pomoże to, jeśli zalejemy sieć pakietami. Tryby i typy ARP nie są już przydatne w Nmapie, ale cała dokumentacja jest nadal przydatna, jeśli zastosujemy ją w Npingu.
Mam nadzieję, że to wprowadzenie do Nmapa i skanowania ARP w Npingu było dla ciebie przydatne. Śledź LinuxHint po więcej wskazówek i aktualizacji dotyczących Linuksa i sieci.
- Jak skanować usługi i luki w zabezpieczeniach za pomocą Nmapa
- Używanie skryptów nmap: Nmap banner grab
- nmap network scanning
- nmap ping sweep
- Traceroute with Nmap
- nmap flags and what they do
- Nmap Stealth Scan
- Nmap Alternatives
- Nmap: skanowanie zakresów IP
.