NMAP -Grundlagen -Tutorial

NMAP -Grundlagen -Tutorial

„In diesem Tutorial wird erläutert, wie NMAP funktioniert und wie es aus dem Terminal installiert und verwendet wird.

NMAP (Network Mapper) ist wahrscheinlich der am häufigsten verwendete Netzwerk -Scan, zumindest unter Linux -Benutzern.”

NMAP ermöglicht die Ausführung der folgenden Aufgaben:

  • Port -Scan
  • IP -Bereichscan
  • Hosts Discovery
  • Subnetscan
  • Netzwerkproblemdiagnostik
  • Anfälligkeitserkennung
  • Verwundbarkeit Ausnutzung

Dieses Tutorial umfasst Port -Scan, Host -Erkennung und Scanning -IP -Bereiche und Subnetze. Am Ende kann der Leser die Links fortsetzen, die sich auf NMAP für die Erkennung und Ausbeutung von Sicherheitsanfällen mit dem NSE (NMAP -Skriptmotor) konzentrieren.

Der Inhalt ist für Benutzer ohne frühere Erfahrung mit NMAP stark optimiert. Durch das Lesen dieses Tutorials und die Anwendung der praktischen Beispiele erfasst der Leser genügend Kenntnisse darüber, wie NMAP funktioniert, seine Verwendung und das Ausgabeverständnis, um die nach diesem Inhalt empfohlenen fortschrittlichen Nutzungslesungen fortzusetzen.

Alle unten beschriebenen Schritte enthalten Screenshots und erleichtern es jedem Linux -Benutzer, ihnen unabhängig von der Erfahrung zu folgen.

Index:

  • NMAP installieren
  • Wie NMAP -Basis -Scan -Typen funktionieren
  • NMAP -Portzustände und Ports Scan
  • Ziele in NMAP definieren
  • Hostentdeckung mit NMAP

Installieren von NMAP (aus Quellen, Debian und Redhat -basierten Distributorien)

In diesem Abschnitt wird erklärt.

Führen Sie den folgenden Befehl aus, um NMAP auf Debian -basierten Linux -Verteilungen zu installieren.

sudo apt installieren nmap

Führen Sie für Redhat -basierte Verteilungen den im folgenden Screenshot gezeigten Befehl aus.

sudo yum install nmap installieren

Um NMAP aus Quellen zu kompilieren, besuchen Sie https: // nmap.org/download.HTML#Source und laden Sie die letzte stabile NMAP -Version aus dem Link im Abschnitt im folgenden Screenshot (Pfeil) herunter (Pfeil).

Nach dem Herunterladen extrahieren Sie den Teer.Bze2 -Datei wie unten gezeigt.

Notiz: Ersetzen <7.93> Mit der heruntergeladenen NMAP -Version.

tar -xf nmap -7.93.Teer.BZ2

Nach dem Extrahieren bewegen Sie sich in das NMAP -Verzeichnis.

CD nmap-/

Führen Sie das Konfigurationsskript aus.

./konfigurieren

Schließlich beenden Sie die Zusammenstellung durch Ausführung machen Und Installation machen.

sudo make && mach installieren

Wie NMAP -Basis -Scan -Typen funktionieren

Regelmäßige NMAP -Scans werden durchgeführt TCP Und Syn Scans. Wenn der Scanprozess ist TCP, Eine Verbindung wird mit dem Ziel hergestellt. Mit einem Syn Scan, die Verbindung wird storniert oder fallen gelassen, bevor er festgelegt wird.

Die folgende Abbildung zeigt, wie Verbindungen hergestellt werden: Erstens sendet der Computer (PC 1), der versucht, die Verbindung herzustellen, a Syn Paket, um das Zielgerät zu synchronisieren. Wenn das Zielgerät (PC 2) verfügbar ist, um die Verbindung herzustellen, antwortet es sowohl mit einem anderen SYN -Paket, der eine Synchronisation und mit einem ermöglicht Ack (Bestätigen) Paket, die den Erhalt des ersten bestätigen Syn vom Computer gesendete Paket, der die Verbindung angefordert hat, und dann der Computer, der die Verbindung (PC 1) angefordert hat, sendet eine Ack Paket, das den Erhalt beider bestätigt Syn Und Ack vom Zielgerät gesendete Pakete (PC 2).

