NMAP(1) Nmap-Referenz-Handbuch NMAP(1) NAME nmap - Netzwerk-Analysewerkzeug und Sicherheits-/Portscanner UBERSICHT nmap [Scan Type...] [Options] {target specification} BESCHREIBUNG Nmap (,,Network Mapper") ist ein Open-Source-Werkzeug fur die Netzwerkanalyse und Sicherheitsuberprufung. Es wurde entworfen, um grosse Netzwerke schnell zu scannen, auch wenn es bei einzelnen Hosts auch gut funktioniert. Nmap benutzt rohe IP-Pakete auf neuartige Weise, um festzustellen, welche Hosts im Netzwerk verfugbar sind, welche Dienste (Anwendungsname und -version) diese Hosts bieten, welche Betriebssysteme (und Versionen davon) darauf laufen, welche Art von Paketfiltern/-Firewalls benutzt werden sowie Dutzende anderer Eigenschaften. Auch wenn Nmap ublicherweise fur Sicherheitsuberprufungen verwendet wird, wird es von vielen Systemen und Netzwerkadministratoren fur Routineaufgaben benutzt, z.B. Netzwerkinventarisierung, Verwaltung von Ablaufplanen fur Dienstaktualisierungen und die Uberwachung von Betriebszeiten von Hosts oder Diensten. Die Ausgabe von Nmap ist eine Liste gescannter Ziele mit zusatzlicher Information zu jedem, abhangig von den benutzten Optionen. Die entscheidende Information dabei steht in der ,,Tabelle der interessanten Ports". Diese Tabelle listet die Portnummer und das -protokoll sowie den Dienstnamen und -zustand auf. Der Zustand ist entweder offen, gefiltert, geschlossen oder ungefiltert. Offen bedeutet, dass auf diesem Port des Zielrechners eine Anwendung auf eingehende Verbindungen/Pakete lauscht. Gefiltert bedeutet, dass eine Firewall, ein Filter oder ein anderes Netzwerkhindernis den Port blockiert, so dass Nmap nicht wissen kann, ob er offen oder geschlossen ist. Fur geschlossene Ports gibt es keine Anwendung, die auf ihnen lauscht, auch wenn sie jederzeit geoffnet werden konnten. Als ungefiltert werden Ports dann klassifiziert, wenn sie auf Nmaps Testpakete antworten, Nmap aber nicht feststellen kann, ob sie offen oder gechlossen sind. Nmap gibt die Zustandskombinationen offen|gefiltert und geschlossen|gefiltert an, wenn es nicht feststellen kann, welcher der beiden Zustande fur einen Port zutrifft. Die Port-Tabelle enthalt eventuell auch Details zur Softwareversion, sofern eine Versionserkennung verlangt wurde. Wurde ein IP-Protokoll-Scan verlangt (-sO), dann bietet Nmap Angaben uber die unterstutzten IP-Protokolle statt uber lauschende Ports. Zusatzlich zur Tabelle der interessanten Ports kann Nmap weitere Angaben uber Ziele bieten, darunter Reverse-DNS-Namen, Mutmassungen uber das benutzte Betriebssystem, Geratearten und MAC-Adressen. Einen typischen Nmap-Scan sehen Sie in Beispiel 1. Die einzigen in diesem Beispiel benutzten Nmap-Argumente sind -A fur die Betriebssystem- und Versionserkennung, Script-Scanning und Traceroute und -T4 fur eine schnellere Ausfuhrung. Danach kommen die Namen der Zielhosts. Beispiel 1. Ein reprasentativer Nmap-Scan # nmap -A -T4 scanme.nmap.org Starting Nmap ( https://nmap.org ) Interesting ports on scanme.nmap.org (64.13.134.52): Not shown: 994 filtered ports PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 4.3 (protocol 2.0) 25/tcp closed smtp 53/tcp open domain ISC BIND 9.3.4 70/tcp closed gopher 80/tcp open http Apache httpd 2.2.2 ((Fedora)) |_ HTML title: Go ahead and ScanMe! 113/tcp closed auth Device type: general purpose Running: Linux 2.6.X OS details: Linux 2.6.20-1 (Fedora Core 5) TRACEROUTE (using port 80/tcp) HOP RTT ADDRESS [Cut first seven hops for brevity] 8 10.59 so-4-2-0.mpr3.pao1.us.above.net (64.125.28.142) 9 11.00 metro0.sv.svcolo.com (208.185.168.173) 10 9.93 scanme.nmap.org (64.13.134.52) Nmap done: 1 IP address (1 host up) scanned in 17.00 seconds Die neueste Version von Nmap erhalt man unter https://nmap.org, und die neueste Version der Manpage ist unter https://nmap.org/book/man.html verfugbar. UBERSICHT DER OPTIONEN Diese Ubersicht wird ausgegeben, wenn Nmap ohne Argumente aufgerufen wird; die neueste Version davon ist immer unter https://nmap.org/data/nmap.usage.txt verfugbar. Sie hilft dabei, sich die am haufigsten benutzten Optionen zu merken, ist aber kein Ersatz fur die detaillierte Dokumentation im Rest dieses Handbuchs. Einige obskure Optionen werden hier nicht einmal erwahnt. Nmap 4.85BETA8 ( https://nmap.org ) Usage: nmap [Scan Type(s)] [Options] {target specification} TARGET SPECIFICATION: Can pass hostnames, IP addresses, networks, etc. Ex: scanme.nmap.org, microsoft.com/24, 192.168.0.1; 10.0.0-255.1-254 -iL : Input from list of hosts/networks -iR : Choose random targets --exclude : Exclude hosts/networks --excludefile : Exclude list from file HOST DISCOVERY: -sL: List Scan - simply list targets to scan -sP: Ping Scan - go no further than determining if host is online -PN: Treat all hosts as online -- skip host discovery -PS/PA/PU[portlist]: TCP SYN/ACK or UDP discovery to given ports -PE/PP/PM: ICMP echo, timestamp, and netmask request discovery probes -PO[protocol list]: IP Protocol Ping -n/-R: Never do DNS resolution/Always resolve [default: sometimes] --dns-servers : Specify custom DNS servers --system-dns: Use OS's DNS resolver --traceroute: Trace hop path to each host SCAN TECHNIQUES: -sS/sT/sA/sW/sM: TCP SYN/Connect()/ACK/Window/Maimon scans -sU: UDP Scan -sN/sF/sX: TCP Null, FIN, and Xmas scans --scanflags : Customize TCP scan flags -sI : Idle scan -sO: IP protocol scan -b : FTP bounce scan PORT SPECIFICATION AND SCAN ORDER: -p : Only scan specified ports Ex: -p22; -p1-65535; -p U:53,111,137,T:21-25,80,139,8080 -F: Fast mode - Scan fewer ports than the default scan -r: Scan ports sequentially - don't randomize --top-ports : Scan most common ports --port-ratio : Scan ports more common than SERVICE/VERSION DETECTION: -sV: Probe open ports to determine service/version info --version-intensity : Set from 0 (light) to 9 (try all probes) --version-light: Limit to most likely probes (intensity 2) --version-all: Try every single probe (intensity 9) --version-trace: Show detailed version scan activity (for debugging) SCRIPT SCAN: -sC: equivalent to --script=default --script=: is a comma separated list of directories, script-files or script-categories --script-args=: provide arguments to scripts --script-trace: Show all data sent and received --script-updatedb: Update the script database. OS DETECTION: -O: Enable OS detection --osscan-limit: Limit OS detection to promising targets --osscan-guess: Guess OS more aggressively TIMING AND PERFORMANCE: Options which take