Ports mit Nmap scannen: Liste der Nmap-Befehle

Nmap ist das derzeit beste Tool zur Hosterkennung und zum Scannen von Ports. Mit Nmap können wir eine große Menge an Informationen über die Computer in unserem Netzwerk abrufen, scannen, welche Hosts aktiv sind, und sogar prüfen, ob sie offene Ports haben, ob sie Ports filtern (sie haben einen Firewall aktiviert) und wissen sogar, welches Betriebssystem ein bestimmtes Ziel verwendet. Möchten Sie alles über Nmap wissen und wissen, wie man es benutzt? In diesem Artikel erklären wir Ihnen alles, was Sie über dieses Tool wissen müssen.

Merkmale

Nmap ist ein völlig kostenloses Open-Source-Dienstprogramm, mit dem wir Netzwerke und Hosts erkennen und Sicherheitsüberprüfungen durchführen können. Dieses Programm ist kompatibel mit Linux, Windows und MacOS-Betriebssysteme, aber in allen wird es über die Befehlszeile verwendet, obwohl wir die Möglichkeit der Installation haben ZenMap, Dies ist das grafische Dienstprogramm von Nmap, mit dem Port-Scans über die grafische Benutzeroberfläche durchgeführt werden können. Wenn Sie nicht mit Befehlen über die Konsole kämpfen möchten, kann diese grafische Benutzeroberfläche für die ersten Schritte mit diesem großartigen Programm hilfreich sein. Wenn Sie jedoch mehr Erfahrung haben, werden Sie sicher alle Befehle direkt vom Terminal aus ausführen.

Scannen Sie Ports mit Nmap

Mit Nmap können wir Hosts in einem lokalen Netzwerk und auch über das Internet erkennen. Auf diese Weise können wir feststellen, ob diese Hosts (Computer, Server, Router, Switches, IoT Geräte) sind derzeit mit dem Internet oder dem lokalen Netzwerk verbunden. Mit diesem Tool können wir auch einen Port-Scan für die verschiedenen Hosts durchführen und feststellen, welche Dienste auf diesen Hosts aktiv sind. Dank der Tatsache, dass der Status ihrer Ports angezeigt wird, können wir feststellen, welches Betriebssystem ein bestimmter Computer verwendet und wir können sogar verschiedene Tests automatisieren, um die Sicherheit der Geräte zu überprüfen.

Nmap verfügt über verschiedene Arten des Port-Scannens. Diese können über TCP-Segmente, UDP-Datagramme oder ICMP-Pakete erfolgen. Darüber hinaus können Scans auf versteckte Weise durchgeführt werden, sodass sie von Firewalls nur schwer erkannt werden können. Natürlich können wir Port-Scans an bestimmten Ports durchführen, zwischen Portbereichen, IP-Adressbereichen und der Möglichkeit, zusätzlich zu SYN TCP-Null-, FIN-, Weihnachts- und ACK-Pakete zu verwenden, um offene TCP-Ports zu lokalisieren.

Weitere Funktionen, die dieses Tool bietet, sind die Möglichkeit, ein vollständiges Netzwerkinventar zu erstellen und sogar zu überprüfen, ob ein bestimmter Host oder Dienst noch in Betrieb ist. Dieses Programm wurde zum Scannen einer großen Anzahl von Hosts entwickelt. Wenn Sie also mehrere Ziele scannen müssen, treten keine Probleme auf. Dieses Programm ist sehr flexibel, es enthält Dutzende fortschrittlicher Techniken zum Scannen von Hosts und Ports. Außerdem ermöglicht es Audits über NSE (Nmap Search Engine), sodass es sehr leistungsfähig ist.

Nmap hat verschiedene Zustände an den Ports, die angezeigt werden, wenn wir einen Port-Scan durchführen. Es ist wichtig zu wissen, was jeder Status von Nmap bedeutet, da bei jedem Port-Scan unterschiedliche Status zurückgegeben werden.

