LIVE: New phishing campaigns targeting mobile users —View latest threats →

Back to Tutorials
Zaawansowany 15 min czytania

Skanowanie sieci za pomocą Nmap: praktyczny poradnik

Nmap to branżowy standard rozpoznania sieci. Naucz się mapować otwarte porty, wykrywać działające usługi i widzieć swoją sieć dokładnie tak, jak widzi ją atakujący.

20 stycznia 2026

Czym jest Nmap i dlaczego jest ważny?

Nmap (Network Mapper) to darmowe narzędzie open source, które od 1997 roku jest fundamentem rozpoznania sieci. Wysyła spreparowane pakiety do hostów docelowych i analizuje odpowiedzi, by ustalić, które hosty są aktywne, które porty są otwarte, jakie usługi działają i często — jaki system operacyjny jest używany. Specjaliści od bezpieczeństwa używają go do oceny podatności, testów penetracyjnych i inwentaryzacji sieci. Atakujący używają go, by znaleźć punkty wejścia przed atakiem. Zrozumienie, co Nmap ujawnia o Twoich systemach, to pierwszy krok do ich obrony.

Zawsze uzyskaj pisemną zgodę przed skanowaniem sieci, która nie należy do Ciebie. Nieautoryzowane skanowanie jest w większości jurysdykcji nielegalne.

Wykrywanie hostów

Przed skanowaniem portów musisz wiedzieć, które hosty są aktywne. Domyślnie Nmap pinguje hosty przed ich badaniem:

# Ping sweep — discover live hosts in a subnet
nmap -sn 192.168.1.0/24

Flaga -sn (bez skanowania portów) wysyła żądania ICMP echo, pakiety TCP SYN na port 443, TCP ACK na port 80 oraz żądania ICMP timestamp. W sieci lokalnej zwykle to wystarcza. W przypadku wzmocnionych hostów lub zapór blokujących ICMP może być konieczne całkowite pominięcie wykrywania hostów:

# Treat all hosts as online — useful when ICMP is blocked
nmap -Pn 10.0.0.5

Techniki skanowania portów

Nmap obsługuje wiele typów skanowania. Najważniejsze z nich to:

Skanowanie TCP SYN (skanowanie ukryte)

nmap -sS 192.168.1.10

To domyślne skanowanie przy uruchomieniu jako root. Nmap wysyła pakiet SYN; jeśli port jest otwarty, cel odpowiada SYN/ACK, a Nmap natychmiast wysyła RST zamiast dokończyć uzgadnianie. Ponieważ pełne połączenie nie powstaje, wiele starszych systemów IDS i logów aplikacji go nie rejestruje — stąd nazwa „skanowanie ukryte”. Jest szybkie i dokładne.

Skanowanie TCP Connect

nmap -sT 192.168.1.10

Używane, gdy nie masz uprawnień do surowych gniazd. Nmap wykonuje pełne uzgadnianie TCP. Jest głośniejsze i wolniejsze, ale działa bez roota. Logi aplikacji zarejestrują te połączenia.

Skanowanie UDP

nmap -sU 192.168.1.10

Skanowanie UDP jest wolne, bo zamknięte porty UDP zwykle zwracają komunikaty ICMP „port unreachable”, a otwarte często nie zwracają nic. Ograniczanie szybkości przez system sprawia, że skanowanie trwa minuty na każdy host. Gdy to możliwe, celuj tylko w konkretne porty UDP:

nmap -sU -p 53,161,500 192.168.1.10

Wykrywanie usług i wersji

Wiedza, że port jest otwarty, jest przydatna; wiedza, co na nim działa, jest niezbędna:

nmap -sV 192.168.1.10

Nmap wysyła serię sond i porównuje odpowiedzi z bazą ponad 11 000 sygnatur usług. Otrzymasz wynik w rodzaju 80/tcp open http Apache httpd 2.4.51. Flaga --version-intensity (0–9) określa, jak agresywnie Nmap sonduje — wyższe wartości wykrywają mniej typowe usługi, ale trwają dłużej.

Wykrywanie systemu operacyjnego

nmap -O 192.168.1.10

Nmap analizuje zachowanie stosu TCP/IP (wartości TTL, rozmiary okna, flagi IP itp.), by rozpoznać system operacyjny. Połącz to z -sV, by uzyskać pełny obraz:

nmap -A 192.168.1.10

Flaga -A włącza za jednym razem wykrywanie systemu, wersji, skanowanie skryptami i traceroute.

Silnik skryptów Nmap (NSE)

Najpotężniejszą funkcją Nmapa jest silnik skryptów, pozwalający automatycznie wchodzić w interakcję z usługami za pomocą skryptów w języku Lua:

# Run default safe scripts
nmap -sC 192.168.1.10

# Check for specific vulnerabilities
nmap --script vuln 192.168.1.10

# Enumerate HTTP headers
nmap --script http-headers 192.168.1.10

Powyższe polecenia uruchamiają domyślne bezpieczne skrypty, sprawdzają konkretne podatności i wyliczają nagłówki HTTP. Skrypty dzielą się na kategorie safe, intrusive, exploit, brute i inne. Ostrożnie z kategoriami intrusive i exploit — mogą zakłócić działanie usług lub wywołać alerty.

Formaty wyników

W profesjonalnych zleceniach zapisuj wyniki w formatach czytelnych dla maszyn:

# Normal output
nmap -oN scan.txt 192.168.1.0/24

# XML output (importable into Metasploit, vulnerability scanners)
nmap -oX scan.xml 192.168.1.0/24

# All formats at once
nmap -oA scan_results 192.168.1.0/24

Format XML można zaimportować do Metasploita i skanerów podatności, a -oA zapisuje wszystkie formaty naraz. Narzędzia takie jak Zenmap zapewniają graficzny interfejs do wizualizacji wyników, a Metasploit potrafi bezpośrednio zaimportować XML z Nmapa, by uzupełnić swoją bazę hostów.

Unikanie wykrycia

Atakujący stosują różne techniki, by nie wywołać alertów IDS/IPS:

  • Powolne skanowanie: -T0 lub -T1 drastycznie zmniejsza tempo wysyłania pakietów
  • Wabiki: -D RND:10 wysyła pakiety z 10 losowych adresów-wabików obok prawdziwego źródła
  • Fragmentacja: -f dzieli pakiety na 8-bajtowe fragmenty
  • Podszywanie się pod port źródłowy: --source-port 53 naśladuje ruch DNS

Zrozumienie tych technik pomaga dostroić systemy detekcji, by je wychwytywały.

Budowanie punktu odniesienia dla własnej sieci

Regularnie skanuj Nmapem własną infrastrukturę i porównuj wyniki. Nieoczekiwane otwarte porty, nowe usługi czy nieznane hosty to sygnały ostrzegawcze. Prosty schemat pracy:

  1. Wykonaj autoryzowane skanowanie wszystkich portów: nmap -p- -sV -oX baseline.xml 192.168.1.0/24
  2. Zaplanuj cotygodniowe skanowania i porównuj wyniki XML narzędziem ndiff
  3. Zbadaj każdą różnicę — nowy otwarty port może oznaczać błąd konfiguracji lub przejęty host

Nmap nie jest skanerem podatności, ale pokazuje, co jest wystawione. Połącz go z narzędziami takimi jak OpenVAS czy Nessus, by uzyskać pełny obraz powierzchni ataku.

#Nmap#network scanning#penetration testing#reconnaissance