Metasploit -Installation und grundlegende Befehle

Metasploit -Installation und grundlegende Befehle

„In diesem Tutorial wird erklärt.

Metasploit ist Schwachstellen und Exploits Collection für Sicherheitsaudit und Verwundbarkeitsausbeutung. Dieses Tool hilft Systemadministratoren, Netzwerk- und Gerätesicherheit zu testen. Es ermöglicht es auch unerfahrene Benutzer, Angriffe leicht gegen Ziele auszuführen.

Alle in diesem Dokument beschriebenen Anweisungen enthalten Screenshots, die es den Lesern leicht erleichtern, sie zu verstehen und anzuwenden.”

Was ist postgreSQL, wie nützlich es ist, wenn sie Metasploit verwenden und wie es installiert wird?

Wenn ein Ziel gescannt wird, um Schwachstellen zu finden, oder durch ein Sicherheitsloch ausgenutzt werden, werden gesammelte Informationen in einer Datenbank gespeichert, die von anderen Pentesting -Tools importiert und verwendet werden soll. Natürlich können diejenigen, die Pentesting -Aufgaben ausführen.

Das von Metasploit unterstützte Datenbankverwaltungssystem ist postgreSQL. Obwohl es bei der Verwendung von Metasploit nicht obligatorisch ist, wird es sehr empfohlen, es zu installieren. Die Verwendung von Metasploit ohne Datenbankverwaltungssystem ist keine intelligente Entscheidung. Daher beginnt dieses Tutorial mit Anweisungen zur Installation von PostgreSQL vor der Installation von Metasploit.

Installieren von PostgreSQL auf Debian -basierten Linux -Verteilungen (CentOS unten)

Auf Debian und seinen basierten Linux -Verteilungen wie Ubuntu können Sie PostgreSQL problemlos mit dem APT -Paket -Manager wie im folgenden Screenshot gezeigt installieren.

Notiz: Centos Benutzer finden Anweisungen zum Installieren von PostgreSQL auf Centos unter.

An Debian/Ubuntu Führen Sie den folgenden Befehl aus.

sudo apt installieren postgresql postgresql-contrib sudo systemctl starten postgreSQL

Anweisungen zur Installation von Postgresql auf CentOS

Führen Sie den unten gezeigten Befehl nach unten aus, um PostgreSQL auf CentOS zu installieren.

sudo yum install postgresql-server postgresql-contrib

Initialisieren Sie dann die Datenbank, indem Sie den folgenden Befehl ausführen.

Service postgresql initdb

Starten Sie den Dienst mit SystemCTL, wie unten gezeigt.

sudo systemctl starten postgresql

Installieren Sie Metasploit unter Linux

Führen Sie den unten angegebenen Befehl aus, um Metasploit unter Linux zu installieren.

sudo curl https: // raw.GithubuSercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrapper/msfupdate.ERB> MSFINSTALL && CHMOD 755 MSFINSTALL && ./msfinstall

Nach der Installation von Metasploit müssen Sie es initialisieren. Der Initialisierungsprozess erstellt die Datenbank, um eine Verbindung zu PostgreSQL herzustellen. Führen Sie den folgenden Befehl aus, um Metasploit zu initialisieren.

Notiz: Wenn Sie den folgenden Befehl ausführen, werden Sie gefragt, ob Sie den Metasploit -Webdienst initialisieren möchten, um mit Metasploit über die Rest -API zu interagieren. Da es nicht erforderlich ist und viele Benutzer beim Umgang mit dem Webservice sich über Probleme beschwerenNEIN" Möglichkeit.

MSFDB Init

Sobald Metasploit initialisiert ist, starten Sie ihn, indem Sie den im Bild unten gezeigten Befehl ausführen.

MSFConsole

Bevor Sie mit Metasploit beginnen, überprüfen Sie, ob sie erfolgreich mit der Datenbank verbunden wurde, indem Sie den folgenden Befehl ausführen.

