NMAP -Scan -Ports zum Erkennen von Diensten und Schwachstellen

NMAP -Scan -Ports zum Erkennen von Diensten und Schwachstellen

In diesem Tutorial wird erläutert, wie NMAP verwendet wird, um Server und Schwachstellen hinter den Ports zu finden.

NMAP ist eines der hilfreichsten Netzwerk -Tools.

Dieses Tutorial konzentriert sich auf die Diensteversion und die Sicherheitserkennungstechniken. Leser, die mit NMAP nicht vertraut sind.

Alle Anweisungen in diesem Dokument enthalten Screenshots, die es allen Lesern leicht erleichtern, zu verstehen, wie sie im Terminal implementiert werden.

Scannen Sie Ports, um Dienste mit NMAP zu erkennen

In dem ersten Abschnitt dieses Tutorials wird erläutert.

Wie im ersten Screenshot gezeigt, gibt ein regulärer NMAP -Scan die offenen Ports zu den 1.000 am häufigsten verwendeten zurück. Standardmäßig scannt NMAP die 1.000 beliebtesten Ports.

Ports sind mit verwandten Serviceprotokollen verbunden. In der folgenden Ausgabe findet NMAP offene Ports 21, 514 und 3128.

NMAP 192.168.0.103

Der Benutzer weiß, dass die Ports 21, 514 und 3128 geöffnet sind. Zum Beispiel weiß er, dass es in Port 21 einen FTP -Server gibt. Aber der Benutzer möchte die FTP -Software und alle anderen Dienste lernen.

So erfassen Sie Software und Versionen, die -SV (Version) Flag kann übergeben werden, wie im Screenshot unten gezeigt. Wobei Sie sehen können, Vsftpd 3.0.3 Und Tintenfisch Proxy 4.13 werden erkannt.

NMAP -SV 192.168.0.103

Der -A Flag gibt auch Serviceversionen zusammen mit Betriebssysteminformationen zurück.

Im folgenden Beispiel die -A Flag ergab, dass das Ziel ein Linux -Betriebssystem ist, wahrscheinlich 2.6.18 oder 2.6.22:

sudo nmap -a nic.ar

Der nächste Abschnitt dieses Tutorials beschreibt NSE (NMAP Scripting Engine) -Techniken. Dieses praktische Beispiel zeigt, welche die -Skript Flag wird implementiert, um das Skript für das Banner -Grab -Skript in den Scan einzubeziehen.

Das Banner Grab -Skript analysiert den Service -Antworten, um ihre Softwareversion zu realisieren.

Im folgenden Beispiel die Banner Das Skript wird im Scan -Targeting -Port 21 ausgeführt, wodurch der FTP -Server angegeben ist ProfTpd.

NMAP -P 21 --Script = Banner 66.97.40.223

Um diesen Abschnitt zu beenden und mit Anfälligkeitstypen fortzufahren, zeigt das praktische Beispiel unten die (Betriebssystem) Flag -Implementierung, um das Zielbetriebssystem zu erraten.

In diesem Fall ist NMAP zu 93% sicher, dass das Ziel Linux mit Kernel 4 hat.4.

sudo nmap -o 66.97.40.223

Dies sind die bekanntesten NMAP -Techniken für die Erkennung von Service- und Betriebssystemversionen.

Erkennen von Schwachstellen mit NSE (NMAP Scripting Engine)

In diesem Abschnitt werden einige Techniken beschrieben.

Die NMAP Scripting Engine ist eine Reihe von Skripten, die Benutzer in ihre Scans aufnehmen können, die hauptsächlich zum Erkennen und Ausnutzen von Schwachstellen ausgelegt sind. Benutzer können ihre Skripte auch für benutzerdefinierte Zwecke schreiben.

Der erste Schritt für die NSE -Skripte besteht darin, die Datenbank zu aktualisieren und sicherzustellen, dass NMAP über die neuesten Schwachstellen und Techniken auf dem neuesten Stand ist.

