Flagi NMAP i to, co robią

Flagi NMAP i to, co robią

Ten samouczek wyjaśnia, czym są flagi NMAP i co robią z prawdziwymi przykładami scenariusza.

NMAP jest prawdopodobnie najważniejszym narzędziem sieciowym i bezpieczeństwa na rynku. Wśród jego funkcji jest skanowanie portów, skanowanie podatności na zagrożenia, wykrywanie, możliwości śladu i jeszcze więcej funkcjonalności wniesionych przez silnik skryptowy NMAP (NSE).

Po przeczytaniu tego samouczka będziesz mógł zostać zaawansowanym użytkownikiem NMAP, nie tylko za pomocą flag, ale także uczenia się końcówek składniowych i silnika Scripting NMAP z dodatkowymi funkcjami.

Wszystkie przykłady pokazane w tym artykule obejmują zrzuty ekranu, co ułatwia wszystkim użytkownikom zrozumienie, jak je zastosować.

Składnia NMAP

Podczas uruchamiania skanowania za pomocą NMAP, najpierw musimy zadzwonić do programu, a następnie musimy wprowadzić flagi (typ skanowania), a na koniec do celu (.

Podstawowym przykładem tego byłoby proste skanowanie portu ukierunkowane na określone porty, jak pokazano poniżej, gdzie port 80 hosta Linuxhint.Com jest skanowany, aby poznać swój stan.

nmap -p 80 Linuxhint.com


-P (portu) Flaga lub parametr pokazane w powyższym przykładzie służy do zdefiniowania jednego lub więcej portów. Możesz dodać więcej portów, oddzielając je za pomocą przecinków, zostanie to wyjaśnione w dalszej części tego artykułu.

Zrozumienie danych wyjściowych NMAP: stany portu

Przed kontynuowaniem wyjaśnienia flag NMAP ważne jest, aby czytelnicy zrozumieli wyniki NMAP. W związku z tym istnieje 6 stanów portowych, które mogą zgłosić NMAP:

  • otwarty: port jest otwarty, a aplikacja przez niego słuchała.
  • Zamknięte: port jest zamknięty; Żadna aplikacja nie słucha.
  • Przefiltrowany: zapora zapobiega dotarciu do NMAP do portu.
  • Bez filtra: Port jest dostępny, ale NMAP nie jest w stanie sprawdzić swojego stanu.
  • Otwórz | filtrowane: NMAP nie jest w stanie ustalić, czy port jest otwarty czy filtrowany.
  • Zamknięte | filtrowane: NMAP nie jest w stanie ustalić, czy port jest zamknięty lub filtrowany.

Teraz znasz składnię NMAP i podstawowe dane wyjściowe, co oznacza, że ​​możemy kontynuować uczenie się flag NMAP.

Flagi NMAP do skanowania portów

Najczęściej używaną funkcją NMAP jest skanowanie portów. Aby prawidłowo używać NMAP, należy wiedzieć, w jaki sposób można zaimplementować tę flagę, aby dopasować się do potrzeb użytkownika.

Jak pokazano w pierwszej sekcji tego samouczka (sekcja składniowa), aby określić port, po prostu musisz wpisać -flaga P (porty) a następnie port, który chcesz być zeskanowany, jak pokazano poniżej.

nmap -p 443 Linuxhint.com


W powyższym przykładzie NMAP jest instruowany, aby sprawdzić stan portu 443 Linuxhint.Com Host.

Możesz także określić więcej niż jeden port, wdrażając przecinek. W poniższym przykładzie NMAP jest pouczany, aby sprawdzić porty 80 (HTTP), 443 (HTTPS), 21 (FTP) i 22 (SSH).

nmap -p 80 443,21,22 Linuxhint.com


Jak widać, wszystkie określone porty zostały przeanalizowane. Porty 80 i 443 są otwarte, a porty 21 i 22 są filtrowane przez zaporę zapory.

Oczywiście, dzięki NMAP możesz również zdefiniować cele za pomocą adresów IP, podsieci itp.

nmap -p 23 80 162.0.232.43


Możesz także określić zakres portów, wdrażając łącznik, jak pokazano w poniższym przykładzie, w którym wszystkie porty od 79 do 90 są skanowane.

Notatka: Jeśli zakres jest zbyt duży, wyjście może pominąć zamknięte/filtrowane porty i pokazać tylko otwarte porty.

nmap -p 79-90 Linuxhint.com


Ważne jest wyjaśnienie podczas korzystania z -P Flaga Możesz także określić usługę po jej nazwie, nie tylko według numeru portu. W poniższym przykładzie porty HTTPS i SSH są skanowane.

nmap -p http, ssh linuxhint.com


Gdy nie określacie portów, domyślnie NMAP skanuje 1000 najczęściej używanych portów. Jeśli chcesz zeskanować cel i znaleźć tylko otwarte porty wśród tych 1000 portów, możesz użyć -Otwarta flaga.

nmap -Open Linuxhint.com

Jak widać, NMAP znalezione porty 80 443, 8080 i 8443 są otwarte.

Flagi NMAP do wykrywania wersji systemu operacyjnego i oprogramowania

Kolejną ważną funkcją NMAP jest możliwość wykrywania systemów operacyjnych i oprogramowania naszego celu. NMAP to świetne narzędzie do śladu. Możemy używać różnych flag i łączyć je, aby uzyskać lepsze wyniki.

Pierwsza flaga wyjaśniona w tej sekcji jest -O (OS) Flaga Służy do wykrywania docelowego systemu operacyjnego.

Notatka: Potrzebujesz uprawnień korzeniowych, aby korzystać z -O Flag do wykrywania systemu operacyjnego. Użyj sudo prefiks.

sudo nmap -o donweb.com


NMAP donosi, że warunki nie były idealne do wykrycia systemu operacyjnego celu. Jednak jest to 86% pewne, że używa systemu Linux z jądrem 2.6.18 lub 2.6.22.

Aby wykryć wersje serwisowe, możesz użyć -Flaga SV (wersja serwisowa) jak pokazano niżej.

nmap -sv argexchanger.com

Na powyższym zrzucie ekranu NMAP wykrył czyste FTPD dla usługi FTP, EXIM 4.94.2 i dovecot dla usługi pocztowej, ISC BIND 9.8.2RC1 dla DNS i litespeed jako serwer WWW.

-Flaga SV obsługuje różne poziomy intensywności, od 0 do 9, gdzie 0 jest intensywnością światła, a 9 najbardziej agresywnych. Poziom domyślny podczas korzystania z -Flaga SV, Jeśli nie określony, to 7.

Poniżej możesz zobaczyć przykład skanowania o niższym poziomie intensywności. Jak zobaczysz, nie wykryto żadnej wersji.

nmap -sv -inwersja -intensywność 0 linuxhint.com


Teraz możesz zobaczyć wyjście -SV zeskanować z maksymalną intensywnością w stosunku do tego samego celu.

Teraz wynik jest inny i chociaż wersje nie zostały wykryte, znamy powód. Linuxhint.com jest chroniony przez Cloudflare. Dzięki tej wydajności dowiedzieliśmy się, że możemy uzyskać wersje za pomocą innych narzędzi, takich jak CloudFail lub Shodan.

Flagi NMAP w celu zdefiniowania celów

Inne podstawowe flagi NMAP i techniki składniowe są przydatne do zdefiniowania celów do skanowania. Ta sekcja pokazuje, jak je uruchomić.

Notatka: Dodatkowo, do flag, ta sekcja obejmuje również niektóre techniki składniowe.

W poprzednich przykładach zeskanowaliśmy tylko jeden cel. Możesz także celować w wiele urządzeń.

Poniższy przykład pokazuje, jak ukierunkować zakres IP poprzez wdrożenie łącznika. Skan będzie ukierunkowany na wszystkie adresy IP między 162.0.232.2 i 162.0.232.20. Oczywiście zrzut ekranu nie może zawierać wszystkich wyników, które widzę w konsoli.

NMAP 162.0.232.2-20


Możesz określić zakresy w więcej niż jednym okTETU. Poniższy przykład określa zakresy w ostatnim do oktetów poprzez wdrożenie łącznika w obu z nich.

NMAP 162.0.232-239.2-10


Jeśli chcesz zeskanować cały okett, możesz również użyć karty wieloznacznej (*). Możesz także używać dzikich kart w więcej niż jednym oktecie i możesz łączyć zakresy IP z wielkimi kartami, jak pokazano w poniższym przykładzie.

NMAP 162.0.232-234.*


-Flaga IR Instruuje NMAP, aby losowo znaleźć hosty, ta flaga zależy od argumentu i instrukcji numerycznych, wymaga od użytkownika zdefiniowania liczby hostów lub celów NMAP.

W poniższym przykładzie pouczam NMAP, aby wygenerował 200 losowych celów, aby skanować dla portu Netbios.

nmap -p 139 -ir 200


Możesz także użyć NMAP do ładowania plików zawierających jak najwięcej hostów lub adresów IP, ile chcesz. Hosty można wymienić z nowymi wierszami, jak pokazano na zrzucie ekranu poniżej, lub oddzielone przecinkiem, przestrzenią lub zakładką.

Aby zastosować poniższy przykład, aby utworzyć plik zawierający hosty i adresy IP, możesz dodać wiele tak, jak chcesz. W moim przypadku nazwałem hostslist plików.


Flaga do załadowania listy hostów/IPS jest -il. Poniżej możesz zobaczyć przykład za pomocą listy utworzonej na zrzucie ekranu powyżej.

nmap -il hostslist

-wykluczyć flagę jest przydatne do wykluczenia adresów IP lub hostów ze skanów, gdy skanujemy zakresy IP lub docelowe pliki. W poniższym przykładzie ponownie użyję listy hosta, aby skanować porty SSH, FTP i SFTP, ale instruuję NMAP, aby wykluczyć Linuxhint.com z listy. Jak widać w przeciwieństwie do wyniku pokazanego w -IL Flag Przykład Linuxhint.com nie był skanowany.

nmap -p ssh, ftp, sftp -il hostslist -exclude Linuxhint.com

Możesz także użyć -wykluczyć flagę Gdy porty skanowania waha się, jak pokazano w poniższym przykładzie, w którym IP 162.0.233.34 jest wykluczone, a nie zeskanowane.

Nmap -p SSH, FTP, SFTP 162.0.232-236.34 -Wyklucz 162.0.233.34

Inne popularne flagi NMAP

To jest ostatnia sekcja tego samouczka i wyjaśnia dodatkowe nieokategoryzowane flagi.

-V: Flaga -V (gadatość) wydrukuje informacje o procesie skanowania. Domyślnie NMAP nie pokazuje tego procesu, ten parametr instruuje NMAP, aby pokazał, co się dzieje podczas skanu.


-mi: Ta flaga pozwala nam określić interfejs sieciowy (e.G. ETH0, WLAN0, ENP2S0 itp.), Przydatne, jeśli jesteśmy podłączeni zarówno za pomocą naszych kart przewodowych, jak i bezprzewodowych. W moim przypadku moja karta bezprzewodowa to WLP3S0, aby instruować NMAP, aby użyć tego interfejsu do skanowania portów 22 i 80 na Linuxhint.

nmap -e wlp3S0 -p 22,80 Linuxhint.com


-F: -f (flagi fragmentów) służy również do utrzymania procesu skanowania niewykryty przez fragmentowanie pakietów, co utrudnia zapory ogniowe lub identyfikatory do wykrycia skanowania. Ta opcja nie jest kompatybilna ze wszystkimi funkcjami NMAP. Ważne jest, aby wyjaśnić, aby użyć tej funkcji sudo prefiks.

sudo nmap -p 80, ssh, 21,23,25 -F Linuxhint.com


-źródło -port / -g: Flagi -Source -port i -g są równoważne i instruują NMAP do wysyłania pakietów przez określony port. Ta opcja służy do oszukiwania zaporników z białej listy ruchu z określonych portów. Poniższy przykład skanuje cel z portu 20 do portów 80, 22, 21,23 i 25 wysyłających fragmentaryczne pakiety do Linuxhint.

sudo nmap -g 20 -p 80, ssh, 21,23,25 -F Linuxhint.com


-Pn: Parametr -pn (bez ping) skanuje porty sieci lub dostarczony zakres bez sprawdzania, czy urządzenie jest online, nie będzie pingować i nie będzie czekać na odpowiedzi. Jest jednak przydatny do odkrycia gospodarza.

nmap -pn 234.31.1.1-23

To wszystko o flagach NMAP w tym samouczku. Jednak przed ukończeniem chcę przedstawić Ci inną doskonałą funkcję NMAP, silnik Scripting NMAP. Czytaj dalej poniżej.

Wprowadzenie do silnika skryptowego NMAP (NSE):

Silnik skryptowy NMAP (NSE) jest jedną z najbardziej przydatnych funkcji NMAP do zautomatyzowanych zadań. Zawiera również niesamowite skrypty w celu znalezienia luk na celach. Użytkownicy mogą pisać własne skrypty lub korzystać z bazy danych z istniejącymi skryptami.

Składnia do użycia NSE jest następującą:

Nmap - -Scriptt --