Einführung
Willkommen in der Welt von Metasploit! Das Metasploit Framework ist ein mächtiges Werkzeug, das von Sicherheitsexperten für Penetrationstests und Schwachstellenbewertungen (Vulnerability Assessment) eingesetzt wird. Im Zentrum steht die Metasploit Console, oder msfconsole, eine interaktive Kommandozeilen-Schnittstelle (Command-Line Interface), die Ihnen Zugriff auf die riesige Auswahl an Modulen, Exploits und Payloads des Frameworks gewährt.
In diesem Lab lernen Sie die wesentlichen Befehle zur Navigation in der msfconsole kennen. Die Beherrschung dieser Grundlagen ist der erste Schritt zur effektiven Nutzung von Metasploit. Wir werden behandeln, wie man Hilfe erhält, Projekte mit Arbeitsbereichen (Workspaces) verwaltet, nach Modulen sucht, detaillierte Informationen darüber ansieht und die Konsole ordnungsgemäß beendet.
Beginnen wir mit dem Starten der Konsole.
Kernbefehle mit dem help-Befehl erkunden
In diesem Schritt starten Sie die Metasploit Console und verwenden den Befehl help, um die verfügbaren Befehle zu erkunden. Der help-Befehl ist Ihre wertvollste Ressource, wenn Sie unsicher sind, was ein Befehl bewirkt oder welche Befehle überhaupt verfügbar sind.
Zuerst starten wir die Metasploit Console. Wir verwenden das Flag -q (quiet), um das Startbanner für eine sauberere Oberfläche zu überspringen.
Führen Sie den folgenden Befehl in Ihrem Terminal aus:
msfconsole -q
Sie werden feststellen, dass sich Ihre Eingabeaufforderung zu msf > ändert, was anzeigt, dass Sie sich nun innerhalb der Metasploit Console befinden.
Nun verwenden wir den Befehl help, um eine Liste aller verfügbaren Befehle anzuzeigen.
help
Sie sehen eine lange Liste von Befehlen, die zur einfacheren Navigation kategorisiert sind.
Core Commands
=============
Command Description
------- -----------
? Hilfemenü
banner Anzeige eines beeindruckenden Metasploit-Banners
cd Aktuelles Arbeitsverzeichnis ändern
color Umschalten der Farbausgabe
connect Kommunikation mit einem Host
...
Module Commands
===============
Command Description
------- -----------
advanced Anzeige erweiterter Optionen für ein Modul
back Zurück aus dem aktuellen Kontext wechseln
info Anzeige von Informationen über ein Modul
...
Sie können auch detaillierte Hilfe für einen bestimmten Befehl erhalten. Um beispielsweise mehr über den Befehl search zu erfahren, können Sie help search eingeben.
help search
Dies zeigt die Syntax und die Optionen für den Befehl search an.
Usage: search [options] <keywords>
Suche nach Modulen, Plugins und anderen Framework-Objekten.
OPTIONS:
-h, --help Hilfebanner.
-o <file>, --output <file> Ausgabe in einer Datei im CSV-Format senden.
-S <string>, --search <string> Suchzeichenfolge zur Zeilenfilterung.
-t <type>, --type <type> Der Typ des zu durchsuchenden Moduls (exploit, payload, auxiliary, etc)
...
Nutzen Sie die Gelegenheit, andere Befehle mit help zu erkunden, bevor Sie mit dem nächsten Schritt fortfahren.
Arbeitsbereichsverwaltung mit dem workspace-Befehl anzeigen
In diesem Schritt lernen Sie die Arbeitsbereiche (Workspaces) kennen. Arbeitsbereiche sind eine Methode, um Ihre Arbeit in Metasploit zu organisieren. Jeder Arbeitsbereich ist eine in sich geschlossene Umgebung, die Informationen über Hosts, Dienste, Schwachstellen und gesammelte Daten (Loot) für ein spezifisches Engagement speichert. Dies ist äußerst nützlich, um verschiedene Penetrationstest-Projekte voneinander getrennt zu halten.
Standardmäßig befinden Sie sich im Arbeitsbereich default. Sie können den aktuellen und die verfügbaren Arbeitsbereiche mit dem Befehl workspace anzeigen.
workspace
Die Ausgabe zeigt Ihnen die verfügbaren Arbeitsbereiche an, wobei ein Sternchen * den aktuell aktiven Bereich kennzeichnet.
* default
Erstellen wir nun einen neuen Arbeitsbereich für unser Projekt. Wir nennen ihn myproject. Das Flag -a wird verwendet, um einen neuen Arbeitsbereich hinzuzufügen.
workspace -a myproject
Metasploit bestätigt die Erstellung und wechselt Sie automatisch zum neuen Arbeitsbereich.
[*] Added workspace: myproject
[*] Workspace: myproject
Wenn Sie nun die Arbeitsbereiche erneut auflisten, sehen Sie sowohl default als auch myproject, wobei myproject der aktive ist.
workspace
default
* myproject
Alle nachfolgenden Aktionen, wie das Scannen von Hosts oder das Sammeln von Daten, werden nun innerhalb des Arbeitsbereichs myproject gespeichert.
Verfügbare Module mit dem search-Befehl auflisten
In diesem Schritt lernen Sie, wie Sie Module mithilfe des Befehls search finden. Das Metasploit Framework enthält Tausende von Modulen, welche die Kernkomponenten sind, die Sie zur Durchführung von Aktionen verwenden werden. Dazu gehören Exploits, Auxiliary-Scanner, Payloads und mehr. Der Befehl search ist unerlässlich, um das richtige Werkzeug für die jeweilige Aufgabe zu finden.
Sie können Module anhand von Schlüsselwörtern durchsuchen. Suchen wir zum Beispiel nach Modulen, die mit smb (Server Message Block) in Zusammenhang stehen, einem gängigen Netzwerkprotokoll.
search smb
Die Ausgabe ist eine lange Liste übereinstimmender Module. Die Ergebnisse werden in einer Tabelle mit mehreren Spalten angezeigt:
- #: Die Indexnummer des Ergebnisses.
- Name: Der vollständige Pfad und Name des Moduls.
- Disclosure Date: Das Datum der öffentlichen Bekanntgabe der Schwachstelle.
- Rank: Die Zuverlässigkeit des Exploits, von
low(niedrig) bisexcellent(exzellent). - Check: Gibt an, ob das Modul eine
check-Methode besitzt, um sicher auf die Schwachstelle zu testen. - Description: Eine kurze Zusammenfassung dessen, was das Modul tut.
Matching Modules
================
## Name Disclosure Date Rank Check Description
- ---- --------------- ---- ----- -----------
0 auxiliary/admin/smb/impacket/secretsdump 2021-11-09 normal No SMB Secrets Dump
1 auxiliary/admin/smb/psexec_ntdsgrab 2021-11-09 normal No PsExec NTDSGRAB
...
58 exploit/windows/smb/ms17_010_eternalblue 2017-03-14 average Yes MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption
...
Sie können Ihre Suche verfeinern, indem Sie Schlüsselwörter wie type, platform, name usw. verwenden. Um beispielsweise nur exploit-Module für die Plattform windows zu finden, die mit smb in Zusammenhang stehen, können Sie den folgenden Befehl verwenden:
search type:exploit platform:windows smb
Dies liefert Ihnen eine wesentlich fokussiertere Ergebnisliste, was die Suche nach dem spezifischen Exploit, den Sie benötigen, erleichtert.
Modulinformationen mit dem info-Befehl anzeigen
In diesem Schritt lernen Sie, wie Sie detaillierte Informationen zu einem bestimmten Modul mithilfe der Befehle use und info abrufen. Nachdem Sie mit search ein vielversprechendes Modul gefunden haben, müssen Sie verstehen, was es tut, welche Optionen es erfordert und welche Ziele es betrifft.
Zuerst müssen Sie ein Modul zur Bearbeitung auswählen. Dies geschieht mit dem Befehl use, gefolgt vom vollständigen Namen des Moduls aus den Suchergebnissen. Wählen wir den berühmten eternalblue-Exploit aus.
use exploit/windows/smb/ms17_010_eternalblue
Beachten Sie, dass sich Ihre Eingabeaufforderung (Prompt) ändert. Sie enthält nun den Namen des aktiven Moduls und zeigt an, dass Sie sich in dessen Kontext befinden.
msf exploit(windows/smb/ms17_010_eternalblue) >
Nachdem ein Modul ausgewählt wurde, können Sie mit dem Befehl info detaillierte Informationen darüber abrufen.
info
Dieser Befehl zeigt eine umfassende Übersicht des Moduls an, einschließlich:
- Name, Module, Platform, Arch
- Privileged: Ob spezielle Berechtigungen erforderlich sind.
- License und Rank
- Provided by: Die Autoren des Moduls.
- Available targets: Die spezifischen Betriebssysteme oder Anwendungen, die als Ziel dienen können.
- Basic options: Die Parameter, die Sie konfigurieren müssen, wie die Ziel-IP-Adresse (
RHOSTS). - Payload information: Die Arten von Payloads, die es liefern kann.
- Description: Eine detaillierte Erklärung der Schwachstelle.
- References: Links zu Advisories und Artikeln (CVE, BID usw.).
Name: MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption
Module: exploit/windows/smb/ms17_010_eternalblue
Platform: Windows
Arch: x86, x64
Privileged: Yes
License: Metasploit Framework License (BSD)
Rank: Average
...
Basic options:
Name Current Setting Required Description
---- --------------- -------- -----------
RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 445 yes The target port (TCP)
SMBDomain . no (Optional) The Windows domain to use for authentication
...
Die Überprüfung dieser Informationen ist ein entscheidender Schritt, bevor Sie versuchen, einen Exploit auszuführen.
Metasploit Konsole mit dem exit-Befehl verlassen
In diesem letzten Schritt lernen Sie, wie Sie die Metasploit Console ordnungsgemäß beenden. Obwohl Sie das Terminalfenster schließen oder Ctrl+C verwenden können, ist der empfohlene Weg, msfconsole zu verlassen, die Verwendung des Befehls exit.
Dies stellt sicher, dass das Framework sauber herunterfährt, alle laufenden Jobs stoppt und den aktuellen Zustand speichert.
Bevor Sie beenden, können Sie aus dem Kontext eines Moduls zur Haupt-Eingabeaufforderung von msfconsole zurückkehren, indem Sie den Befehl back verwenden.
back
Ihre Eingabeaufforderung kehrt zum Standard msf > zurück.
Um die Konsole nun vollständig zu verlassen, geben Sie einfach exit ein.
exit
Sie sehen eine Abschaltmeldung und kehren zu Ihrer normalen System-Shell-Eingabeaufforderung zurück.
labex:project$
Damit ist unsere grundlegende Einführung in die Navigation der Metasploit Console abgeschlossen.
Zusammenfassung
Herzlichen Glückwunsch! Sie haben dieses Lab zu den Grundlagen der Metasploit Console-Navigation erfolgreich abgeschlossen.
In diesem Lab haben Sie gelernt, wie man die grundlegendsten Operationen innerhalb von msfconsole durchführt:
- Starten der Konsole und Verwendung des Befehls
help, um andere Befehle zu entdecken und kennenzulernen. - Organisieren Ihrer Projekte mithilfe des Befehls
workspacezur Erstellung und Verwaltung separater Umgebungen. - Finden von Modulen für jede Aufgabe mit dem leistungsstarken Befehl
searchund seinen Filtern. - Untersuchen der Details, Optionen und Ziele eines Moduls mit dem Befehl
info. - Ordentliches Beenden des Frameworks mit dem Befehl
exit.
Diese Befehle bilden die Grundlage, auf der Ihre gesamte zukünftige Arbeit in Metasploit aufbauen wird. Mit diesem Wissen sind Sie nun bereit, fortgeschrittenere Themen zu erkunden, wie das Konfigurieren und Ausführen von Modulen.



