Nmap, die Abkürzung für Network-Mapper, ist ein freies und quelloffenes Tool, das für die Überprüfung von Schwachstellen, das Scannen von Ports und natürlich für das Mapping von Netzwerken verwendet. Obwohl es bereits 1997 entwickelt wurde, ist Nmap nach wie vor der Standard, an dem alle anderen ähnlichen Tools, gemessen werden.
Nmap hat seine Vorrangstellung dank der großen Gemeinschaft von Entwicklern und Programmierern, die es pflegen und aktualisieren. Aufgrund seiner flexiblen, quelloffenen Codebasis kann es so modifiziert werden, dass es in den meisten angepassten oder stark spezialisierten Umgebungen funktioniert. Es gibt Distributionen von Nmap speziell für Windows-, Mac- und Linux-Umgebungen, aber Nmap unterstützt auch weniger populäre oder ältere Betriebssysteme wie Solaris, AIX oder AmigaOS. Der Quellcode ist in C, C++, Perl und Python verfügbar.
Um Nmap einzusetzen, mussten die Benutzer ursprünglich über Programmierkenntnisse verfügen oder sich zumindest mit Konsolenbefehlen oder nicht-grafischen Schnittstellen auskennen. Das änderte sich mit der Einführung des Zenmap-Tools für Nmap, das eine grafische Oberfläche hinzufügt, die das Starten des Programms und die Analyse der zurückgegebenen Ausgabe, die es erzeugt, viel zugänglicher macht.
Zenmap wurde entwickelt, um Anfängern die Nutzung des Tools zu ermöglichen. Wie Nmap ist auch Zenmap kostenlos, und der Quellcode ist offen und steht jedem zur Verfügung, der ihn benutzen oder verändern möchte.
Funktionen, die Zenmap bietet sind beispielsweise:Häufig verwendete Scans können als Profile gespeichert werden, damit sie einfach wiederholt ausgeführt werden können. Ein Befehlsersteller ermöglicht die interaktive Erstellung von Nmap-Befehlszeilen. Scan-Ergebnisse können gespeichert und später angesehen werden. Gespeicherte Scan-Ergebnisse können miteinander verglichen werden, um zu sehen, wie sie sich unterscheiden. Und die Ergebnisse der letzten Scans lassen sich in einer durchsuchbaren Datenbank speichern.
Das Tool wurde ursprünglich von Gordon Lyon in der Computersprache C++ entwickelt. Er veröffentlichte das Tool über das Phrack Magazine unter dem Pseudonym Fyodor Vaskovitch, das er nach der Lektüre von Fyodor Dostojewskis „Notizen aus dem Untergrund“ erfand. Obwohl heute jeder weiß, wer Lyon ist, benutzt er immer noch den Namen Fyodor, um seine Arbeit in der Nmap-Community zu kennzeichnen.
Wie funktioniert Nmap?
Das Herzstück von Nmap ist das Scannen von Ports. Es funktioniert so, dass die Benutzer eine Liste von Zielen in einem Netzwerk bestimmen, über die sie Informationen erhalten wollen. Die Benutzer müssen keine spezifischen Ziele identifizieren, was gut ist, weil die meisten Administratoren keinen vollständigen Überblick über alles haben, was die potenziell Tausende von Ports in ihrem Netzwerk nutzen. Stattdessen stellen sie eine Reihe von Ports zusammen, die gescannt werden sollen.
Es ist auch möglich, alle Netzwerk-Ports zu scannen, was allerdings sehr viel Zeit in Anspruch nimmt und eine Menge verfügbarer Bandbreite verbraucht. Außerdem würde ein solch umfangreicher Port-Scan, je nach Art der passiven Schutzmaßnahmen, die im Netzwerk eingesetzt werden, wahrscheinlich Sicherheitswarnungen auslösen. Daher verwenden die meisten Anwender Nmap in begrenzteren Einsätzen oder teilen verschiedene Teile ihres Netzwerks für zeitlich geplante Scans auf.
Die Benutzer können nicht nur einen Bereich von zu scannenden Zielen einrichten, sondern auch die Tiefe jedes Scans steuern. Ein einfacher oder begrenzter Scan könnte beispielsweise Informationen darüber liefern, welche Ports offen sind und welche durch Firewall-Einstellungen geschlossen wurden. Detailliertere Scans könnten zusätzlich Informationen darüber erfassen, welche Art von Geräten diese Ports benutzen, welche Betriebssysteme auf ihnen laufen und sogar die Dienste, die auf ihnen aktiv sind. Nmap kann auch tiefere Informationen wie die Version der entdeckten Dienste ermitteln. Das macht es zu einem perfekten Tool für das Auffinden von Schwachstellen oder die Unterstützung bei Patch-Management-Maßnahmen.
Die Steuerung der Scans erforderte bisher Konsolenbefehle, was natürlich eine gewisse Einarbeitung voraussetzte. Aber mit der neuen grafischen Zenmap-Oberfläche kann nun fast jeder Nmap mitteilen, was es entdecken soll – mit oder ohne formale Schulung. In der Zwischenzeit können Profis weiterhin die Konsolenbefehle verwenden, die sie schon immer benutzt haben, was es zu einem nützlichen Tool für Experten und Anfänger gleichermaßen macht.
Ist Nmap ein Sicherheitsrisiko?
Man könnte zwar argumentieren, dass Nmap ein perfektes Hacking-Tool ist, aber viele der tiefergehenden Scan-Aktivitäten erfordern Root-Zugriff und entsprechende Privilegien. Jemand von außen kann Nmap nicht einfach auf ein Zielnetzwerk richten, für das er keine Zugriffsrechte hat, und es auf magische Weise Schwachstellen aufdecken lassen, die er dann ausnutzen kann. Nicht nur das, der Versuch würde wahrscheinlich eine kritische Sicherheitswarnung durch alle Verteidigungs- oder Netzwerküberwachungs-Tools auslösen.
Das soll nicht heißen, dass Nmap in den falschen Händen nicht gefährlich sein könnte, vor allem, wenn es von einem abtrünnigen Systemadministrator oder jemandem mit gestohlenen Anmeldedaten eingesetzt wird. Dies wurde 2016 in dem Oliver-Stone-Film Snowden über den mutmaßlichen Verräter Edward Snowden gezeigt.
Was macht Nmap?
Wenn es richtig eingesetzt wird, kann Nmap sowohl für die Optimierung als auch für den Schutz von Netzwerken und Informationen von unschätzbarem Wert sein. Alle Daten, die von den mit Nmap gescannten Ports zurückgeschickt werden, werden von dem Programm gesammelt und zusammengestellt. Auf der Grundlage dieser Informationen gibt es mehrere Schlüsselaktivitäten, für die die meisten Benutzer das Tool einsetzen. Dazu gehören:
- Netzwerk-Mapping: Dies ist der Hauptgrund, warum Nmap entwickelt wurde, und es ist nach wie vor eine der wichtigsten Anwendungen. Bei der so genannten Host-Erkennung identifiziert Nmap die Gerätetypen, die die gescannten Ports aktiv nutzen. Dazu gehören Server, Router, Switches und andere Geräte. Die Benutzer können auch sehen, wie diese Geräte miteinander verbunden sind und wie sie sich zu einem Netzwerkplan zusammenfügen.
- Erkennung von Port-Regeln: Nmap kann selbst mit einem Low-Level-Scan leicht feststellen, ob ein Port durch etwas wie eine Firewall geöffnet oder geschlossen ist. Viele IT-Experten verwenden Nmap, um ihre Arbeit bei der Programmierung von Firewalls zu überprüfen. Sie können sehen, ob ihre Richtlinien die gewünschte Wirkung haben und ob ihre Firewalls richtig funktionieren.
- Jagd auf die Schatten-IT: Da Nmap die Art und den Standort von Geräten in einem Netzwerk aufdeckt, kann es dazu verwendet werden, Dinge zu identifizieren, die dort gar nicht sein sollten. Diese Geräte werden als Schatten-IT bezeichnet, weil ihr Vorhandensein in einem Netzwerk nicht offiziell genehmigt ist oder manchmal sogar absichtlich versteckt wird. Schatten-IT kann gefährlich sein, weil solche Geräte nicht Teil einer Sicherheitsüberprüfung oder eines Programms sind. Wenn beispielsweise jemand heimlich einen Xbox-Spieleserver in einem Unternehmensnetzwerk platziert, kann dies nicht nur die Bandbreite belasten, sondern auch als Sprungbrett für einen Angriff dienen, vor allem, wenn er nicht mit den neuesten Sicherheits-Patches gewartet wird.
- Erkennung von Betriebssystemen: Nmap kann die Typen von Betriebssystemen, die auf den entdeckten Geräten laufen, in einem Prozess namens OS-Fingerprinting ermitteln. Dies liefert im Allgemeinen Informationen über den Namen des Geräteherstellers (Dell, HP usw.) und das Betriebssystem. Mit einem tieferen Nmap-Scan können Sie sogar Dinge wie den Patch-Level des Betriebssystems und die geschätzte Betriebszeit des Geräts ermitteln.
- Entdeckung von Diensten: Die Fähigkeit, Dienste zu entdecken, hebt Nmap über das Niveau eines gewöhnlichen Mapping-Tools hinaus. Anstatt einfach nur festzustellen, dass ein Gerät existiert, können Benutzer einen tieferen Scan auslösen, um herauszufinden, welche Funktionen entdeckte Geräte erfüllen. Dazu gehört auch die Feststellung, ob sie als Mailserver, Webserver, Datenbank-Repository, Speichergerät oder fast alles andere fungieren. Je nach Scan kann Nmap auch darüber berichten, welche spezifischen Anwendungen laufen und welche Version dieser Anwendungen verwendet wird.
- Schwachstellen-Scanning: Nmap ist kein spezielles Tool zum Scannen von Schwachstellen, da es keine Datenbank mit bekannten Schwachstellen oder irgendeine Art von künstlicher Intelligenz unterhält, die potenzielle Bedrohungen identifizieren könnte. Unternehmen, die regelmäßig Sicherheitsinformationen aus Bedrohungsfeeds oder anderen Quellen erhalten, können Nmap jedoch verwenden, um ihre Anfälligkeit für bestimmte Bedrohungen zu überprüfen.
Wenn beispielsweise eine neu entdeckte Schwachstelle nur eine bestimmte Anwendung oder einen Dienst betrifft, auf dem eine ältere Version der Software läuft, kann Nmap verwendet werden, um zu überprüfen, ob alle Programme, die derzeit auf Netzwerkressourcen laufen, diese Bedingungen erfüllen. Wenn etwas gefunden wird, könnten IT-Teams vermutlich vorrangig dafür sorgen, dass diese Systeme so schnell wie möglich gepatcht werden, um die Schwachstelle zu beseitigen, bevor ein Angreifer dieselbe Schwachstelle ausnutzen kann.
Was ist die Zukunft von Nmap?
Obwohl das Nmap-Tool bereits 25 Jahre alt ist, entwickelt es sich ständig weiter. Wie andere scheinbar uralte Technologien wie Ethernet oder Spanning-Tree wird es von einer aktiven Gemeinschaft von Experten gepflegt, die es relevant und auf dem neuesten Stand halten. Und im Fall von Nmap gehört zu dieser Gemeinschaft auch sein sehr aktiver Schöpfer, der online immer noch unter dem Namen Fyodor auftritt.
Andere Weiterentwicklungen wie das neue Tool Zenmap machen es noch nützlicher, vor allem für diejenigen, die nicht gerne mit Konsolen oder Befehlszeilen arbeiten. Die grafische Oberfläche von Zenmap ermöglicht es den Benutzern, mit nur wenigen Klicks Ziele einzurichten und die gewünschten Scans zu konfigurieren. Das wird Nmap helfen, eine noch größere Benutzerbasis zu finden.
Und schließlich gibt es heutzutage zwar viele andere Tools, die ähnliche Funktionen ausführen können, aber keines von ihnen hat die bewährte Erfolgsbilanz von Nmap. Und nicht nur das: Nmap war schon immer völlig kostenlos und stand zum Herunterladen bereit. Aufgrund all dieser Faktoren ist es fast eine sichere Sache, dass Nmap in den nächsten 25 Jahren genauso nützlich und relevant sein wird wie im letzten Vierteljahrhundert.
Von Mathias Hein, Consultant, Buchautor, Jounalist