„Ten samouczek wyjaśnia, jak działa NMAP i jak go zainstalować i używać z terminalu.
NMAP (Network Mapper) jest prawdopodobnie najczęściej używanym skanem sieciowym, przynajmniej wśród użytkowników Linuksa."
NMAP umożliwia wykonanie następujących zadań:
Ten samouczek obejmuje skanowanie portów, odkrycie hosta i skanowanie zakresów i IP i podsieci. Ostatecznie czytelnik może kontynuować linki skupione na NMAP w celu wykrywania i wykorzystania podatności na NMAP NSE (silnik skryptowy NMAP).
Treść jest wysoce zoptymalizowana dla użytkowników bez wcześniejszego doświadczenia z NMAP. Czytając ten samouczek i stosując praktyczne przykłady, czytelnik zdobyje wystarczającą wiedzę na temat działania NMAP, jego wykorzystania i zrozumieniu wyników, aby kontynuować zaawansowane odczyty użytkowania zalecane po tej treści.
Wszystkie kroki opisane poniżej zawierają zrzuty ekranu, co ułatwi każdemu użytkownikowi Linux, aby śledzić je niezależnie od poziomu doświadczenia.
Indeks:
Instalowanie NMAP (ze źródeł, repozytoriów dystrybucji opartych na Debian i Redhat)
W tej sekcji wyjaśniono, jak zainstalować NMAP w dystrybucjach Linux opartych na Debian, takich jak Ubuntu, Redhat oparte na Linux, takie jak Centos i ze źródeł dla wszystkich dystrybucji Linux.
Aby zainstalować NMAP w dystrybucjach Linux opartych na Debian, wykonaj następujące polecenie.
sudo apt instal NMAPW przypadku dystrybucji opartych na Redhat uruchom polecenie pokazane na zrzucie ekranu poniżej.
sudo yum instaluj nmapAby skompilować NMAP ze źródeł, odwiedź https: // nmap.org/pobierz.HTML#Źródło i pobierz ostatnią stabilną wersję NMAP z linku znajdującego się w sekcji pokazanej na zrzucie ekranu poniżej (strzałka).
Po pobraniu wyodrębnij TAR.plik BZE2, jak pokazano poniżej.
Notatka: Zastępować <7.93> Z pobraną wersją NMAP.
TAR -xf NMAP -7.93.smoła.BZ2Po wyodrębnianiu przejdź do katalogu NMAP.
cd nmap-/Wykonaj skrypt konfiguracyjny.
./skonfigurujNa koniec zakończ kompilację, wykonując robić I Zrób instalację.
sudo make && tworz instalacjęJak działają podstawowe typy skanowania NMAP
Regularne skanowanie NMAP są przeprowadzane przez TCP I Syn Skanowanie. Kiedy jest proces skanowania TCP, Połączenie jest ustanawiane z celem. Z Syn Skanuj, połączenie jest anulowane lub upuszczane przed ustaleniem.
Poniższy rysunek pokazuje, w jaki sposób ustalone są połączenia: Po pierwsze, komputer (PC 1) Próba ustalenia połączenia wysyła plik Syn pakiet proszący do docelowego urządzenia do synchronizacji. Jeśli urządzenie docelowe (PC 2) jest dostępne do nawiązania połączenia, odpowiada zarówno innym pakiecie Syn, pozwalając na synchronizację, jak i z Ack (Potwierdzenie) pakiet potwierdzający otrzymanie pierwszego Syn pakiet wysłany przez komputer, który żądał połączenia, a następnie komputer, który żądał połączenia (PC 1), wysyłał Ack pakiet potwierdzający odbiór obu Syn I Ack pakiety wysyłane przez urządzenie docelowe (PC 2).
Po nawiązaniu połączenia jest wykrywane przez zapory ogniowe i zalogowane; Dlatego Syn Skan został wdrożony, Syn lub skan stealth wysyła Syn pakiet i po otrzymaniu odpowiedzi docelowej zamiast odpowiadania za pomocą Ack pakiet, wysyła RST (zresetować) pakiet, aby anulować połączenie, zanim zostało ono ustalone, jak pokazano na poniższym obrazku:
W ten sposób połączenie nie jest zalogowane, ale nadal musisz poradzić sobie z systemami wykrywania wtargnięcia Syn Możliwości wykrywania pakietów. Aby uniknąć wykrycia, możesz użyć technik skanowania Stealth.
Fazy skanowania NMAP
NMAP przechodzi 11 etapów podczas procesu skanowania w zależności od przekazanych flag; Niektóre z nich są opcjonalne zgodnie z określonymi parametrami. Na przykład skrypty przed i po skoku są wykonywane tylko wtedy, gdy użytkownik wdraża NSE do wykrywania lub wykorzystania podatności.
11 możliwych faz znajduje się poniżej:
Prosty skan NMAP bez flagi innej niż -v (Gadatość) pokaże niektóre z wcześniej wymienionych faz.
Notatka: Gdy domyślnie nie są określone porty, NMAP skanuje najczęściej używane 1000 portów, w tym wszystkie protokoły.
nmap -v Linuxhint.comStany portowe i typy skanowania portów z NMAP
Jedną z głównych funkcji NMAP jest możliwość skanowania portów uczenia się stanu, słuchającej wersji oprogramowania, a nawet wykorzystania portów jako warunków dla masywnych lub wielu skanów IP.
Podczas skanowania dla usług NMAP może zgłosić do 6 stanów lub warunków zeskanowanych portów:
Jak powiedziano w poprzedniej sekcji. Gdy użytkownik nie określa portów, domyślnie NMAP skanuje 1000 najpopularniejszych i używanych portów.
Najbardziej podstawową flagą NMAP do określania portu jest -P, a następnie numer portu lub protokół.
W praktycznym przykładzie poniżej użytkownik skanuje port 22 na celu Linuxhint.com.
nmap -p 22 Linuxhint.comJak widać na powyższym zrzucie ekranu, port 22 jest filtrowane przez zaporę ogniową.
Zamiast numeru portu użytkownik może również zdefiniować nazwę protokołu. Poniżej użytkownika wykonuje ten sam skan, ale określa nazwę protokołu ssh Zamiast numeru portu 22.
nmap -p ssh linuxhint.comIstnieją flagi i znaki, aby zdefiniować więcej niż jeden konkretny port do skanowania. Przecinek (,) pozwala na zdefiniowanie różnych portów z różnych zakresów.
Na zrzucie ekranu poniżej użytkownik używa przecinków do skanowania portów 22, 80 i 179. Jak widać, port 80 został zdefiniowany przez jego nazwę protokołu, http.
NMAP -p 22, HTTP, 179 Linuxhint.comJak widać, port 80 został otwarty, podczas gdy reszta została przefiltrowana przez zaporę ogniową.
Łącznik jest ważną postacią podczas skanowania zarówno zakresu portu, jak i IP.
W poniższym przykładzie zaimplementowano łącznik w celu zdefiniowania zakresu portów między 21 a 30.
nmap -p 20-30 Linuxhint.comNMAP umożliwia definiowanie więcej niż zakres portów poprzez wdrożenie zarówno przecinków, jak i łączników, jak pokazano poniżej, gdzie porty wynosi od 70 do 90 i od 20 do 40.
nmap -p 70-90,20-40 Linuxhint.comPodczas zakresu skanowania użytkownika może wykluczyć określone porty lub zakresy z procesu skanowania, wdrażając -wyklucz porty flaga.
W poniższym przykładzie użytkownik skanuje zakres portu od portu 20 do portu 80, ale wyklucza porty 30 do 40. Użytkownik może również wykluczyć pojedynczy port lub różne porty oddzielone przecinkiem.
nmap -p 20-80 Linuxhint.com-exclude-porty 30-40Jeśli użytkownik chce zeskanować wszystkie porty w celu, ma dwie opcje. Może zdefiniować cały zakres od 1 do 65535, jak pokazano poniżej.
NMAP -P0-65535 192.168.0.1Najbardziej praktyczną opcją skanowania wszystkich portów jest wdrożenie dwóch łączników, przed i po P, jak pokazano niżej.
nmap -p- 192.168.0.1Definiowanie celów w NMAP
W tej sekcji opisano różne techniki definiowania celów skanowania, w tym wiele celów.
W poprzednim rozdziale użyto łączników do definiowania zakresów portów.
Łączniki można również użyć do definiowania zakresów IP, jak pokazano na zrzucie ekranu poniżej, gdzie użytkownik definiuje zakres IP, zaczynając od 192.168.0.1 i kończąc na 192.168.0.120.
NMAP 192.168.0.1-120W poniższym przykładzie dwa zakresy są zdefiniowane w dwóch ostatnich oktetach (200-210 i 80-90).
NMAP -p80,22,443 186.33.200-210.80-90Użytkownicy mogą korzystać z Cidr format. W poniższym przykładzie podsieć /24 jest skanowana.
-SS Flaga instruuje NMAP, aby wykonał Syn skanować niewykryte przez zapory ogniowe.
Notatka: Syn Skan wymaga przywilejów korzeniowych.
sudo nmap -ss 192.168.0.0/24W poniższym przykładzie wdrażana jest Wildcard (*), aby poinstruować NMAP, aby zeskanował cały ostatni okettowy adres IP, od 0 do 255.
-Sn (Ping Sweep) Flag instruuje NMAP, aby pominąć skanowanie portów, ograniczając odkrycie gospodarza.
Nmap -Sn 192.168.0.*Na następnym zrzucie ekranu użytkownik wdraża dwie dzikie karty, aby zeskanować dwa ostatnie oktety. -sp (Ping Sweep) Flaga jest równoważna z powyższym ( -Sn Flaga zastępuje -sp),
Nmap -sp 192.168.*.*Wildcards i łączniki można łączyć w celu definicji celów niestandardowych.
Nmap -sp 186.33.205-210.*Cele można również załadować z listy tekstu celu.
Poniższa lista jest nazwana Scantargets.tekst i zawiera nazwę domeny, adres IP, podsieć i zakresy IP zdefiniowane zarówno z łącznikiem, jak i.
-il (Lista) Flaga, a następnie ścieżka do listy celów, uruchomi skanowanie w stosunku do wymienionych celów w pliku.
nmap -sn -il santargets.tekstUżytkownik może skanować cele zdefiniowane na liście, jednocześnie wykluczając określone.
W poniższym przykładzie użytkownik skanuje cele zdefiniowane w Scantargets.tekst plik, pomijając cel 192.168.0.0/24 z -wykluczać opcja.
nmap -sn -il santargets.TXT -Exclude 192.168.0.0/24-ir (Losowe) Flaga instruuje NMAP, aby skanować losowe cele. Z tą flagą skany NMAP losowo wygenerowały cele, z których wiele może być martwymi gospodarzami.
Po tej flacie musi następować liczba losowych celów, które użytkownik chce wygenerować.
W poniższym przykładzie, -ir Flaga służy do skanowania 100 losowych celów.
nmap -ir 100Odkrycie gospodarza z NMAP
Niektóre opcje odkrywania hosta zostały już zaimplementowane w poprzedniej sekcji z flagami -Sn I -sp, który instruuje NMAP, aby pominąć proces skanowania portów, ograniczając się do odkrywania żywych gospodarzy.
Istnieją dodatkowe flagi do wykonywania zadań odkrywania za pomocą NMAP.
-Ps (Syn Ping) Flaga wysyła pustą TCP pakiet z Syn Zestaw flagi. Na wypadek, gdyby port zdalny jest otwarty, gdy cel odpowiada Syn/Ack pakiet, NMAP anuluje połączenie, wysyłając RST pakiet zamiast Ack jeden.
Nmap -ps 192.168.0.0/24ROCZNIE (Ack ping) wysyła TCP pakiet z Ack Zestaw flagi. Ten pakiet wysyła komunikaty potwierdzenia do nieistniejących połączeń generujących RST pakiety od zdalnego hosta, ujawniając jego istnienie.
nmap -pn -pa50-100 NIC.ar-Pu (UDP Ping) Wysyła flaga UDP pakiety na zdalne adresy. Jeśli porty nie są określone, pakiety są wysyłane do portów 40 i 125.
sudo nmap -pu 192.168.0.0/24Wysyła pakiety IP z nagłówkami innego protokołu. Jeśli nie określone, domyślnie nagłówki są ICMP, IGMP, I IP-in-IP protokoły.
sudo nmap -po 192.168.0.0/24Kolejnym zalecanym odczytem, aby kontynuować NMAP, to flagi NMAP i to, co robią, co opisuje dodatkowe flagi i wprowadza czytelnika do NSE (silnik Scripting NMAP).
Wniosek
Jak widać, NMAP jest bardzo potężnym narzędziem, ale łatwe do nauczenia. Każdy użytkownik sieci zajmujący się terminalem może zacząć od podążania za przykładami takimi jak ten przedstawiony powyżej.
Inne funkcje NMAP, takie jak TraceRoute, można zastosować do diagnozowania problemów sieciowych lub pakiet NSE można wykorzystać do wykrywania i wykorzystania luk w zabezpieczeniach.
Instrukcje w tym samouczku są ważne dla wszystkich dystrybucji Linux. Zdecydowanie zaleca się stosowanie wszystkich podanych przykładów w celu włączenia wiedzy.
Dziękujemy za przeczytanie naszego samouczka Basics NMAP. Kontynuuj podążaj za Linux, aby uzyskać więcej profesjonalnych treści Linux i sieci.