Nmap ist die Abkürzung für Network Mapper. Es handelt sich um ein Open-Source-Sicherheitstool für Netzwerkuntersuchungen, Sicherheitsscans und Audits. Der Nmap-Befehl verfügt jedoch über eine Vielzahl von Optionen, die das Dienstprogramm robuster und für neue Benutzer schwieriger zu handhaben machen können. Ziel dieses Leitfadens ist es, einen Benutzer in das Nmap-Befehlszeilentool einzuführen, um einen Host oder ein Netzwerk zu scannen und die möglichen Schwachstellen in den Hosts herauszufinden. Sie werden auch lernen, wie Sie Nmap für offensive und defensive Zwecke einsetzen können. Sehen wir uns einige gängige Nmap-Befehlsbeispiele an, die auf Linux oder Unix-ähnlichen Systemen laufen.
- Was ist Nmap und wofür wird es verwendet?
- Nmap-Befehlsbeispiele in Linux und Unix – Beispiel-Setup (LAB) für
- Wie installiere ich nmap unter Linux?
- Scannen Sie einen einzelnen Host oder eine IP-Adresse (IPv4) mit nmap
- Scannen mehrerer IP-Adressen oder Subnetze (IPv4)
- Liste der Hosts/Netzwerke aus einer Datei lesen (IPv4)
- Hosts/Netzwerke (IPv4) vom nmap-Scan ausschließen Beispiele
- Schalten Sie das Skript zur Erkennung von Betriebssystemen und Versionen (IPv4) mit nmap ein
- Finden Sie heraus, ob ein Host/Netzwerk durch eine Firewall geschützt ist, indem Sie den Befehl namp verwenden
- Scannen Sie einen Host, wenn er durch eine Firewall geschützt ist
- Scannen eines IPv6-Hosts/einer IPv6-Adresse
- Scannen Sie ein Netzwerk und finden Sie heraus, welche Server und Geräte in Betrieb sind
- Wie führe ich einen schnellen Scan mit dem namp durch?
- Anzeigen des Grundes, warum ein Port in einem bestimmten Zustand ist
- Nur offene (oder möglicherweise offene) Ports mit dem nmap-Befehl in Linux anzeigen
- Anzeigen aller gesendeten und empfangenen Pakete
- Anzeigen von Host-Schnittstellen und Routen
- Wie scanne ich bestimmte Ports mit nmap?
- 16: Der schnellste Weg, alle Ihre Geräte/Computer auf offene Ports zu scannen
- Wie erkenne ich ein entferntes Betriebssystem mit Hilfe von nmap?
- Wie erkenne ich Versionsnummern von Remote-Diensten (Server/Daemon)?
- Scannen Sie einen Host mit TCP ACK (PA) und TCP Syn (PS) ping
- Scannen Sie einen Host mit dem IP-Protokoll ping
- Scannen Sie einen Host mit UDP ping
- Finden Sie die am häufigsten verwendeten TCP-Ports mit TCP SYN Scan
- Scannen Sie einen Host auf UDP-Dienste (UDP-Scan)
- Scan für IP-Protokoll
- Scannen Sie eine Firewall auf Sicherheitsschwächen
- Scannen Sie eine Firewall auf fragmentierte Pakete
- Tarnt einen Scan mit Decoys
- Scannen einer Firewall auf MAC-Adress-Spoofing
- Wie speichere ich die Ausgabe in einer Textdatei?
- Scannen Sie nach Webservern und leiten Sie sie zum Scannen in Nikto ein
- Beschleunigen Sie nmap
- Sind Sie kein Fan von namp-Kommandozeilentools?
- Wie erkenne und blockiere ich Port-Scans auf Linux- und Unix/BSD-Servern?
- Abschluss
Was ist Nmap und wofür wird es verwendet?
Nmap in Aktion
Aus der Manpage:
Nmap („Network Mapper“) ist ein Open-Source-Tool zur Netzwerkuntersuchung und Sicherheitsüberprüfung. Es wurde entwickelt, um große Netzwerke schnell zu scannen, obwohl es auch mit einzelnen Hosts gut funktioniert. Nmap verwendet rohe IP-Pakete auf neuartige Weise, um festzustellen, welche Hosts im Netzwerk verfügbar sind, welche Dienste (Anwendungsname und -version) diese Hosts anbieten, welche Betriebssysteme (und Betriebssystemversionen) sie verwenden, welche Art von Paketfiltern/Firewalls im Einsatz sind und Dutzende anderer Merkmale. Nmap wird in der Regel für Sicherheitsprüfungen verwendet, aber viele System- und Netzwerkadministratoren finden es auch nützlich für Routineaufgaben wie die Netzwerkinventarisierung, die Verwaltung von Zeitplänen für die Aktualisierung von Diensten und die Überwachung der Betriebszeit von Hosts oder Diensten.
Das Programm wurde ursprünglich von Gordon Lyon geschrieben und kann die folgenden Fragen leicht beantworten:
- Finde laufende Computer im lokalen Netzwerk
- Welche IP-Adressen hast du im lokalen Netzwerk gefunden?
- Ermitteln Sie das Betriebssystem Ihres Zielcomputers
- Finden Sie heraus, welche Ports auf dem Computer, den Sie gerade gescannt haben, offen sind?
- Sehen Sie nach, ob das System mit Malware oder Viren infiziert ist.
- Suchen Sie nach nicht autorisierten Servern oder Netzwerkdiensten in Ihrem Netzwerk.
- Finden und entfernen Sie Computer, die nicht dem Mindestsicherheitsniveau der Organisation entsprechen.
Nmap-Befehlsbeispiele in Linux und Unix – Beispiel-Setup (LAB) für
Port-Scanning kann in einigen Rechtsordnungen illegal sein. Richten Sie daher ein Labor wie folgt ein:
+---------+ +---------+ | Network | +--------+ | server1 |-----------+ swtich +---------|server2 | +---------+ | (sw0) | +--------+ +----+----+ | | +---------+----------------+ | wks01 Linux/macOS/Win | +--------------------------+
Wobei,
- wks01 Ihr Computer ist, auf dem entweder Linux/macOS (OS X) oder ein Unix-ähnliches Betriebssystem läuft. Er wird zum Scannen Ihres lokalen Netzwerks verwendet. Der nmap-Befehl muss auf diesem Computer installiert sein.
- Server1 kann mit Linux / Unix / MS-Windows Betriebssystemen betrieben werden. Dies ist ein ungepatchter Server. Sie können gerne ein paar Dienste wie Webserver, Fileserver usw. installieren.
- Server2 kann mit Linux- / Unix- / MS-Windows-Betriebssystemen betrieben werden. Dies ist ein vollständig gepatchter Server mit Firewall. Auch hier können Sie einige Dienste installieren, wie z.B. einen Web-Server, File-Server usw.
- Alle drei Systeme sind über einen Switch verbunden.
Wie installiere ich nmap unter Linux?
Siehe:
- Debian / Ubuntu Linux: Installieren Sie die Software nmap zum Scannen des Netzwerks
- CentOS / RHEL: Installieren Sie den Netzwerksicherheitsscanner nmap
- OpenBSD: Installieren Sie den Netzwerksicherheitsscanner nmap
Scannen Sie einen einzelnen Host oder eine IP-Adresse (IPv4) mit nmap
Abb.01: nmap-Ausgabe
Scannen mehrerer IP-Adressen oder Subnetze (IPv4)
nmap 192.168.1.1 192.168.1.2 192.168.1.3## works with same subnet i.e. 192.168.1.0/24 nmap 192.168.1.1,2,3
Sie können auch einen Bereich von IP-Adressen scannen:
nmap 192.168.1.1-20
Sie können einen Bereich von IP-Adressen mit einem Platzhalter scannen:
nmap 192.168.1.*
Schließlich scannen Sie ein ganzes Subnetz:
nmap 192.168.1.0/24
Liste der Hosts/Netzwerke aus einer Datei lesen (IPv4)
Mit der Option -iL können Sie die Liste der Zielsysteme aus einer Textdatei lesen. Dies ist nützlich, um eine große Anzahl von Hosts/Netzwerken zu scannen. Erstellen Sie eine Textdatei wie folgt:cat > /tmp/test.txt
Fügen Sie Namen wie folgt ein:
server1.cyberciti.biz192.168.1.0/24192.168.1.1/2410.1.2.3localhost
Die Syntax lautet wie folgt:
nmap -iL /tmp/test.txt
Hosts/Netzwerke (IPv4) vom nmap-Scan ausschließen Beispiele
Wenn Sie eine große Anzahl von Hosts/Netzwerken scannen, können Sie Hosts von einem Scan ausschließen:
nmap 192.168.1.0/24 --exclude 192.168.1.5nmap 192.168.1.0/24 --exclude 192.168.1.5,192.168.1.254
Oder die Liste aus einer Datei namens /tmp/exclude.txt
nmap -iL /tmp/scanlist.txt --excludefile /tmp/exclude.txt
Schalten Sie das Skript zur Erkennung von Betriebssystemen und Versionen (IPv4) mit nmap ein
nmap -A 192.168.1.254nmap -v -A 192.168.1.1nmap -A -iL /tmp/scanlist.txt
Finden Sie heraus, ob ein Host/Netzwerk durch eine Firewall geschützt ist, indem Sie den Befehl namp verwenden
## nmap command examples for your host ##nmap -sA 192.168.1.254nmap -sA server1.cyberciti.biz
Scannen Sie einen Host, wenn er durch eine Firewall geschützt ist
In diesem Nmap-Befehlsbeispiel werden wir einen Router/Wifi-Gerät scannen, das 192.168.1.1 als IP:
nmap -PN 192.168.1.1nmap -PN server1.cyberciti.biz
Scannen eines IPv6-Hosts/einer IPv6-Adresse
Die Option -6 ermöglicht das Scannen von IPv6 mit dem Befehl namp. Die Syntax lautet:
nmap -6 IPv6-Address-Herenmap -6 server1.cyberciti.biznmap -6 2607:f0d0:1002:51::4nmap -v A -6 2607:f0d0:1002:51::4
Scannen Sie ein Netzwerk und finden Sie heraus, welche Server und Geräte in Betrieb sind
Dies ist als Host Discovery oder Ping-Scan bekannt:
nmap -sP 192.168.1.0/24
So sieht es aus:
Wie führe ich einen schnellen Scan mit dem namp durch?
nmap -F 192.168.1.1nmap -6 -F IPv6_Address_Here
Anzeigen des Grundes, warum ein Port in einem bestimmten Zustand ist
nmap --reason 192.168.1.1nmap --reason server1.cyberciti.biz
Ausgaben:
Nur offene (oder möglicherweise offene) Ports mit dem nmap-Befehl in Linux anzeigen
Ausführen:
nmap --open 192.168.1.1nmap --open server1.cyberciti.biznmap --open 192.168.2.18
Scan-Ausgaben von meinem CentOS 7 Linux-Server:
Anzeigen aller gesendeten und empfangenen Pakete
nmap --packet-trace 192.168.1.1nmap --packet-trace server1.cyberciti.biz
Anzeigen von Host-Schnittstellen und Routen
Dies ist nützlich für die Fehlersuche (ip-Befehl oder route-Befehl oder netstat-Befehl wie die Ausgabe mit dem nmap-Befehl unter Linux)
nmap --iflist
Detaillierter Bericht, der mit dem Namp-Befehl erstellt wird:
Wie scanne ich bestimmte Ports mit nmap?
Beispielausgaben:
16: Der schnellste Weg, alle Ihre Geräte/Computer auf offene Ports zu scannen
nmap -T5 192.168.1.0/24nmap -T5 {sub/net}
Wie erkenne ich ein entferntes Betriebssystem mit Hilfe von nmap?
Mit der Option -O können Sie Anwendungen und Betriebssysteme eines entfernten Hosts identifizieren:
nmap -O 192.168.1.1nmap -O --osscan-guess 192.168.1.1nmap -v -O --osscan-guess 192.168.1.1
Beispielhafte Ausgaben:
Weitere Informationen finden Sie auch unter Fingerprinting eines Web-Servers und eines dns-Server-Kommandozeilen-Tools.
Wie erkenne ich Versionsnummern von Remote-Diensten (Server/Daemon)?
Öffnen Sie das Terminal und geben Sie dann den folgenden nmap-Befehl ein:
nmap -sV 192.168.1.1
Beispielhafte Ausgaben:
Scannen Sie einen Host mit TCP ACK (PA) und TCP Syn (PS) ping
Wenn die Firewall Standard-ICMP-Pings blockiert, versuchen Sie die folgenden Host-Ermittlungsmethoden:
nmap -PS 192.168.1.1nmap -PS 80,21,443 192.168.1.1nmap -PA 192.168.1.1nmap -PA 80,21,200-512 192.168.1.1
Scannen Sie einen Host mit dem IP-Protokoll ping
nmap -PO 192.168.1.1
Scannen Sie einen Host mit UDP ping
Dieser Scan umgeht Firewalls und Filter, die nur TCP prüfen:
nmap -PU 192.168.1.1nmap -PU 2000.2001 192.168.1.1
Finden Sie die am häufigsten verwendeten TCP-Ports mit TCP SYN Scan
Scannen Sie einen Host auf UDP-Dienste (UDP-Scan)
Die meisten gängigen Dienste im Internet laufen über das TCP-Protokoll. DNS, SNMP und DHCP sind drei der gängigsten UDP-Dienste. Verwenden Sie die folgende Syntax, um UDP-Dienste zu ermitteln:
nmap -sU nas03nmap -sU 192.168.1.1
Beispielausgaben:
Scan für IP-Protokoll
Mit dieser Art von Scan können Sie feststellen, welche IP-Protokolle (TCP, ICMP, IGMP usw.) von den Zielrechnern unterstützt werden:
nmap -sO 192.168.1.1
Scannen Sie eine Firewall auf Sicherheitsschwächen
Die folgenden Scantypen nutzen eine subtile Lücke im TCP aus und eignen sich gut, um die Sicherheit gängiger Angriffe zu testen:
Sehen Sie, wie man Xmas-Packkets, Syn-Floods und andere Betrügerangriffe mit iptables blockiert.
Scannen Sie eine Firewall auf fragmentierte Pakete
Die Option -f bewirkt, dass der angeforderte Scan (einschließlich Ping-Scans) winzige fragmentierte IP-Pakete verwendet. Die Idee ist, den TCP-Header über
mehrere Pakete aufzuteilen, um es Paketfiltern, Intrusion-Detection-Systemen und anderen Ärgernissen zu erschweren, zu erkennen, was Sie tun.
Tarnt einen Scan mit Decoys
Die Option -D lässt den entfernten Host glauben, dass der/die Hosts, die Sie als Decoys angeben, das Zielnetzwerk ebenfalls scannen. So kann ihr IDS 5-10 Port-Scans von einzelnen IP-Adressen melden, aber sie werden nicht wissen, welche IP sie gescannt hat und welche unschuldige Lockvögel waren:
nmap -n -Ddecoy-ip1,decoy-ip2,your-own-ip,decoy-ip3,decoy-ip4 remote-host-ipnmap -n -D192.168.1.5,10.5.1.2,172.1.2.4,3.4.2.1 192.168.1.5
Scannen einer Firewall auf MAC-Adress-Spoofing
Wie speichere ich die Ausgabe in einer Textdatei?
Die Syntax lautet:
nmap 192.168.1.1 > output.txtnmap -oN /path/to/filename 192.168.1.1nmap -oN output.txt 192.168.1.1
Scannen Sie nach Webservern und leiten Sie sie zum Scannen in Nikto ein
nmap -p80 192.168.1.2/24 -oG - | /path/to/nikto.pl -h -
nmap -p80,443 192.168.1.2/24 -oG - | /path/to/nikto.pl -h -
Beschleunigen Sie nmap
Übergeben Sie die Option -T an den nmap-Befehl:nmap -v -sS -A -T4 192.168.2.5
Beispielausgaben:
Sind Sie kein Fan von namp-Kommandozeilentools?
Bis jetzt haben wir Beispiele für Nmap-Befehle mit den Linux- und Unix-Befehlszeilenoptionen gesehen. Aber nicht jeder ist mit der Befehlszeile super vertraut. Daher können wir die GUI-App namens Zenmap verwenden, die das offizielle Front-End/GUI-Tool für den Netzwerk-Mapper ist:
Zenmap ist die offizielle GUI für den Nmap Security Scanner. Es ist eine freie und Open-Source-Anwendung für mehrere Plattformen (Linux, Windows, Mac OS X, BSD usw.), die darauf abzielt, Nmap für Anfänger leicht bedienbar zu machen und gleichzeitig fortgeschrittene Funktionen für erfahrene Nmap-Benutzer bereitzustellen. Häufig verwendete Scans können als Profile gespeichert werden, damit sie leicht 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. Die Ergebnisse der letzten Scans werden in einer durchsuchbaren Datenbank gespeichert.
Sie können zenmap mit dem folgenden apt-get-Befehl oder apt-Befehl installieren:$ sudo apt-get install zenmap
Beispielausgaben:
Geben Sie den folgenden Befehl ein, um zenmap zu starten:$ sudo zenmap
Beispielausgaben
Abb.02: zenmap in Aktion
Wie erkenne und blockiere ich Port-Scans auf Linux- und Unix/BSD-Servern?
Versuchen Sie die folgenden Ressourcen:
- Wie man das Tool psad verwendet, um Port-Scan-Angriffe in Echtzeit zu erkennen und zu blockieren.
- Debian / Ubuntu Linux: Shoreline Firewall (Shorewall) installieren und konfigurieren.
- CentOS / Redhat Iptables Firewall Configuration Tutorial.
- Linux: 20 Iptables Beispiele für neue SysAdmins.
- 20 Linux Server Hardening Security Tips.
Abschluss
In diesem Leitfaden haben Sie den Nmap-Befehl mit vielen Beispielen für Linux und die Verwendung mit verschiedenen Beispielen gelernt. Weitere Informationen finden Sie in den folgenden Quellen:
- Die offizielle Homepage des Nmap-Projekts finden Sie hier.
Der Nmap-Befehl hat noch viele weitere Optionen, weitere Informationen finden Sie auf der Manpage oder in der Dokumentation. Was sind Ihre Lieblings-Tricks mit der Nmap-Befehlszeile? Teilen Sie Ihre Lieblingstipps, -tricks und -ratschläge in den Kommentaren unten.
🐧 Erhalten Sie die neuesten Tutorials zu Linux, Open Source & DevOps per RSS-Feed oder wöchentlichem E-Mail-Newsletter.
🐧 Bisher 25 Kommentare… einen hinzufügen ↓
Kategorie | Liste der Unix und Linux Befehle |
---|---|
File Management | cat |
Firewall | Alpine Awall – CentOS 8 – OpenSUSE – RHEL 8 – Ubuntu 16.04 – Ubuntu 18.04 – Ubuntu 20.04 |
Netzwerkdienstprogramme | dig – host – ip – nmap |
OpenVPN | CentOS 7 – CentOS 8 – Debian 10 – Debian 8/9 – Ubuntu 18.04 – Ubuntu 20.04 |
Package Manager | apk – apt |
Prozessverwaltung | bg – chroot – cron – disown – fg – jobs – killall – kill – pidof – pstree – pwdx – time |
Suchen | grep – whereis – which |
Benutzerinformationen | groups – id – lastcomm – last – lid/libuser-lid – logname – members – users – whoami – who – w |
WireGuard VPN | Alpine – CentOS 8 – Debian 10 – Firewall – Ubuntu 20.04 |