Angriffe mit Metasploit Resource Scripts automatisieren

Kali LinuxBeginner
Jetzt üben

Einführung

Willkommen zu diesem Lab über die Automatisierung von Angriffen mit Metasploit Resource Scripts. Das Metasploit Framework ist ein leistungsstarkes Werkzeug für Penetrationstests, aber das manuelle Eingeben von Befehlen für jedes Engagement kann repetitiv und zeitaufwendig sein. Resource Scripts, einfache Textdateien mit der Erweiterung .rc, ermöglichen es Ihnen, diese Befehlssequenzen zu automatisieren.

In diesem Lab lernen Sie, wie Sie ein Resource Script erstellen, um eine vollständige Angriffskette gegen einen anfälligen Dienst zu automatisieren. Dies umfasst die Einrichtung eines Workspaces, das Scannen des Ziels, die Auswahl eines Exploits, dessen Konfiguration und den Start des Angriffs. Am Ende dieses Labs werden Sie in der Lage sein, Ihre eigenen Skripte zu erstellen, um Ihre Penetrationstest-Workflows zu optimieren.

Für dieses Lab werden wir eine simulierte anfällige Maschine als Ziel verwenden. Gehen Sie davon aus, dass die IP-Adresse der Zielmaschine 10.0.2.15 ist.

Eine neue Datei mit der Erweiterung .rc erstellen

In diesem Schritt erstellen Sie die Resource Script-Datei. Ein Metasploit Resource Script ist einfach eine Textdatei, die eine Liste von msfconsole-Befehlen enthält, die sequenziell ausgeführt werden. Konventionsgemäß haben diese Dateien die Erweiterung .rc.

Wir werden den Texteditor nano verwenden, um eine Datei namens attack.rc im Standardverzeichnis ~/project zu erstellen.

Öffnen Sie Ihr Terminal und führen Sie den folgenden Befehl aus, um die neue Datei zu erstellen und zu öffnen:

nano attack.rc

Dieser Befehl öffnet eine leere Datei im nano-Editor. Speichern Sie die leere Datei vorerst und beenden Sie den Editor, indem Sie Strg+X, dann J und schließlich Enter drücken. Sie haben nun die Resource Script-Datei erstellt, die Sie in den nächsten Schritten füllen werden.

Hinzufügen einer Sequenz von msfconsole-Befehlen zur Datei

In diesem Schritt fügen Sie die anfänglichen Befehle zu Ihrem Resource Script hinzu. Diese Befehle richten einen dedizierten Workspace für unseren Test ein und führen einen grundlegenden Nmap-Scan durch, um Informationen über das Ziel zu sammeln. Die Organisation der Arbeit in Workspaces ist eine gute Praxis in Metasploit.

Öffnen Sie zuerst die Datei attack.rc erneut mit nano:

nano attack.rc

Fügen Sie nun die folgenden Zeilen zur Datei hinzu. Der erste Befehl erstellt einen neuen Workspace namens vsftpd_lab, und der zweite Befehl führt einen Nmap-Scan gegen unser Ziel (10.0.2.15) durch und speichert die Ergebnisse in der Datenbank.

workspace -a vsftpd_lab
db_nmap -A 10.0.2.15

Nachdem Sie diese beiden Zeilen hinzugefügt haben, sollte Ihre Datei attack.rc genau so aussehen. Speichern Sie die Datei und beenden Sie nano, indem Sie Strg+X, J und Enter drücken.

Einbinden von Befehlen zur Verwendung eines Exploits, zum Setzen von Optionen und zur Ausführung

In diesem Schritt fügen Sie die Kern-Angriffs-Befehle zum Skript hinzu. Wir werden eine bekannte Schwachstelle im VSFTPD-Server anvisieren, insbesondere den vsftpd_234_backdoor-Exploit. Sie fügen Befehle hinzu, um diesen Exploit auszuwählen, die erforderliche Zieloption zu setzen und ihn schließlich auszuführen.

Öffnen Sie die Datei attack.rc erneut mit nano:

nano attack.rc

