Nmap (Network Mapper) ist ein kostenloses Open-Source-Sicherheitstool, das zum Scannen von Netzwerken verwendet wird. Einige der Hauptfunktionen von Nmap sind die Suche nach offenen Ports, die Erkennung und Sicherheit von Diensten sowie die Prüfung von Schwachstellen.
Nmap wird am häufigsten über eine Befehlszeilenschnittstelle verwendet und ist für viele verschiedene Betriebssysteme wie Ubuntu, CentOS, Redhat, Free BSD und Mint verfügbar.
In diesem Tutorial werden wir uns einige der am häufigsten verwendeten Nmap-Befehle mit einigen Beispielen ansehen.
Installieren Sie NMAP
Standardmäßig ist nmap auf den meisten Linux-Distributionen wie Debian, Ubuntu, Hat, CentOS und Fedora nicht installiert. Aber es ist auf yum und apt repo für eine einfache Installation verfügbar.
Die folgenden Befehle installieren nmap unter Linux:
CentOS- und Redhat-basierte Systeme
$ sudo yum install nmap
Auf Ubuntu- und Debian-basierten Systemen
$ sudo apt-get install nmap
1. Bestimmten Host scannen
Um einen bestimmten Host zu scannen (dies setzt voraus, dass Sie bereits die IP oder den Hostnamen des Hosts kennen) und grundlegende Informationen anzuzeigen, verwenden Sie den Befehl:
$ nmap IP-address
Zum Beispiel
$ nmap 192.163.43.103
Der obige Befehl ist schnell und erzeugt innerhalb kurzer Zeit eine Ausgabe
Sie können beispielsweise auch anhand des Hostnamens anstelle der IP-Adresse scannen
$ nmap ubuntu-server
Um einen Bereich von IPs zu scannen, verwenden Sie die Syntax
$ nmap 192.163.43.1-103
Der Befehl scannt alle Hosts von IP 192.168.43.1 to 192.168.43.103
2. Führen Sie einen gründlichen Scan auf einem System durch
Mit dem -A
können Sie alle Informationen über ein Hostsystem preisgeben Flagge wie unten gezeigt. Dadurch werden alle Informationen zum Hostsystem angezeigt, z. B. das zugrunde liegende Betriebssystem, offene Ports, laufende Dienste und deren Versionen usw.
$ nmap -A 192.163.43.103
Aus der Ausgabe können Sie ersehen, dass der Befehl eine Betriebssystem- und Diensterkennung durchführt und Ihnen detaillierte Informationen wie den Diensttyp und seine Version sowie den Port, auf dem er ausgeführt wird, liefert. Die Ausführung des Befehls dauert normalerweise eine Weile, ist jedoch gründlich und gibt Ihnen alles, was Sie über das jeweilige Hostsystem benötigen.
3. Scannen eines bestimmten Ports
Um einen bestimmten Port zu scannen und zu überprüfen, ob er geöffnet ist, verwenden Sie das Flag -p in der folgenden Syntax:
$ nmap -p port_number IP-address
Um beispielsweise Port 80 auf einem Hostsystem zu scannen, führen Sie Folgendes aus:
$ nmap -p 80 192.168.43.103
Um eine Reihe von Ports zu scannen, zum Beispiel zwischen 80-433, verwenden Sie die Syntax:
$ nmap -p 25-443 192.168.43.13
or
$ nmap -p 80,443 192.168.43.13
4. Finden Sie den Namen des Host-Dienstes und seine Version
Um grundlegende Informationen über die auf einem Host ausgeführten Dienste zu überprüfen, verwenden Sie dann -sV
Flagge wie gezeigt:
$ nmap -sV 192.168.43.103
5. Scannen eines gesamten Netzwerksubnetzes
Um Geräte in einem Netzwerksubnetz zu scannen, verwenden Sie die CIDR-Notation wie gezeigt
$ nmap 192.168.43.0/24
6. Bestimmten Host beim Scannen ausschließen
Während Sie einen vollständigen Netzwerkscan durchführen, können Sie einen bestimmten Host mit --exclude
ausschließen Flagge . Im folgenden Beispiel schließen wir unsere Kali-Linux-Maschine vom Scannen aus.
$ nmap 192.168.43.* --exclude 192.168.43.8
7. Hostschnittstellen und -routen anzeigen
Um Schnittstellen und Routen auf einem bestimmten Host anzuzeigen, verwenden Sie --iflist
Flagge wie gezeigt.
$ nmap 192.168.43.103 --iflist
8. Remote-Host mit TCP ACK und TCP Syn scannen
Manchmal können Firewalls ICMP-Anfragen blockieren, die die Scan-Ergebnisse beeinträchtigen. In diesem Fall verwenden wir TCP syn (PS) und TCP ACK (PA), um die gewünschten Ergebnisse zu erzielen.
$ nmap -PS 192.168.43.103
$ nmap -PA 192.168.43.103
9. Scannen, um Firewall-Einstellungen zu erkennen
Sie können das Nmap-Tool verwenden, um einen Scan durchzuführen, um anzuzeigen, ob die Firewall wie gezeigt geöffnet ist oder nicht
$ nmap -sA 192.168.43.223
Zunächst ist die Firewall deaktiviert und läuft daher nicht. (Ports sind ungefiltert). Im zweiten Fall wurde die Firewall aktiviert und die Chancen, offene Ports zu entdecken, sind minimal.
10. Scannen von TCP- oder UDP-Ports
Um auf dem Host geöffnete TCP-Ports zu scannen, verwenden Sie -sT
Flagge wie gezeigt:
$ nmap -sT 192.168.43.103
Verwenden Sie zum Scannen von UDP-Ports den -sU
Flagge
$ nmap -sU 192.168.43.103
11. Scanergebnisse in einer Datei speichern
Nachdem Sie Ihren Scan abgeschlossen haben, können Sie die Ergebnisse in einer Textdatei speichern, indem Sie das Flag -oN verwenden und die Ausgabedatei wie unten gezeigt angeben:
$ nmap -oN scan.txt 192.168.43.103
Die Datei wird in Ihrem aktuellen Arbeitsverzeichnis erstellt. Um die Ansicht anzuzeigen, verwenden Sie einfach den cat-Befehl wie gezeigt:
$ cat results.txt
Außerdem können Sie das Umleitungssymbol (>) größer als verwenden, um die Ausgabe beispielsweise in eine andere Datei umzuleiten,
$ nmap 192.168.43.103 > output.txt
12. Scannen Sie mit einer Reihe von Nmap-Skripten
Nmap ist vollgepackt mit zahlreichen und mächtigen Skripten, die zum Scannen auf Schwachstellen verwendet werden und dadurch Schwachstellen in einem System aufzeigen. Um den Speicherort von NSE-Skripten abzurufen, führen Sie einfach den folgenden Befehl aus:
$ locate *nse
Sie können ein Nmap-Skript mit --script
laden Option wie gezeigt.
$ nmap -sV --script=mysql-info.nse 192.168.43.103
Um mit den meisten Standardskripten zu scannen, verwenden Sie die Syntax
$ nmap -sC 192.168.43.103
Wenn Sie nach Automatisierung suchen, ist NSE die Antwort (NMAP Scripting Engine)
Schlussfolgerung
Wenn Sie nach Automatisierung suchen, ist NSE die Antwort (NMAP Scripting Engine). Um Hilfe zu Befehlen auf Nmap zu erhalten, führen Sie einfach $ nmap -h
aus . Und das ist alles, was wir zu diesem Thema hatten. Wir hoffen, dass Sie den nmap-Befehl verwenden, um Ihr Netzwerk zu scannen und mehr Details über Ihre Host-Systeme zu entdecken.