Wenn eine Verbindung hergestellt wird, wird sie durch Firewalls erkannt und protokolliert. Deshalb das der Syn Scan wurde implementiert, die Syn oder Stealth Scan sendet a Syn Paket und nach Erhalt des Ziels Antworten anstatt mit einem zu antworten Ack Paket, es sendet eine RST (Zurücksetzen) Paket, um die Verbindung zu stornieren, bevor sie wie im folgenden Bild gezeigt erstellt wurde:

Auf diese Weise ist die Verbindung nicht protokolliert, aber Sie müssen sich trotzdem mit Intrusion -Erkennungssystemen befassen Syn Paketerkennungsfunktionen. Um eine Erkennung zu vermeiden, können Sie Stealth -Scan -Techniken verwenden.

NMAP -Scanphasen

NMAP durchläuft während des Scanprozesses 11 Stufen abhängig von den bestandenen Flaggen. Einige von ihnen sind entsprechend den angegebenen Parametern optional. Beispielsweise werden Pre- und Post-Scan-Skripte nur ausgeführt, wenn der Benutzer NSE zur Sicherheitserkennung oder -ausbeutung implementiert.

Die 11 möglichen Phasen sind unten aufgeführt:

  1. Vorabtannskript: Die Option „Skript vor dem Scannen“ ruft Skripte aus der NMAP Scripting Engine (NSE) für die Vorabstufungsphase auf; Diese Phase findet nur statt, wenn die NSE verwendet wird.
  2. Zielaufzählung: In dieser Phase verarbeitet NMAP Informationen zu den zu scanischen Zielen, z. B. IP -Adressen, Hosts, IP -Bereiche usw.
  3. Hostentdeckung (Ping -Scan): NMAP erfährt, welche Ziele online oder erreichbar sind.
  4. Reverse-DNS-Auflösung: NMAP sucht nach Hostnamen für die IP -Adressen.
  5. Port -Scan: NMAP entdeckt Ports und ihren Status: Öffnen, geschlossen oder gefiltert.
  6. Versionserkennung: In dieser Phase wird NMAP versuchen, die Version der in der vorherigen Phase erfassten Software in geöffneten Ports zu lernen, z. B. welche Version von Apache oder FTP.
  7. OS -Erkennung: NMAP versucht, das Betriebssystem des Ziels zu erkennen.
  8. Traceroute: NMAP entdeckt die Route des Ziels im Netzwerk oder auf alle Wege im Netzwerk.
  9. Skriptscannen: Diese Phase ist optional; In dieser Phase werden NSE -Skripte ausgeführt. NSE -Skripte können vor dem Scan, während des Scans und danach ausgeführt werden, aber sie sind optional.
  10. Ausgang: NMAP zeigt uns Informationen zu den gesammelten Daten.
  11. Post-Scaning-Skript: Optionale Phase, wenn Skripte definiert wurden, um nach dem Scan ausgeführt zu werden.

Ein einfacher NMAP -Scan ohne andere Flag -v (Ausführlichkeit) zeigt einige der zuvor aufgeführten Phasen.

Notiz: Wenn keine Ports angegeben sind, scannt NMAP standardmäßig die am häufigsten verwendeten 1000 Ports, einschließlich aller Protokolle.

NMAP -v LinuxHint.com

Portzustände und Port -Scan -Typen mit NMAP

Eine der wichtigsten NMAP.

Beim Scannen nach Diensten kann NMAP bis zu 6 Staaten oder Bedingungen der gescannten Ports melden:

  • Offen: Der Port ist geöffnet und eine Anwendung hört ihn durch.
  • Geschlossen: Der Port ist geschlossen und keine Anwendung hört zu.
  • Gefiltert: Eine Firewall verhindert, dass NMAP den Hafen erreicht.
  • Ungelder: Port ist zugänglich, NMAP kann seinen Zustand nicht überprüfen.
  • Offen | gefiltert: NMAP kann nicht feststellen, ob ein Port geöffnet oder gefiltert ist.
  • Geschlossen | gefiltert: NMAP kann nicht feststellen, ob ein Port geschlossen oder gefiltert ist.

Wie im vorherigen Abschnitt gesagt. Wenn der Benutzer keine Ports angibt, scannt NMAP standardmäßig die 1000 beliebtesten und gebrauchten Ports.