Hängen Sie die folgenden Befehle an das Ende der Datei an. Diese Befehle weisen Metasploit an:

  1. use exploit/unix/ftp/vsftpd_234_backdoor: Wählt das spezifische Exploit-Modul aus.
  2. set RHOSTS 10.0.2.15: Setzt die Option RHOSTS (Remote Hosts) auf die IP-Adresse unseres Ziels.
  3. exploit: Startet den Angriff.
use exploit/unix/ftp/vsftpd_234_backdoor
set RHOSTS 10.0.2.15
exploit

Nachdem Sie diese Zeilen hinzugefügt haben, sollte Ihre vollständige Datei attack.rc nun die folgenden fünf Befehle enthalten:

workspace -a vsftpd_lab
db_nmap -A 10.0.2.15
use exploit/unix/ftp/vsftpd_234_backdoor
set RHOSTS 10.0.2.15
exploit

Speichern Sie die Änderungen und beenden Sie den nano-Editor (Strg+X, J, Enter). Ihr automatisches Angriffsskript ist nun fertiggestellt.

Starten von msfconsole mit dem Flag -r zur Ausführung des Skripts

In diesem Schritt führen Sie das gerade erstellte Resource Script aus. Die Metasploit-Konsole, msfconsole, kann mit dem Flag -r gefolgt vom Pfad zu einem Resource Script gestartet werden. Dies weist Metasploit an, die Befehle aus der angegebenen Datei beim Start auszuführen.

Stellen Sie sicher, dass Sie sich im Verzeichnis ~/project befinden, in dem sich Ihre Datei attack.rc befindet. Führen Sie nun den folgenden Befehl in Ihrem Terminal aus:

msfconsole -r attack.rc

Dieser Befehl startet das Metasploit Framework. Anstatt Sie sofort mit der üblichen Eingabeaufforderung msf6 > zu begrüßen, beginnt es mit der Ausführung jedes Befehls aus attack.rc nacheinander.

Beobachten der automatisierten Ausführung der Angriffskette

In diesem letzten Schritt beobachten Sie die Ergebnisse Ihres automatisierten Skripts. Während msfconsole ausgeführt wird, sehen Sie die Ausgabe jedes Befehls in Ihrer Datei attack.rc. Sie sehen, wie der Workspace erstellt wird, der Nmap-Scan ausgeführt wird, der Exploit konfiguriert und schließlich der Angriff gestartet wird.

Wenn der Angriff erfolgreich ist, öffnet Metasploit eine Befehlsshell-Sitzung auf der Zielmaschine. Sie sehen eine Meldung ähnlich dieser:

[*] Found shell.
[*] Command shell session 1 opened (10.0.2.4:42931 -> 10.0.2.15:6200) at 2023-10-27 10:30:00 -0400

Sie befinden sich nun in einer Shell auf dem kompromittierten Ziel. Um dies zu überprüfen, können Sie einen Befehl wie whoami ausführen, um zu sehen, als welcher Benutzer Sie laufen.

whoami

Die erwartete Ausgabe sollte sein:

root

Dies bestätigt, dass Ihr automatisiertes Skript das Ziel erfolgreich kompromittiert und Root-Zugriff erlangt hat.

Um aufzuräumen, geben Sie exit ein, um die Befehlsshell-Sitzung zu schließen, und geben Sie dann erneut exit ein, um msfconsole zu beenden.

Zusammenfassung

In diesem Lab haben Sie erfolgreich gelernt, wie Sie einen Penetrationstest-Workflow mit Metasploit Resource Scripts automatisieren.

Sie haben damit begonnen, eine Resource Script-Datei (attack.rc) zu erstellen. Anschließend haben Sie diese mit einer Sequenz von msfconsole-Befehlen gefüllt, um eine vollständige Angriffskette durchzuführen: Erstellen eines Workspaces, Scannen des Ziels, Auswählen und Konfigurieren eines Exploits und schließlich Starten des Angriffs. Sie haben gelernt, wie Sie dieses Skript mit dem Befehl msfconsole -r ausführen und die automatisierte Ausführung beobachtet.

Diese Fähigkeit ist von unschätzbarem Wert, um Zeit zu sparen und Konsistenz bei Ihren Sicherheitsbewertungen zu gewährleisten. Sie können nun komplexere Skripte erstellen, um verschiedene wiederkehrende Aufgaben bei zukünftigen Einsätzen zu automatisieren.