Um NSE zu aktualisieren, führen Sie den folgenden Befehl aus:

sudo nmap-script-updatedb

Nach der Aktualisierung der Datenbank kann der Benutzer verschiedene Skripte ausführen, um Schwachstellen zu finden. Die Skripte werden nach Kategorien klassifiziert, die Sie unter https: // nmap sehen können.org/nsedoc/kategorien/.

Im folgenden Beispiel die -Skript Flag ruft die Skripte aus dem auf vuln Kategorie, scannen nach rund 150 beliebten Schwachstellen.

sudo nmap --Skript vuln 66.97.40.223 -v

Wie Sie im folgenden Screenshot sehen können, berichtet NMAP, dass einige Schwachstellen verworfen werden, während andere wahrscheinlich sind:

Der http-csrf Mit dem Skript können Benutzer Websites scannen, um CSRF (Cross Scripting Request Forgery) Schwachstellen zu finden.

sudo nmap-script http-csrf linuxHint.com -v

Wie Sie unten sehen können, falls ausführlich (-v) wird angewiesen, NMAP druckt das Ergebnis aller Schecks gegen die Website.

Benutzer können Wildcards implementieren, um Skriptamen zu vervollständigen. Im folgenden Beispiel fügt der Benutzer alle HTTP-bezogenen Skripte oder alle Skripte hinzu, deren Name mit „HTTP“ beginnt, unabhängig davon, wie er fortgesetzt wird.

sudo nmap - -script "http*" LinuxHint.com -v

Die NMAP -Skriptmotor kann auf ganze Netzwerke abzielen, um Computer zu erkennen, die mit Malware infiziert sind. Dies ist eine großartige Technik für Administratoren, um sich mögliche Malware -Intrusionen zu nähern.

Verfügbare Malware -Skripte finden Sie unter https: // nmap.org/nsedoc/Kategorien/Malware.html.

Schwachstellen mit NMAP und Vulscan erkennen

Vulscan ist ein zusätzlicher Satz von Skripten für NSE, das standardmäßig nicht in NMAP enthalten ist.

Vulscans wird im NMAP -Vulscan -Tutorial zutiefst erklärt, aber dieser Abschnitt bietet eine kurze Überprüfung, Installation und grundlegende Anweisungen.

Vulscan ist ein NMAP -Skript -Engine -Skript, um die Anfälligkeitserkennungsaufgaben zu unterstützen,

Um es zu bekommen, klon Vulscan mit dem Git Befehl, wie unten gezeigt:

Git -Klon https: // github.com/scipag/vulscan

Erstellen Sie einen Soft -Link zum NSE -Skriptverzeichnis, indem Sie den folgenden Befehl ausführen:

sudo ln -s 'pwd'/scipag_vulscan/usr/sharle/nmap/scripts/vulscan

Jetzt kann Vulscan von der aufgerufen werden -Skript Fahnen Sie, um zusätzliche Schwachstellenprüfungen durchzuführen.

Die Syntax ist Folgendes:

nmap -sv - -script = vulscan/vulscan.NSE

Im folgenden Beispiel wird Vulscan gegen gestartet LinuxHint.com.

Wenn Vulscan ein wahrscheinliches Sicherheitsloch erkennt, wird alle zugehörigen Skripte ausgeführt.

nmap -sv - -script = vulscan/vulscan.NSE LinuxHint.com

Vulscan ist eine hervorragende Ergänzung für NMAP -Benutzer, insbesondere für diejenigen, die an der NMAP -Skriptmotor verwendet werden. Wir empfehlen Ihnen dringend.

Vuliere

Verwenden Sie den folgenden Befehl, um NMAP-Vulners in Ihr NSE-Skriptverzeichnis zu klonen:

sudo git klon https: // github.com/vulnersCh/nmap-Vulners.Git/usr/sharle/nmap/scripts/vulners