db_status

Wie Sie sehen können, hat Metasploit erfolgreich mit der Datenbank verbunden. Wir können mit Metasploit -Basisbefehlen fortfahren. Wenn Sie beim Versuch, eine Verbindung herzustellen.

Erste Schritte mit Metasploit -Basisbefehlen

In diesem Abschnitt werden Metasploit -Basisbefehle erläutert, einschließlich eines praktischen Real -Szenario -Nutzungsbeispiels.

Die folgende Tabelle zeigt Metasploit am häufigsten verwendete Befehle mit einer kurzen Erklärung. Nach der Tabelle können Sie sehen, wie Befehle in einem realen Szenario angewendet werden.

Metasploit -Befehl Kurze Beschreibung
MSFConsole Dieser Befehl führt Metasploit aus
suchen Dieser Befehl wird verwendet, um Module und Exploits mit Namen zu finden
verwenden Der verwenden Der Befehl wird verwendet, um Module und Exploits auszuwählen
Optionen anzeigen Modul- oder Ausnutzungsoptionen anzeigen
Rhosts setzen <Ziel (s)> Dieser Befehl wird verwendet, um Ziele zu definieren
Ports festlegen <Häfen> Dieser Befehl wird verwendet, um Ports zu definieren
Threads einstellen <Themen> Dieser Befehl wird verwendet, um Threads zu definieren
laufen Der laufen Der Befehl wird verwendet, um Module auszuführen
zurück Der zurück Der Befehl bewegt Sie zurück zum vorherigen Verzeichnis
db_nmap<Flaggen><Ziel (en)> Der db_nmap Mit dem Befehl können Sie integrierte NMAP verwenden
Rport setzen <Ziel> Dieser Befehl wird verwendet, um Ports zu definieren
die Info Der Info -Befehl druckt Modul oder Exploit -Informationen aus
ausbeuten Der ausbeuten Der Befehl führt den ausgewählten Exploit aus
Ausfahrt Der Ausfahrt Der Befehl schließt die Sitzung aus dem Ziel oder verlässt Metasploit
Belastung Mit dem Befehl ladet werden Plugins laden
entladen Mit dem Befehl entladen werden Plugins entlädt
CD Dieser Befehl wird verwendet, um die aktuelle Auswahl zu ändern
Hilfe / ? Beide Hilfe Befehl und ? Symbol erklärt die Gebrauchsgebrauch

Metasploit Basic -Befehle praktisches Beispiel

Dieser Abschnitt zeigt ein praktisches Beispiel für die ersten 14 Metasploit -Befehle, die in der vorherigen Tabelle aufgeführt sind.

Die in diesem Beispiel zugewiesene IP -Adresse ist die zugewiesene IP -Adresse 192.168.0.101.

Führen Sie zu Beginn Metasploit mit dem folgenden Befehl aus.

MSFConsole

Zunächst werde ich einen Port -Scan gegen das Ziel ausführen, um offene Ports zu entdecken. Metasploit enthält mehrere Portscanner als Hilfsmodule, die wir Ziele scannen können.

Um Metasploit verfügbare Portscanner -Auxiliary -Module zu finden, ist die suchen Der Befehl wird verwendet, gefolgt vom Modultyp oder dem Schlüsselwort. In diesem Fall suchen wir nach einem Portscan. Daher müssen wir den im Bild unten gezeigten Befehl ausführen.

Suchen Sie Portscan

Wie Sie im vorherigen Screenshot sehen können, haben wir verschiedene Portscanner für verschiedene Zwecke. In diesem Fall möchte ich einen TCP -Scan mit dem ausführen Auxiliary/Scanner/Portscan/TCP Modul.

Um das ausgewählte Modul auszuwählen, werde ich das ausführen verwenden Befehl, gefolgt vom Pfad zum Modul wie unten gezeigt.

Verwenden Sie Auxiliary/Scanner/Portscan/TCP

