Nmap (“Network Mapper”) ist ein Open-Source-Werkzeug
für die Netzwerkanalyse und Sicherheitsüberprüfung. Es wurde entworfen,
um große 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 verfügbar 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 üblicherweise für Sicherheitsüberprüfungen
verwendet wird, wird es von vielen Systemen und Netzwerkadministratoren
für Routineaufgaben benutzt, z.B. Netzwerkinventarisierung, Verwaltung von
Ablaufplänen für Dienstaktualisierungen und die Überwachung von
Betriebszeiten von Hosts oder Diensten.
Die Ausgabe von Nmap ist eine Liste gescannter Ziele mit zusätzlicher
Information zu jedem, abhängig 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.
Für geschlossene
Ports gibt es keine Anwendung, die auf ihnen lauscht,
auch wenn sie jederzeit geöffnet werden könnten.
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 Zustände
für einen Port zutrifft. Die Port-Tabelle enthält eventuell auch Details
zur Softwareversion, sofern eine Versionserkennung verlangt wurde.
Wurde ein IP-Protokoll-Scan verlangt (-sO), dann
bietet Nmap Angaben über die unterstützten IP-Protokolle
statt über lauschende Ports.
Zusätzlich zur Tabelle der interessanten Ports kann Nmap weitere
Angaben über Ziele bieten, darunter Reverse-DNS-Namen, Mutmaßungen über
das benutzte Betriebssystem, Gerätearten und MAC-Adressen.
Einen typischen Nmap-Scan sehen Sie in
Example 1.
Die einzigen in diesem Beispiel benutzten Nmap-Argumente sind
-A für die Betriebssystem- und Versionserkennung,
Script-Scanning und Traceroute und -T4 für eine
schnellere Ausführung. Danach kommen die Namen der Zielhosts.
Example 1. Ein repräsentativer Nmap-Scan
# nmap -A -T4 scanme.nmap.org
Starting Nmap ( http://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 erhält man unter
http://nmap.org, und die neueste Version der Manpage
ist unter http://nmap.org/book/man.html verfügbar.