Das einfachste NMAP -Flag, um einen Port anzugeben, ist -P, gefolgt von der Portnummer oder dem Protokoll.

Im folgenden praktischen Beispiel scannt der Benutzer Port 22 auf dem Ziel LinuxHint.com.

NMAP -P 22 LinuxHint.com

Wie Sie im obigen Screenshot sehen können, Port 22 wird von einer Firewall gefiltert.

Anstelle der Portnummer kann der Benutzer auch den Protokollnamen definieren. Unter dem Benutzer führt der gleiche Scan aus, gibt jedoch den Protokollnamen an ssh anstelle einer Portnummer 22.

NMAP -P SSH LinuxHint.com

Es gibt Flags und Zeichen, die mehr als einen bestimmten Port zum Scannen definieren können. Das Komma (,) Ermöglicht die Definition verschiedener Ports aus verschiedenen Bereichen.

Im folgenden Screenshot verwendet der Benutzer Kommas, um die Ports 22, 80 und 179 zu scannen. Wie Sie sehen können, wurde Port 80 durch seinen Protokollnamen definiert, http.

NMAP -P 22, HTTP, 179 LinuxHint.com

Wie Sie sehen können, wurde Port 80 offen gefunden, während der Rest von einer Firewall filtriert wurde.

Der Bindestrich ist ein wichtiges Zeichen beim Scannen von Port- oder IP -Bereichen.

Im folgenden Beispiel wird ein Bindestrich implementiert, um einen Portbereich zwischen 21 und 30 zu definieren.

NMAP -P 20-30 LinuxHint.com

NMAP ermöglicht die Definition von mehr als den Portsbereich, indem sowohl Kommas als auch Bindestriche implementiert werden, wie unten gezeigt, wobei die Ports zwischen 70 und 90 und 20 bis 40 gescannt werden.

NMAP -P 70-90,20-40 LinuxHint.com

Beim Scannen von Port -Bereichen kann der Benutzer bestimmte Ports oder Bereiche vom Scanprozess ausschließen, indem die Implementierung des -ausschließen Flagge.

Im folgenden Beispiel scannt der Benutzer den Port -Bereich von Port 20 bis Port 80, schließt jedoch Ports 30 bis 40 aus. Der Benutzer kann auch einen einzelnen Port oder verschiedene Ports ausschließen, die von einem Komma getrennt sind.

NMAP -P 20-80 LinuxHint.com-exclude-ports 30-40

Wenn der Benutzer alle Ports auf dem Ziel scannen möchte, verfügt er über zwei Optionen. Er kann den gesamten Bereich von 1 bis 65535 definieren, wie unten gezeigt.

NMAP -P0-65535 192.168.0.1

Die praktischste Option zum Scannen aller Ports ist die Implementierung von zwei Bindestrichen vor und nach dem P, Wie nachfolgend dargestellt.

NMAP -P- 192.168.0.1

Ziele in NMAP definieren

In diesem Abschnitt werden verschiedene Techniken beschrieben, um Scan -Ziele zu definieren, einschließlich mehrerer Ziele.

Im vorherigen Abschnitt wurden Bindestriche verwendet, um die Hafenbereiche zu definieren.

Bindestriche können auch zum Definieren von IP -Bereichen verwendet werden, wie im folgenden Screenshot gezeigt, wobei der Benutzer ab 192 einen IP -Bereich definiert.168.0.1 und enden bei 192.168.0.120.

NMAP 192.168.0.1-120

Im folgenden Beispiel sind zwei Bereiche in den letzten beiden Oktetten definiert (200-210 und 80-90).

NMAP -p80,22,443 186.33.200-210.80-90

Benutzer können die verwenden CIDR Format. Im folgenden Beispiel wird das Subnetz /24 gescannt.

Der -ss Flag weist NMAP an, a auszuführen Syn Scannen Sie durch Firewalls unentdeckt.

Notiz: Syn Scan erfordert Root -Berechtigungen.

sudo nmap -ss 192.168.0.0/24

Im folgenden Beispiel wird die Wildcard (*) implementiert, um NMAP zu unterweisen, das gesamte Oktett der letzten IP -Adresse von 0 bis 255 zu scannen.

Der -sn (Ping Sweep) Flag weist NMAP an, den Port -Scan wegzulassen, und beschränken die Erkennung der Host.

nmap -sn 192.168.0.*

