Suchen

Definition Metasploit Was ist Metasploit?

| Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Peter Schmitz

Metasploit ist ein Open Source Projekt, das unter anderem das Metasploit-Framework bereitstellt. Es beinhaltet eine Sammlung an Exploits, mit der sich die Sicherheit von Computersystemen testen lässt. Metasploit lässt sich auch missbräuchlich als Tool für Hacker verwenden.

Firma zum Thema

Mit den Exploits des Metasploit Framework können Security-Experten Computersysteme auf Sicherheitslücken testen.
Mit den Exploits des Metasploit Framework können Security-Experten Computersysteme auf Sicherheitslücken testen.
(Bild: gemeinfrei / CC0 )

Mit Hilfe des vom Metasploit Open Source Projekt bereitgestellten Frameworks lassen sich Computersysteme auf Sicherheitslücken testen. Es können mit den vielen verschiedenen im Framework gesammelten Exploits verschiedenste Sicherheits- und Penetrationstests an verteilten Zielsystemen durchgeführt werden. Selbst die Entwicklung eigener Exploits ist möglich. Darüber hinaus ist Metasploit dazu missbrauchbar, widerrechtlich in ein System einzudringen. Realisiert ist das Framework in der Programmiersprache Ruby. Metasploit lässt sich auf den verschiedensten Betriebssystemen installieren. Dazu zählen Linux- und Unix-Versionen, macOS und Windows. Neben einer kommandozeilenorientierten Eingabe stehen grafische Benutzeroberflächen für eine einfachere Bedienung zur Verfügung. Über Add-Ons ist das Framework in verschiedenen Sprachen erweiterbar. Metasploit ist auch Bestandteil der auf Sicherheitstests spezialisierten Linux-Distribution Kali Linux.

Das Metasploit-Framework

Das Metasploit-Framework ist modular aufgebaut und unterscheidet die Aufgaben von Entwicklern und Angreifern. Es findet eine Trennung zwischen den Angriffsmethoden (Exploits) und dem auszuführenden Code statt. Exploits müssen speziell auf die unterschiedlichen Sicherheitslücken von Soft- und Hardware abgestimmt sein. Der Code kommt zum Einsatz, wenn eine Angriffsmethode erfolgreich war und das System infiltriert oder kompromittiert werden kann. Andere Bezeichnungen für den auszuführenden Code sind Shellcode oder Payload. Beispiele für Shellcodes sind auf einem speziellen Netzwerkport bereitgestellte Command-Shells, Reverse-Shells, die selbständig eine Verbindung zum Angreifersystem aufbauen, nachladbare und ausführbare Plugins oder Remote-Desktop-Software für die gezielte Fernsteuerung eines Rechners wie VNC.

Dank der Modularität des Frameworks lassen sich verschiedene Payloads mit beliebigen Exploits kombinieren. In einer speziellen Shellcode-Datenbank befinden sich die unterschiedlichen Payloads inklusive Quelltext, die vom Framework verwendet werden können. Um einen Angriff zu starten, ist in der Regel folgende Vorgehensweise einzuhalten. Zunächst werden die Exploits ausgewählt und konfiguriert, die das Zielsystem auf Sicherheitslücken testen sollen. Dabei sind beispielsweise die Betriebssysteme oder die verwendeten Software- und Netzwerkanwendungen auf dem Zielsystem zu berücksichtigen. Metasploit hält mehrere Hundert verschiedene Exploits bereit. Für den Fall eines erfolgreichen Angriffs ist eine Payload zu wählen, die auf dem Zielrechner ausgeführt werden soll. Im nächsten Schritt erfolgt die Prüfung, ob das Zielgerät für ein bestimmtes Exploit anfällig ist. Ist dies der Fall, versucht das System die gewünschte Payload auszuführen. Mittels der verschiedenen Payloads ist es anschließend möglich, weitere Aktionen auf dem kompromittierten Rechnersystem zu starten.

Metasploitable - die virtuelle Testumgebung für Angriffe

Nicht immer sollen Angriffe und Angriffsmethoden an echten Rechnersystemen getestet werden. Um eine Testumgebung zu schaffen, existiert eine eigene virtuelle Distribution mit dem Namen Metasploitable. In einem abgeschlossenen virtuellen Umfeld lassen sich Angriffe und Angriffsmethoden sicher und ohne Auswirkung auf echte Systeme beliebig testen.

Rechtliche Aspekte

Wer Metasploit einsetzt, darf dies nur an Systemen tun, die ihm entweder selbst gehören oder für die ihm eine explizite Genehmigung für einen Test vorliegt. Der Versuch mit einem Exploit in ein fremdes System einzudringen stellt rechtlich eine strafbare Handlung dar. Das Tool fällt missbräuchlich verwendet unter den so genannten Hackerparagraphen. Der Vertrieb oder der Besitz kann strafbar sein, sobald die Absicht besteht, das Framework für eine rechtswidrige Handlung zu verwenden.

(ID:45150422)

Über den Autor