Sobald das Modul ausgewählt ist, müssen wir vor der Verwendung die erforderlichen oder verfügbaren Optionen kennen, für die wir die verwenden werden Optionen anzeigen Befehl wie im Screenshot unten gezeigt.

Optionen anzeigen

Aus den im obigen Bild aufgeführten Moduloptionen werde ich verwenden Rhosts Definieren Sie die Ziel -IP -Adresse, HÄFEN einen Portsbereich definieren und Themen Definieren Sie die Anzahl der gleichzeitigen Aufgaben. Dann starte ich den Scanprozess, indem ich den Befehl run ausführe.

Mit Ausnahme der laufen Befehl in diesem Beispiel verwendet, Rhosts, HÄFEN, Und Themen Optionen müssen dem vorausgehen Satz Befehl in der metasploit grundlegenden Befehlstabelle abgebildet.

Der Rhosts Optionssyntax zum Definieren eines Ziels ist unten gezeigt, wo <Ziel (en)> muss durch ein oder mehrere Zielhosts oder IP -Adressen ersetzt werden. In meinem Fall lautet wie in der folgenden Abbildung die Ziel -IP -Adresse 192.168.0.101.

Rhosts setzen

Unten können Sie die sehen HÄFEN Optionssyntax, wo <Häfen> muss durch den Port- oder Portbereich ersetzt werden, den Sie scannen möchten. In diesem Beispiel habe ich einen Portbereich von 20 bis 100 definiert.

Ports festlegen

Der Themen Mit der Option können Sie die Anzahl der Threads definieren. Ich habe 10 ausgewählt.

Threads einstellen

Nachdem ich die zuvor genannten Optionen definiert habe, führe ich den Scan mit dem aus laufen Befehl. Sie können den gesamten Prozess in der folgenden Abbildung sehen.

laufen

Wie Sie sehen können, sind die Ports 23, 21, 22, 25, 53 und 80 im Ziel offen. Aber ich möchte wissen, dass die Serviceversionen jeden offenen Port zuhören, für den ich NMAP in Metasploit verwenden werde.

Ich werde den Befehl zurück verwenden, um zum ersten Kontext zurückzukehren, um eine komfortablere Ansicht zu erhalten.

zurück

Wie gesagt, die vorherige Scanausgabe meldete offene Ports. Aber ich möchte mehr über die Dienste hinter diesen offenen Ports mit NMAP erfahren.

Der db_nmap Der Befehl führt NMAP von Metasploit aus. Im folgenden Beispiel werde ich einen Fußdruckscan starten. In diesem Tutorial werde ich NMAP -Flags nicht erklären, aber Sie können in diesem Artikel, den wir bei LinuxHint veröffentlicht haben.

Die Syntax ist einfach, ausführen db_nmap gefolgt von den gewünschten Flags und der Ziel -IP -Adresse, wie unten gezeigt.

db_nmap -sc -sv -o 192.168.0.101

Wie Sie in der vorherigen Abbildung sehen können, ist die in Port 21 ausgeführte FTP -Dienstversion vsftpd 2.3.4.

Nach dem Erlernen unseres Ziels läuft vsftpd, Wir können die verwenden suchen Befehl zur Anzeige der verfügbaren Ressourcen zur Ausführung eines Angriffs gegen die identifizierte Software.

Suche vsftp

Metasploit gab einen verfügbaren Exploit zurück (exploit/unix/ftp/vsftpd_234_backdoor) Wir können gegen den FTP -Server verwenden vsftpd 2.3.4.

Zuvor habe ich das ausgeführt verwenden Befehl zur Auswahl eines Moduls. Jetzt werde ich das ausführen verwenden Befehl zur Auswahl des verfügbaren Exploits, wie in der folgenden Abbildung gezeigt. Die Syntax ist die gleiche; leiten Sie die verwenden Befehl gefolgt vom Exploit vollständigen Pfad.