Im nächsten Screenshot implementiert der Benutzer zwei Platzhalter, um die beiden letzten Oktetten zu scannen. Der -sp (Ping Sweep) -Flag entspricht dem oben genannten (dem (dem -sn Die Flagge ersetzt -sp),

NMAP -sp 192.168.*.*

Wildcards und Bindestriche können für benutzerdefinierte Zieldefinition kombiniert werden.

NMAP -sp 186.33.205-210.*

Ziele können auch aus der Klartextliste eines Ziels geladen werden.

Die folgende Liste ist benannt spärlich.txt und enthält einen Domainnamen, eine IP -Adresse, ein Subnetz und IP -Bereiche, die sowohl mit einem Bindestrich als auch mit Wildcard definiert sind.

Der -il (Liste) Flagge, gefolgt vom Pfad zur Liste der Ziele, startet den Scan mit den aufgeführten Zielen in der Datei.

nmap -sn -il sparsame.txt

Der Benutzer kann in einer Liste definierten Ziele scannen und gleichzeitig bestimmte ausschließen.

Im folgenden Beispiel scannt der Benutzer Ziele in der definierten Ziele spärlich.txt Datei, das Ziel 192 weglassen.168.0.0/24 mit dem -ausschließen Möglichkeit.

nmap -sn -il sparsame.TXT -EXCLUDE 192.168.0.0/24

Der -ir (Zufälliger) Flag weist NMAP an, zufällige Ziele zu scannen. Mit dieser Flag.

Auf dieses Flag muss die Anzahl der zufälligen Ziele folgen, die der Benutzer generiert werden möchte.

Im folgenden Beispiel die -ir Flag wird verwendet, um 100 zufällige Ziele zu scannen.

NMAP -IR 100

Hostentdeckung mit NMAP

Einige Optionen zur Erkennung von Hosts wurden bereits im vorherigen Abschnitt mit Flags implementiert -sn Und -sp, die NMAP anweisen, den Port -Scan -Prozess wegzulassen, und sich auf die Entdeckung von lebendigen Hosts beschränken.

Es gibt zusätzliche Flags, um Erkennungsaufgaben mit NMAP auszuführen.

Der -Ps (Syn Ping) Flag sendet ein leeres TCP Paket mit dem Syn Flagge. Falls der Remote -Port geöffnet ist, wenn das Ziel auf a antwortet Syn/ack Paket, NMAP storniert die Verbindung, indem er a sendet RST Paket statt eines Ack eins.

NMAP -PS 192.168.0.0/24

Der Pa (Ack ping) sendet a TCP Paket mit dem Ack Flagge. Dieses Paket sendet Bestätigungsnachrichten an nicht existierende Verbindungen, die generieren RST Pakete vom Ferner Host, der seine Existenz enthüllt.

nmap -pn -pa50-100 nic.ar

Der -Pu (UDP Ping) Flagssend UDP Pakete zu Remoteadressen. Wenn nicht angegeben werden, werden Pakete an die Ports 40 und 125 gesendet.

sudo nmap -pu 192.168.0.0/24

Sendet IP -Pakete mit den Headern eines anderen Protokolls. Wenn nicht angegeben, sind die Header standardmäßig angegeben ICMP, IGMP, Und IP-in-IP Protokolle.

sudo nmap -po 192.168.0.0/24

Die nächste empfohlene Lesung, um mit NMAP fortzufahren, sind NMAP -Flags und was sie tun, die zusätzliche Flags beschreibt und den Leser in die NSE (NMAP Scripting Engine) einführt.

Abschluss

Wie Sie sehen können, ist NMAP ein sehr leistungsfähiges Werkzeug, aber leicht zu lernen. Jeder Netzwerkbenutzer, der sich mit einem Terminal befasst.

Andere NMAP -Funktionen wie Traceroute können zur Diagnose von Netzwerkproblemen verwendet werden, oder die NSE -Suite kann verwendet werden, um Schwachstellen zu erkennen und zu nutzen.

Die Anweisungen in diesem Tutorial sind für alle Linux -Verteilungen gültig. Es wird dringend empfohlen, alle angegebenen Beispiele anzuwenden, um das Wissen einzubeziehen.

Vielen Dank für das Lesen unseres NMAP -Basics Tutorial. Folgen Sie Linux Tipps für mehr professionelle Linux- und Netzwerkinhalte.