LINUXMAKER, OpenSource, Tutorials

Die wichtigsten Nmap-Scans

Die im Folgenden vorgestellten Nmap-Scan-Optionen beinhalten einige Nmap-Kommandos, die in vielen Situationen hilfreich sein können und die man zumindest einmal ausprobiert haben sollte.

  • Da oft Rechte über den normalen Benutzer verlangt werden, solltendie Nmap-Kommandos immer als "root" ausgeführt werden.

  • Die Option "-oG -" sorgt für eine übersichtlichere Darstellung im Falle eines Network-Scans.

  • Wenn ein Scan länger dauert, dann gibt Nmap mit der Option "--stats-every 60s" alle 60 Sekunden eine statistische Rückmeldung.

  • Das Scan-Ziel (IP-Adresse oder Hostname) ist richtig zu wählen.

Klassischer Ping-Scan (Network-Scan)

nmap -PE -sn -oG - 192.168.0.1/24

Der klassische Ping-Scan mit ICMP—Echo-Requests (-PE), aber ohne Port-Scan (-sn).

Erweiterter Ping-Scan (Network-Scan)

nmap -sP -oG - 192.168.0.1/24

Dieser TCP-Ping-Scan ist eigentlich kein Scan des ICMP-Protocols, sondern eher eine sinnvolle Erweiterung zu einem klassischen Ping.
Der TCP-Ping-Scan kombiniert den klassischen Ping (ICMP-Echo) mit dem TCP-SYN-Scan. Damit funktioniert der TCP-Ping-Scan manchmal besser als ein klassischer Ping respektive als ein einfacher ICMP-Echo-Request.

SYN-TOP100-Port-Scan (Host-Fast-Scan)

nmap -sS -F 192.168.0.1

Dieser TCP-SYN-Port-Scan ist auf wenige Default-Ports begrenzt (-F) und wird somit schneller.
Dieser Port-Scan ist geeignet, um einen bestimmten Host, den man per Host-Discovery (z. B. per Ping-Scan) ermittelt hat, etwas intensiver zu untersuchen.

SYN/Version-All-Port-without-Ping-Scan (Host-Main-Scan)

nmap -sV -Pn -p0- --reason --stats-every 60s 192.168.0.1

Dieser TCP-SYN-Port-Scan wäre der nächste Schritt, wenn der vorherige Fast-Scan keine ausreichenden Informationen liefert, aber trotzdem Schwachstellen vermutet werden.
Dieser TCP-SYN-Port-Scan prüft alle Ports (-p0-) und ermittelt bei den als offen erkannte Ports auf lauschende Anwendungen, Dienste und deren Version (-sV). Hat ein Port keinen definierten Zustand wird der Grund dafür angegeben (--reason).

Aggressive-All-Host-All-Port-Scan (Network-Main-Scan)

nmap -sV -Pn -p0- -T4 -A -oG - --reason --stats-every 60s 192.168.0.1/24

Dieser Port-Scan stellt einen typischen Anwendungsfall für einen Pentest in einem Netzwerk dar (sollte möglichst nur im eigenen Netzwerk erfolgen und nicht in fremden Netzen oder ohne Genehmigung). Die Tatsache, dass dieser Scan eine hohe Netzwerk-Last erzeugt (alle Hosts, alle Ports), sollte einem bewusst sein.

Dieser Port-Scan prüft alle Hosts und alle Ports (-p0-) und ermittelt bei den als offen erkannte Ports auch lauschende Anwendungen, Dienste und deren Version (-sV). Aktiviert ist dabei der "aggressive mode" (-A), bei dem OS Detection, Version Detection, Script-Scanning und Traceroute eingeschaltet sind. Hat ein Port keinen definierten Zustand wird der Grund dafür angegeben (--reason).
Gleichzeitig wird darauf verzichtet, jeden Host auf Erreichbarkeit zu prüfen (-Pn). Das heißt, der Port-Scan wird bei jeder Adresse durchgeführt.
Das bedeutet generell, dieser Nmap-Scan wird sehr lange dauern.

TCP-ACK-Scan (Host-Fast-Scan)

nmap -sA -F 192.168.0.1

Der TCP-ACK-Scan ist relativ raffiniert. Denn er erkennt einen Host als erreichbar, obwohl er mit einem herkömmlichen TCP-SYN-Scan als nicht erreichbar erkannt wurde.
Dennoch ist das Ergebnis mit Vorsicht zu genießen, denn das Anwenden des TCP-ACK-Scans macht nur dann Sinn, wenn man einen Paketfilter vermutet, den man umgehen will.

TCP-FIN-Scan (Host-Fast-Scan)

nmap -sF -F 192.168.0.1

Der TCP-FIN-Scan eignet sich zum Umgehen von Paketfiltern und zeigt an, ob offene Ports gefiltert werden.

UDP-Port-Scan (Host-Fast-Scan)

nmap -sU -F 192.168.0.1

Beim Port-Scan wird gerne vernachlässigt, dass es neben TCP- auch UDP-Ports gibt. Dasselbe trifft auf Netzwerk-Administratoren zu, die sich gegen Angriffe auf TCP-Ports, aber nicht auf UDP-Ports absichern. Hier hilft dieses Kommando, wenn man sich nur mal schnell und ohne Aufsehen eine groben Überblick der Default-Ports verschaffen möchte.

UDP-All-Port-Scan (Host-Main-Scan)

nmap -sU -p0- --reason --stats-every 60s --max-rtt-timeout 100ms --max-retrie 1 192.168.0.1

Dieser UDP-Port-Scan kann schon auf nur einen Host sehr lange dauern. Deshalb sollte man es vermeiden, ihn auf ein ganzes Subnetz anzuwenden. Gegebenenfalls sind die Zeitparameter an das jeweilige lokale Netzwerk anzupassen.

List­-Scan (Network-Main-Scan)

nmap -sL 192.168.0.1/24

Dieses einfach gestrickte Kommando listet einfach alle IP-Adressen mit Ihren Hostnamen auf. Dazu wird zu jeder IP-Adresse eine Namensauflösung durchgeführt. Hierbei muss berücksichtigt werden, dass dieser Scan nicht sehr zuverlässig ist, weil sich nicht von allen IP-Adressen der Hostname ermitteln lässt.
So gibt es gute Gründe, mit diesem Scan zu beginnen. Denn der Hostnamen gibt häufig Auskunft über die Funktion eines Hosts. So lassen sich auf diese Weise schneller lohnenswerte Ziele identifizieren. Zusätzlich kann eine Überprüfung erfolgen, ob überhaupt der richtige IP-Bereich gescannt wird. Viel entescheidender ist, dass eine Namens- oder Adressauflösung im Netzwerk unauffällig ist. Denn dadurch, dass die Namensauflösung dezentral erfolgt, bekommt der betreffende Host gar nichts von dem Scan mit.