Vor fast genau einem Jahr hatte ich gezeigt, wie man mittels des “Empire Frameworks” ein Makro erzeugen und in MS-Powerpoit einbinden kann.
Mich hat heute interessiert, ob diese Methode bereits von Virenschutzprogrammen aktuell erkannt und ein Angriff damit automatisch verhindert wird. Als Testkandidat habe ich Symantec Endpoint Protection gewählt.
Die Installation von “Empire” auf Kali Linux erfolgte mittels git ohne Probleme. Mittlerweile sind dort zwei “Stager” (“macro” und “scrambled_macro”) vorhanden, mit denen Makros erzeugt werden können.
Der Stager “macro” erzeugt ein VBA Skript, dass in MS-Office Dokumente eingebunden werden kann. “Scrambled_macro” ist eine weiterentwickelte Variante. Durch Obfuscation wird versucht, den Programmcode schwer verständlich oder unlesbar zu machen. Virenschutzprogramme sollen dadurch getäuscht bzw. in Ihrer Arbeit behindert werden.
Wer mehr über das Empire Framework erfahren will, den empfehle ich meine Artikelserie in der iX 05/2016, 06/2016 und 07/2016.
Tatsächlich fiel auf, dass die mit beiden Methoden erstellten Makros, durch den Virenschutz aktuell erkannt werden.
Ein Grund mehr sich mit dem Thema Obfuscation zu befassen. Hier und hier werden u.a. Methoden beschrieben, die möglicherweise zum Erfolg führen könnten. Mit dieser Online-Lösung kann man seinen Quellcode ordentlich “durcheinander bringen”.
Ich wollte aber erst mal bewusst klein anfangen und so habe zunächst versucht, kleine Teile des Codes (z.B. Variablen) zu verändern. Tatsächlich – das plumpe ändern der Variable “str” in “zch” hat ergeben, dass das erstellte Makro von vielen Virenschutzprogrammen nicht mehr erkannt wurde.
Danach war es mir möglich auf dem “Opfer”-PC (Windows 7 und MS-Word 2010) einen Keylogger zu installieren. Das Gleiche funktionierte ebenfalls mit Windows 10.
Für mich bleibt bemerkenswert, wie leicht es ist, schon mit kleinen Veränderungen im Quellcode den Virenschutz zu täuschen.
Das folgende Bild zeigt das Ergebnis der untersuchten Word-Datei nach Veränderung des Quellendes. Nur 3 von 18 Virenscannern bewerteten die Datei als verdächtig.
Das nachfolgende Video zeigt meinen Test in einer virtuellen Umgebung ausführlich. Es sollte ebenfalls klar sein, dass der Angriff so auch aus dem Internet erfolgen könnte.
Also hier meine klare Empfehlung:
Die Einstellungen für Makros in MS-Office niemals auf “Alle Makros aktivieren” stellen. Hier sollte der Nutzer zumindest eine Benachrichtigung erhalten. Für den Hausgebrauch empfehle ich “Alle Makros mit Benachrichtigung deaktivieren”. Dies ist bereits der Standardwert, aber viele Unternehmen und Nutzer verändern die Einstellungen und öffnen damit eine große Sicherheitslücke.
Die Virenscanner die jetzt noch anschlagen (Kaspersky auch) werden durch den String “powershell.exe” getriggert. Indem man die Variable schon zu Beginn mit dem “+=”-Operator zusammenfügt und den ausschlaggebenden String aus Fragmenten oder Einzelbuchstaben hinzufügt, ist die Methode auch aktuell noch 100 % unsichtbar für alle aktuellen Virenscanner (zumindest wars im Dezember noch so ;)).
Im Video wurde Office 2010 verwendet, sollte aber auch mit den neuen Office-Versionen funktionieren, nur mit entsprechender zusätzlicher Meldung, oder?
Natürlich nicht mehr verfügbar auf YouTube…….