Portstatus mit Nmap

  • Offen - Eine Anwendung akzeptiert aktiv TCP- oder UDP-Verbindungen. Der Port ist offen und kann verwendet werden. Pentester können diesen offenen Port verwenden, um das System auszunutzen. Dies ist der Standardstatus, wenn keine Firewall den Zugriff blockiert.
  • Geschlossen : Auf einen geschlossenen Port kann zugegriffen werden, da er auf Nmap reagiert. Auf diesem Port wird jedoch keine Anwendung ausgeführt. Dies ist nützlich, um festzustellen, ob ein Host aktiv ist, oder um ein Betriebssystem zu erkennen. Für den Systemadministrator wird empfohlen, diese Ports mit der Firewall zu filtern, damit auf sie nicht zugegriffen werden kann. In Bezug auf Pentester ist es ratsam, diese Ports "geschlossen" zu lassen, um sie später zu analysieren, falls sie einen neuen Dienst anbieten.
  • Gefilterte : In diesem Status kann Nmap nicht feststellen, ob der Port geöffnet ist, da an diesem Port eine Firewall Nmap-Pakete filtert. Diese gefilterten Ports werden angezeigt, wenn eine Firewall aktiviert ist. Nmap versucht wiederholt, eine Verbindung herzustellen, was das Scannen von Ports sehr langsam macht.
  • Öffnen Sie | Gefilterte : Nmap weiß nicht, ob der Port offen oder gefiltert ist. Dies liegt daran, dass der offene Port keine Antwort sendet und diese fehlende Antwort möglicherweise von der Firewall stammt. Dieser Status wird angezeigt, wenn wir UDP und IP verwenden und FIN-, NULL- und Xmas-Scans verwenden.
  • Geschlossen | Gefilterte : In diesem Zustand ist nicht bekannt, ob der Port geschlossen oder gefiltert ist. Dieser Status wird nur bei IP Idle Scan verwendet.

Sobald wir die Hauptfunktionen von Nmap und den Status der verfügbaren Ports gesehen haben, werden wir es installieren und verwenden.

Laden Sie Nmap herunter und installieren Sie es auf einem beliebigen System

Das erste, was wir tun müssen, um dieses leistungsstarke Programm zu verwenden, ist es herunterzuladen und dann zu installieren. In dem Nmap Download-Bereich Sie finden alle Links, Binärdateien und den Quellcode für die Installation unter Windows-, Linux- und MacOS-Betriebssystemen. Wir haben dieses Programm derzeit in allen Repositorys von Linux-basierten Betriebssystemen verfügbar, daher ist seine Installation wirklich einfach. Wir haben dieses Programm in installiert UbuntuWenn Sie jedoch einfach den Installationsbefehl Ihres Betriebssystems gefolgt von „nmap“ ausführen, können Sie das Programm problemlos installieren.

sudo apt install nmap

Einmal installiert, können wir es von einem Terminal aus verwenden, entweder unter Windows, Linux oder MacOS. In allen Beispielen, die wir Ihnen unten geben werden, haben wir das Ubuntu-Betriebssystem verwendet, aber wir haben dieselben Befehle für Windows und MacOS ohne Änderungen verfügbar.

Anwendungsbeispiele für Nmap

Schneller Port-Scan

Wenn Sie einen schnellen Port-Scan zu einem bestimmten Host durchführen möchten, müssen Sie den folgenden Befehl eingeben.

nmap [ip]

Wenn Sie beispielsweise einen schnellen Scan der Hauptports zu einem Host mit der IP-Adresse 192.168.1.2 durchführen möchten, lautet die Reihenfolge wie folgt:

nmap 192.168.1.2

Das Programm gibt die auf dem Zielcomputer geöffneten Ports zurück.

puertosnmap_foto_2

Scannen Sie eine Reihe von Ports

Anstatt alle Ports zu scannen, können wir eine Reihe von Ports festlegen, die überprüft werden sollen. Dazu werden wir ausführen:

nmap -p [rango] [ip]