Führen Sie NMAP mit Vulnern mit der folgenden Syntax aus:

sudo nmap -Skript -Vulner/Vuliere.NSE

Über die NSE (NMAP -Skriptmotor)

Die NSE (NMAP Scripting Engine) gehört zu den erforderlichen NMAP -Funktionen.

Es handelt sich um eine Sammlung von Skripten, um Scan -Aufgaben zu automatisieren und anzupassen. Die Skripte können vor, während oder nach dem Scan ausgeführt werden.

Während NMAP verschiedene Skriptkategorien anbietet, können Benutzer auch ihre eigenen Skripte in der LUA -Sprache schreiben.

Darüber hinaus können NSE -Skripte zur Ausbeutung von Sicherheitsanfälligkeit für die Erkennung von Service und Verwundbarkeit oder sogar für Brute -Force -Angriffe verwendet werden.

Skripte sind in die folgenden Kategorien unterteilt: Auth, übertragen, Standard, Entdeckung, DOS, ausbeuten, Malware, aufdringlich, Fuder, extern, sicher, Ausführung, Und vuln, Die Kategorie, die im ersten Verwendungsbeispiel im NSE -Abschnitt verwendet wird.

Metasploitable virtuelle Geräte sind eine hervorragende Ressource zum Testen von NSE -Funktionen. Skripte können auch in massiven Scans auf mehrere Netzwerke aufgenommen werden.

Die Skripte der NSE werden nach bestimmten Kriterien kategorisiert, basierend auf dem Moment der Skriptausführung, des Skriptzwecks und der Funktionalität.

Die erste Klassifizierung basierend auf der Ausführungszeit umfasst vier Arten von Skripten:

  • Prerule -Skripte: Diese werden vor einer NMAP -Scan -Phase ausgeführt, beispielsweise Skripte, die zum Generieren neuer Ziele verwendet werden.
  • Host -Skripte: Host -Skripte werden im Scan -Prozess ausgeführt.
  • Serviceskripte: Diese Skripte werden ausgeführt, nachdem jede Stapel von Zielen wie Host -Skripte gescannt wurde.
  • Post -Skripte: Nach dem Scan -Prozess werden Post -Skripte ausgeführt. Diese Skripte können Schwachstellen ausnutzen, die im Scan -Prozess entdeckt wurden.

Die zweite Klassifizierung basiert auf Sicherheit und Zwecken des Skripts.

Zweck und Sicherheit definieren die Skriptkategorie. Die Kategorien wurden zuvor in diesem Dokument aufgeführt.

Abschluss

NMAP ist extrem leistungsfähig und flexibel. In anderen Tutorials zum NMAP -Port -Scan war Host Discovery nicht zu beachten. Der vorherige Inhalt zeigt, dass jeder Benutzer unabhängig von Wissensebene in die IT -Sicherheit eingeführt und wichtige Aufgaben ausgeführt werden. Alle obigen Anweisungen sind für alle Linux-Verteilungen und wahrscheinlich auch für das Windows-Befehlszeilen-Tool gültig.

NMAP ist der älteste Living Port Scanner, der 1997 von Fyodor Vaskovich entwickelt wurde, um Dienste und Kartennetzwerke zu entdecken. Das anfänglich in C geschrieben wurde in C ++ umgeschrieben und von der Open -Source -Community in seiner zweiten Veröffentlichung von 1998 stark verbessert. Es wird heute weiterhin Funktionen und Verbesserungen hinzugefügt.

Es ist wahrscheinlich die am häufigsten verwendete Scan -Engine für Diagnose- und Sicherheitszwecke, der Markt bietet viele Alternativen, aber NMAP -Funktionen und die Bemühungen hinter seiner Community sind noch nicht erreicht.

Vielen Dank für das Lesen dieses NMAP. Folgen Sie uns weiter, um mehr Linux- und IT -Sicherheits -professionelle Inhalte zu erhalten.