Einleitung
Das Metasploit Framework ist ein leistungsstarkes Open-Source-Tool, das von Sicherheitsexperten für Penetrationstests, Exploit-Entwicklung und Schwachstellenforschung eingesetzt wird. Seine primäre Schnittstelle ist die Metasploit Console, oder msfconsole, eine Befehlszeilenschnittstelle, die einen effizienten Zugriff auf alle Funktionen des Frameworks bietet.
In diesem Lab lernen Sie die grundlegenden, aber wesentlichen Fähigkeiten zum Starten und Navigieren in der msfconsole. Wir werden das Starten der notwendigen Hintergrunddienste, das Starten der Konsole, das Erkunden ihrer Benutzeroberfläche, die Nutzung des Hilfesystems und das ordnungsgemäße Beenden behandeln. Die Beherrschung dieser Grundlagen ist der erste Schritt zur effektiven Nutzung von Metasploit für Sicherheitsbewertungen.
Starten des erforderlichen PostgreSQL-Dienstes
Bevor Sie Metasploit starten, ist es bewährte Praxis, den PostgreSQL-Datenbankdienst zu starten. Metasploit verwendet diese Datenbank, um Informationen über Ihre Projekte, Hosts, entdeckte Schwachstellen und gesammelte Beweise (Loot) zu speichern. Obwohl msfconsole auch ohne Datenbank laufen kann, ermöglicht die Verbindung zu einer Datenbank viele seiner leistungsstarken Datenverwaltungsfunktionen.
In diesem Schritt starten Sie den PostgreSQL-Dienst und überprüfen, ob er korrekt läuft. Wir verwenden den Befehl service, da diese Umgebung systemctl nicht unterstützt.
Öffnen Sie zuerst ein Terminal und verwenden Sie den folgenden Befehl, um den PostgreSQL-Dienst zu starten. Sie benötigen sudo, da die Verwaltung von Systemdiensten administrative Berechtigungen erfordert.
sudo service postgresql start
Sie sollten eine Ausgabe sehen, die anzeigt, dass der Dienst gestartet wird:
* Starting PostgreSQL 14 database server [ OK ]
Um zu bestätigen, dass der Dienst erfolgreich gestartet wurde, können Sie als Nächstes seinen Status überprüfen:
sudo service postgresql status
Ein erfolgreicher Start zeigt an, dass der Dienst online ist:
14/main (port 5432): online
Da die Datenbank nun läuft, sind Sie bereit, die Metasploit-Konsole zu starten.
Starten der Metasploit-Konsole mit dem Befehl msfconsole
Wenn der Datenbankdienst läuft, können Sie nun die Hauptschnittstelle von Metasploit, msfconsole, starten. Dieser Befehl initialisiert das Framework, lädt alle Module (Exploits, Payloads, Auxiliary usw.) und stellt eine Verbindung zur Datenbank her.
In diesem Schritt führen Sie den Befehl msfconsole in Ihrem Terminal aus. Der erste Start kann einige Momente dauern, da die Umgebung eingerichtet wird.
Geben Sie den folgenden Befehl in Ihr Terminal ein und drücken Sie Enter:
msfconsole
Nach einer kurzen Ladezeit werden Sie mit einem zufällig ausgewählten Willkommensbanner (ASCII-Art) und der msfconsole-Eingabeaufforderung begrüßt. Die Eingabeaufforderung sieht typischerweise so aus: msf6 >, wobei 6 die Version des Metasploit Frameworks angibt.
`s`
`h`
`o`
`y`
`s`
`s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s`
`o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o`
`y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y`
`s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s`
`o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o`
`y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y`
`s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s`
`o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o`
`y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y` `y`
`s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s` `s`
`o` `o` `o` `o` `o` `o` `o` `o` `o` `o` `o`
`y` `y` `y` `y` `y` `y` `y` `y` `y` `y`
`s` `s` `s` `s` `s` `s` `s` `s` `s`
`o` `o` `o` `o` `o` `o` `o` `o`
`y` `y` `y` `y` `y` `y` `y`
`s` `s` `s` `s` `s` `s`
`o` `o` `o` `o` `o`
`y` `y` `y` `y`
`s` `s` `s`
`o` `o`
`y`
=[ metasploit v6.x.x-dev-xxxxxxxx ]
+ -- --=[ 23xx exploits - 12xx auxiliary - 4xx post ]
+ -- --=[ 14xx payloads - 4x encoders - 1x nops ]
+ -- --=[ 9 evasion ]
Metasploit tip: View advanced options for a module by using
advanced
msf6 >
Sie befinden sich nun in der Metasploit-Konsole und können deren Befehle verwenden.
Erkunden des msfconsole-Willkommensbanners und der Version
Jetzt, da Sie sich in der msfconsole befinden, nehmen wir uns einen Moment Zeit, um die angezeigten Informationen zu betrachten. Das Willkommensbanner zeigt neben kreativer ASCII-Art eine kurze Zusammenfassung der Fähigkeiten des Frameworks. Es informiert Sie über die Anzahl der verfügbaren Exploits, Auxiliary-Module, Payloads und mehr.
Das Banner zeigt auch die Metasploit-Version an. Wenn Sie die Version jedoch jederzeit während der Arbeit in der Konsole überprüfen müssen, können Sie den Befehl version verwenden.
Geben Sie am msf6 >-Prompt den Befehl version ein und drücken Sie Enter:
version
Die Ausgabe zeigt Ihnen die spezifischen Versionen des Metasploit Frameworks und der Console-Bibliothek, die Sie gerade ausführen.
msf6 > version
Framework: 6.x.x-dev-xxxxxxxx
Console : 6.x.x-dev-xxxxxxxx
Dieser Befehl ist nützlich, um Ihre Installation zu überprüfen und sicherzustellen, dass Sie eine bestimmte Version ausführen, die für eine bestimmte Aufgabe oder ein bestimmtes Tutorial erforderlich ist.
Verwenden des Befehls help zum Auflisten verfügbarer Befehle
Die msfconsole verfügt über eine große Anzahl von Befehlen, und es ist unmöglich, sich alle zu merken. Der integrierte help-Befehl ist Ihr wertvollstes Werkzeug zur Navigation in der Konsole. Er bietet eine umfassende Liste aller verfügbaren Befehle, gruppiert nach Funktion.
In diesem Schritt verwenden Sie den Befehl help, um die verfügbaren Optionen zu erkunden.
Geben Sie am msf6 >-Prompt help ein und drücken Sie Enter:
help
Die Konsole zeigt eine lange Liste von Befehlen an. Unten sehen Sie ein gekürztes Beispiel der Ausgabe:
msf6 > help
Core Commands
=============
Command Description
------- -----------
? Help menu
banner Display an awesome metasploit banner
cd Change the current working directory
color Toggle color
connect Communicate with a host
exit Exit the console
...
Module Commands
===============
Command Description
------- -----------
advanced Displays advanced options for a module
back Move back from the current context
info Displays information about a module
load Load a framework plugin
...
Nehmen Sie sich einen Moment Zeit, um die Liste durchzusehen und ein Gefühl für die verschiedenen verfügbaren Befehlstypen zu bekommen. Sie können auch Hilfe für einen bestimmten Befehl erhalten, indem Sie help gefolgt vom Befehlsnamen eingeben. Zum Beispiel würde help search Ihnen detaillierte Informationen zur Verwendung des search-Befehls geben.
Beenden der msfconsole mit dem Befehl exit
Sobald Sie Ihre Arbeit im Metasploit Framework abgeschlossen haben, ist es wichtig, die Konsole ordnungsgemäß zu beenden. Dies stellt sicher, dass alle laufenden Jobs sauber beendet werden und Sie zu Ihrer normalen Kommandozeilen-Shell zurückkehren.
Der Befehl zum Verlassen der msfconsole ist einfach und intuitiv.
Geben Sie am msf6 >-Prompt exit ein und drücken Sie Enter:
exit
Die Konsole führt eine kurze Abschaltsequenz durch und gibt Sie dann zur normalen Terminal-Eingabeaufforderung in Ihrem ~/project-Verzeichnis zurück.
msf6 > exit
labex@instance:~/project$
Sie haben nun die Metasploit-Konsole erfolgreich gestartet, navigiert und beendet.
Zusammenfassung
Herzlichen Glückwunsch! In diesem Lab haben Sie die wesentlichen ersten Schritte für die Arbeit mit dem Metasploit Framework gelernt.
Sie haben erfolgreich:
- Den PostgreSQL-Datenbankdienst gestartet, der für die Datenverwaltung in Metasploit unerlässlich ist.
- Die
msfconsole-Oberfläche gestartet. - Das Willkommensbanner untersucht und den Befehl
versionverwendet. - Den Befehl
helpverwendet, um die verfügbaren Funktionen zu entdecken. - Die Konsole sauber mit dem Befehl
exitbeendet.
Diese grundlegenden Fähigkeiten bilden die Grundlage für alle zukünftigen Arbeiten, die Sie in Metasploit durchführen werden. Sie sind nun bereit, sich fortgeschritteneren Themen zuzuwenden, wie z. B. der Suche nach Modulen, der Konfiguration von Exploits und dem Starten von Angriffen.