Verwenden Sie exploit/unix/ftp/vsftpd_234_backdoor

Nachdem ich den Exploit ausgewählt habe, werde ich das ausführen Optionen anzeigen Befehl zum Anzeigen der Exploit -Optionen.

Optionen anzeigen

Wie Sie in der vorherigen Abbildung sehen können, sind die Optionen Rhosts das Ziel definieren und Rport Ports definieren. Sowohl Ziel als auch Port sind bereits ausgewählt. Das Ziel ist aus unserer vorherigen Aktivität abgerufen, während der Port der Standard -FTP -Port ist. Wenn es anders wäre, würde ich das laufen lassen Rport setzen Option, es zu ändern.

Der die Info Der Befehl zeigt zusätzliche Informationen zum ausgewählten Exploit oder zum Modul an. Im Folgenden können Sie ein Beispiel für das sehen die Info Befehlsausgabe.

die Info

Wenn Sie ein anderes Ziel definieren möchten, führen Sie den folgenden Befehl aus.

Set Rhosts 192.168.0.101

Sobald Ziel und Port definiert sind, führen Sie die aus ausbeuten Befehl zum Starten des Exploits.

ausbeuten

Wie Sie sehen können, habe ich eine Remote -Shell im Ziel bekommen. Der ls Der Befehl zeigt die Hauptzielverzeichnisse an. Das Ziel wurde erfolgreich gehackt.

Um das Ziel zu trennen, leite ich die Ausfahrt Befehl.

Ausfahrt

Verwenden Sie zum Beenden von Metasploit auch den Befehl exit.

Ausfahrt

Das ist alles vorerst; Das oben angegebene Beispiel enthält die am häufigsten verwendeten Befehle, damit Sie mit Metasploit beginnen können.

Metasploit- und Postgresql -Fehlerbehebungsbefehle

Viele Benutzer beschweren sich über Probleme bei der Verbindung mit der Datenbank. Hier liste ich einige Befehle auf, die Sie verwenden können, wenn Probleme beim Anschließen von Metasploit mit der Datenbank auftreten.

MSFDB -Fehlerbehebungsbefehle Beschreibung
Service PostgreSQL Neustart Starten Sie Postgresql neu
msfdbreinit Entfernen und neu initialisieren Sie die Datenbank
msfdb löschen Entfernen Sie die Datenbank
msfdbinit Initialisieren Sie die Datenbank (Ausführen nach MSFDB Löschen)
MSFDB -Status Zeigen Sie den Datenbankstatus an
MSFDB Run Starten Sie die Datenbank und führen Sie Metasploit aus

Wenn Sie Probleme haben, versuchen Sie, die Befehle in der Tabellenreihenfolge zu verwenden. Versuchen Sie zunächst, Postgresql neu zu starten. Wenn das nicht funktioniert, versuchen Sie, die Datenbank neu zu initialisieren. Wenn das Problem weiterhin besteht, entfernen Sie die Datenbank und initialisieren Sie sie neu initialisieren. Benutze die MSFDB -Status Befehl, um den Status nach jedem Befehl zu überprüfen.

Abschluss

Metasploit ist eines der beliebtesten Pentesting -Tools für die Sicherheitsprüfung. Zusammen mit NMAP führt dies zu Multitasking -Sicherheitsressourcen. Metasploit kann sowohl für defensive als auch für offensive Zwecke verwendet werden. Wie Sie sehen können, ist es nicht schwierig, es zu verwenden. Benutzer müssen nur ein wenig praktisches Wissen einbeziehen, wenn sie bereits mit Netzwerk und Programmierung vertraut sind. Metasploit ist auch für Mac OS und Microsoft Windows verfügbar.

Vielen Dank, dass Sie dieses Tutorial gelesen haben, um die Metasploit -Installation und die Grundbefehle zu erläutern. Folgen Sie uns weiter, um weitere Linux -professionelle Tipps und Tutorials zu erhalten.