Wenn Sie einen Port-Scan von TCP 20 nach TCP 200 unter der IP-Adresse 192.168.1.2 durchführen möchten, führen Sie einfach den folgenden Befehl aus:

nmap -p 20-200 192.168.1.2

Das Programm zeigt innerhalb dieses Bereichs an, welche Ports geöffnet sind.

puertosnmap_foto_3

Erkennen Sie das Betriebssystem und weitere Hostdaten

Wir können Nmap anweisen, das Betriebssystem zu erkennen. Dazu werden Pakete gesendet und die Art und Weise analysiert, in der sie zurückgegeben werden, wobei sie in jedem System völlig unterschiedlich sind. Gleichzeitig wird ein Port- und Service-Scan auf Schwachstellen durchgeführt. Außerdem gibt der Scan nützliche Informationen zurück. Dazu müssen wir ausführen:

nmap -A -v [ip]

Wenn wir diesen Scan an die IP-Adresse 192.168.1.2 durchführen möchten, können wir den folgenden Befehl ausführen:

nmap -A -v 192.168.1.2

puertosnmap_foto_4

Liste aller Befehle s

Dieses Programm ist wirklich vollständig. Bisher haben wir die grundlegenden Befehle verwendet, um Hosts zu erkennen und um festzustellen, ob es offene Ports hat. Dies bleibt jedoch nicht so, und wir haben eine große Liste von Befehlen, um das Beste daraus zu machen Werkzeug.

Ziele auswählen

IP-Adressen oder Bereiche, Namen von Systemen, Netzwerken usw.

  • Beispiel: scanme.nmap.org, microsoft.com/24, 192.168.0.1, 10.0.0-255.1-254
  • -iL Dateiliste in Datei -iR n Ziele zufällig auswählen, 0 endet nie
  • –Exclude –excludefile file schließt Systeme von der Datei aus

Entdecken Sie Systeme

  • -PS n TCP-Synchronisierung
  • -PA n TCP ACK pingen
  • -PU n Ping UDP
  • -PM-Netzmaskenanforderung
  • -PP Zeitstempel-Anforderung
  • -PE-Echoanforderung
  • -sL Listenanalyse
  • -PO-Ping pro Protokoll
  • -PN Nicht pingen
  • -n mache kein DNS
  • -R Lösen Sie DNS auf allen Zielsystemen auf
  • –Traceroute: Trace-Route zum System (für Netzwerktopologien)
  • -sP-Ping wie –PP –PM –PS443 –PA80

Portanalysetechniken

  • -sS-Analyse mit TCP SYN
  • -sT-Analyse mit TCP CONNECT
  • -sU-Analyse mit UDP
  • -s UND Analyse mit SCTP INIT
  • -sZ mit COOKIE ECHO von SCTP
  • -sO IP-Protokoll
  • -sW TCP-Fenster -sN
  • –SF -sX NULL, FIN, WEIHNACHTEN
  • –SA TCP ACK

Zu analysierende Ports und Reihenfolge der Analyse

  • -p n-mrango
  • -p– alle Ports
  • -pn, m, z angegeben
  • -p U: nm, z T: n, m U für UDP, T für TCP
  • -F schnell, die gemeinsamen 100
  • –Top-Ports n analysieren die am häufigsten verwendeten Ports
  • -r nicht zufällig

Dauer und Ausführung:

  • -T0 paranoid
  • -T1 Stealth
  • -T2 anspruchsvoll
  • -T3 normal
  • -T4 aggressiv
  • -T5 Wahnsinn
  • –Min-Hostgruppe
  • –Max-Hostgruppe
  • –Min-Rate
  • -Maximale Rate
  • –Min-Parallelität
  • –Max-Parallelität
  • –Min-rtt-Zeitüberschreitung
  • –max-rtt-timeout
  • --initial-rtt-timeout
  • –Max-Wiederholungen
  • –Host-Timeout –Scan-Verzögerung

