
Automatisiertes Exploit-Toolkit für CVE-2015-6095 und CVE-2016-0049
Hinweis: Dieses Repository verweist auf externe Repositorys (bekannt als Git-Submodule). Nach dem Klonen dieses Repositorys führen Sie bitte die folgenden Befehle aus, um diese Submodule zu klonen:
git submodule init
git submodule update
BlueBox ist eine Sammlung von Skripten und Konfigurationen für die automatisierte Ausnutzung von MS15-122 und MS16-014 (siehe auch CVE-2015-6095 und CVE-2016-0049).
Weitere Informationen zu dieser Schwachstelle finden Sie in der BlackHat EU 2015 Präsentation und im Whitepaper zu diesem Thema oder dem aktualisierten Vortrag, der auf der BSides Seattle 2015 gehalten wurde.
Dieser Exploit ermöglicht es einem Angreifer, den Anmeldebildschirm von Windows-Rechnern zu umgehen, die Domänenauthentifizierung verwenden. Dies kann genutzt werden, um Benutzerdaten auszulesen, Vollverschlüsselungsschutz zu umgehen, unbeaufsichtigte Rechner schnell anzugreifen, um ein Remote-Zugriffstoolkit oder andere Malware zu platzieren, und kann verwendet werden, um eines der oben genannten durchzuführen, ohne den Rechner offline zu nehmen.
Für eine schnelle Demonstration habe ich die folgenden Videos aufgenommen:
Dieses Repository enthält einige Init-Skripte und Konfigurationsdateien für die Bereitstellung dieser Skripte auf einem Debian-basierten System (die zuvor erwähnte Demo läuft auf Raspbian, einer Debian-Distribution für den Raspberry Pi). Es besteht jedoch keine besondere Notwendigkeit, diese Tools auf dieser Plattform auszuführen; Sie könnten genauso gut einen normalen Laptop und ein beliebiges Betriebssystem konfigurieren, um diese Python-Skripte und einen DHCP-Server auszuführen.
Die Skripte im Unterverzeichnis init-scripts können verwendet werden, um die bösartigen Server beim Booten zu starten; dies ist besonders nützlich bei der Verwendung eines kopflosen dedizierten Geräts (wie dem Raspberry Pi). Sie können diese Skripte in /etc/init.d ablegen und ausführen
update-rc.d evil-server-{dns,kdc,ldap,netbios} defaults
Dieses Repository enthält Konfigurationen für zwei Bereitstellungsstile: als einfaches Tool zur Umgehung des Sperrbildschirms oder als Zero-Downtime-Angriffstool. Weitere Beschreibungen und Konfigurationsanweisungen finden Sie unten.
Der beabsichtigte Verwendungszweck dieser Konfiguration ist es, opportunistisch Zugang zu einer Client-Arbeitsstation zu erhalten, z. B. zu einem unbeaufsichtigten Laptop. Die Bereitstellung erfordert einen unabhängigen DHCP-Server; eine Beispielkonfigurationsdatei für den ISC DHCP Server ist verfügbar. Mehrere der bösartigen Server sind fest so codiert, dass sie auf den aktuellen Rechner mit der IP-Adresse 192.168.0.1 verweisen, daher ist eine Beispiel-Netzwerkkonfiguration enthalten, die eth0 diese statische IP zuweist.
Obwohl nicht notwendig, können Sie auch einen FTP/HTTP-Server auf dem Host-Rechner installieren, um eine bösartige Nutzlast bereitzustellen, die vom Angreifer auf dem Zielrechner ausgeführt werden kann.
Diese Konfiguration erfordert zwei physische Ethernet-Geräte und ermöglicht es dem Angriffsgerät, als Man-in-the-Middle zu fungieren. Diese Konfiguration überbrückt die beiden Ethernet-Geräte, sodass der Datenverkehr unverändert durchgelassen wird, wodurch das Gerät im Netzwerk transparent wird. Seine Netfilter-Konfiguration leitet jedoch Kerberos-Datenverkehr an den localhost (das heißt an den bösartigen Server) um, was es einem Angreifer ermöglicht, den Anmeldebildschirm eines aktiven Servers zu umgehen.
Um diese Konfiguration bereitzustellen, sollten Ihre Ethernet-Geräte als Bridge konfiguriert sein. Die Konfiguration erfordert die Verwendung von netfilter auf der Bridge-Schnittstelle, daher müssen Sie das Modul br_netfilter zu /etc/modules hinzufügen. Um ebtables und iptables so zu konfigurieren, dass sie Kerberos-Datenverkehr kapern, sollten Sie die ebtables-Konfiguration im Verzeichnis /etc/network/if-up.d/, das iptables-Skript im Verzeichnis /etc/network/if-pre-up.d/ und die Datei iptables.up.rules in /etc ablegen.
Diese Konfiguration kapert auch HTTP-Datenverkehr, der für 10.254.254.254 bestimmt ist, und leitet ihn an einen lokalen Server um, was als bequeme Möglichkeit genutzt werden kann, eine bösartige Nutzlast auf das Opfergerät herunterzuladen. Wenn Sie dies tun, sollte die Maschine auch eine Art Webserver (z. B. Apache2) installiert haben.