Das Programm nmap hat den Ruf, von bösen Skriptkiddies zum Cracken von Systemen eingesetzt zu werden, was sicherlich so auch stimmen mag.
Nichtsdestoweniger kann sich nmap auch als nützliches Diagnose- und Sicherheitstool erweisen wie die folgenden Anwendungsfälle zeigen.
Alle erreichbaren Hosts zeigen
Mithilfe der Option -sP (“Ping Scan”) können alle erreichbaren Hosts im Netzwerk (hier im Adressbereich192.168.0.0 bis 192.168.0.255) gefunden werden:
$ nmap -sP 192.168.0.* Starting Nmap 5.21 ( http://nmap.org ) at 2012-02-16 07:57 CET Nmap scan report for easy.box (192.168.0.1) Host is up (0.0027s latency). Nmap scan report for 192.168.0.20 Host is up (0.00018s latency). Nmap done: 256 IP addresses (2 hosts up) scanned in 2.53 seconds
Offene Ports ermitteln
- connect() Scan – Option -sT
Brot-und-Butter-Scanmethode: nmap versucht, eine ganz reguläre TCP-Verbindung (connect Syscall) herzustellen
Ablauf: voller Handshake: SYN -> ACK/SYN -> ACK - SYN Stealth Scan – Option -sS1
Baut die Verbindung nur soweit als nötig auf, bricht dann mitten im Handshake ab (nur als root möglich!)
Ablauf: voller Handshake: SYN -> ACK/SYN -> RST - FIN, Null and Xmas Tree Scans – Optionen: -sF, -sN, -sX
Senden Pakete mit den entsprechenden Flags (also FIN, FIN,URG,PUSH, keine Flag), woraufhin eine RFC-konforme Implementierung im Fall eines offenen Ports nicht antworten und im Falle eines geschlossenen Ports ein RST senden sollte - Ping Scan – Option -sP
Sendet zunächst ein reguläres Ping-Paket, falls keine Antwort eintrifft, verfährt es wie -sT (nicht root) oder -sS (root) - UDP Scan – Option -sU
Sendet UDP-Pakete der Länge 0 und wartet auf die Antwort Port Unreachable für geschlossene Ports (Gefahr von False Positives, falls Firewall diese Pakete blockiert!) - IP Protocol Scans – Option -sO
Sendet IP Pakete mit allen möglichen 255 IP-Protokoll-Typen und wartet auf Protocol Unreachable für nicht-laufende Protokolle (Gefahr von False Positives, falls Firewall diese Pakete blockiert!) - Version Detection und Fingerprinting – Optionen -sV, -O (gr. o), -A
Ermittelt die Versionen der laufenden Services (-sV), des Betriebssystems (-O) oder von Beidem (-A)
Zusatzparameter
- Geschwindigkeit – Option -T0 bis -T5
Rate, mit welcher die Testpakete gesendet werden
-T0: warte mind. 5 Minuten zwischen Paketen
-T5: sende mit maximaler Rate - IPv6 aktivieren – Option -6
- Redseligere Ausgabe (e) – Option -v
- Portbereich einschränken – Option -p
Portbereiche können mit Komma und Gedankenstrich getrennt werden:
Beispiel: -p 1,2,3,1000-2000,2500 scannt die Ports 1,2,3,2500 sowie 1000-2000