Service- und Versionserkennung

  • -sV: Versionserkennung von Diensten
  • –Alle Ports schließen Ports nicht aus
  • –Version-all testet jeden Scan
  • –Versions-Trace-Trace-Versionsanalyse
  • -Oder aktivieren Sie die Erkennung des Betriebssystems
  • –Fuzzy Guess OS Erkennung
  • –Max-os-try legt die maximale Anzahl von Versuchen für das Zielsystem fest

Firewall / IDS-Umgehung

  • -f Fragmentpakete
  • -D d1, d2 Umhanganalyse mit Ködern
  • -S IP-Parodie Quelladresse
  • –G Quell-Parodie-Quellport
  • –Randomize-Hosts bestellen
  • –Spoof-mac mac Quelle ändern MAC

Detaillierungsgrad und Debugging-Parameter

  • -v Erhöht den Detaillierungsgrad
  • –Grundgründe nach System und Port
  • -d (1-9) Debugging-Level einstellen
  • –Paket-Trace-Paketpfad

Andere Optionen

  • –Die Analyse der Fortsetzung der Datei wird abgebrochen (Ausgabeformate mit -oN oder -oG)
  • -6 IPV6-Scan aktivieren
  • -Ein aggressiver, wie -O -sV -sC-Traceroute

Interaktive Optionen

  • v / V erhöht / verringert den Detaillierungsgrad der Analyse
  • d / D Debugging-Level erhöhen / verringern
  • p / P Paketverfolgung aktivieren / deaktivieren

Scripts

  • -sC führt eine Analyse mit Standardskripten durch
  • –Skriptdatei ausführen Skript (oder alle)
  • –Script-args n = v liefern Argumente
  • –Script-Trace zeigt eingehende und ausgehende Kommunikation an

Ausgabeformate

  • -oN im normalen Format speichern
  • -oX im XML-Format speichern
  • -oG im Format speichern, um später Grep zu verwenden
  • -oA Speichern in allen vorherigen Formaten

Dies sind hauptsächlich die Befehle, die Nmap zur Verfügung stehen. Bevor wir fertig sind, müssen wir sagen, dass Nmap über eine Vielzahl von Optionen verfügt, mit denen eine vollständige Netzwerkanalyse durchgeführt werden kann. Wir können alle verfügbaren Optionen einsehen, indem wir Folgendes eingeben:

nmap --help

puertosnmap_foto_5

Nmap ist zweifellos ein sehr einfaches und vollständiges Tool zum Durchführen von Netzwerkprüfungen. Dies endet jedoch nicht damit. Wir haben auch Nmap NSE zur Verfügung, um erweiterte Pentests durchzuführen.

Nmap NSE: was es ist und wofür es ist

Nmap Search Engine oder auch Nmap NSE genannt, ist eine große Datenbank mit Tausenden von Skripten, mit denen wir das Pentesting für Systeme und Netzwerke automatisieren können. Mit diesen Skripten können wir viele Aktionen automatisieren, z. B. Brute-Force-Angriffe auf Samba-Server, FTP-Server, SSH-Server, die Überprüfung, ob ein Webserver eine bekannte Sicherheitsanfälligkeit aufweist, und vieles mehr.

Wenn wir beispielsweise einen Brute-Force-Angriff ausführen möchten, der auf einer Liste von Benutzern (mit einer Datei namens users.txt) und einer Liste von zu testenden Kennwörtern (mit einer Datei namens keys.txt) auf einem SSH-Server von basiert Auf einem bestimmten Computer mit der IP 99.99.99.99 können wir den folgenden Befehl eingeben:

nmap -p 22 --script ssh-brute --script-args userdb=usarios.txt,passdb=claves.txt --script-args ssh-brute.timeout=4s 99.99.99.99

Wir empfehlen Ihnen den Besuch der offizielle Website von NSE Dort finden Sie alle Skripte, die sich derzeit in dieser großen Datenbank befinden. Außerdem finden Sie Beispiele für deren Verwendung.