Die Abenteuer schwer fassbarer Malware, Teil II: Geheime VBA-Skripte

Die Abenteuer schwer fassbarer Malware, Teil II: Geheime VBA-Skripte

Dieser Artikel ist Teil der Reihe „Fileless Malware“. Alle anderen Teile der Serie:

Ich bin ein Fan der Seite Hybridanalyse (Hybridanalyse, im Folgenden HA). Dabei handelt es sich um eine Art Malware-Zoo, in dem man wilde „Raubtiere“ aus sicherer Entfernung sicher beobachten kann, ohne angegriffen zu werden. HA führt Malware in sicheren Umgebungen aus, zeichnet Systemaufrufe, erstellte Dateien und Internetverkehr auf und liefert Ihnen alle diese Ergebnisse für jede analysierte Probe. Auf diese Weise müssen Sie nicht Ihre Zeit und Energie damit verschwenden, den verwirrenden Code selbst herauszufinden, sondern können sofort alle Absichten der Hacker verstehen.

Die HA-Beispiele, die meine Aufmerksamkeit erregt haben, verwenden entweder codiertes JavaScript oder Visual Basic for Applications (VBA)-Skripte, die als Makros in Word- oder Excel-Dokumente eingebettet und an Phishing-E-Mails angehängt sind. Beim Öffnen starten diese Makros eine PowerShell-Sitzung auf dem Computer des Opfers. Hacker senden typischerweise einen Base64-codierten Befehlsstrom an PowerShell. Dies alles geschieht, um die Erkennung des Angriffs durch Webfilter und Antivirensoftware, die auf bestimmte Schlüsselwörter reagieren, zu erschweren.
Glücklicherweise dekodiert HA automatisch Base64 und zeigt alles sofort in einem lesbaren Format an. Im Wesentlichen müssen Sie sich nicht auf die Funktionsweise dieser Skripte konzentrieren, da Sie die vollständige Befehlsausgabe für die laufenden Prozesse im entsprechenden Abschnitt von HA sehen können. Siehe Beispiel unten:

Die Abenteuer schwer fassbarer Malware, Teil II: Geheime VBA-Skripte

Die Hybridanalyse fängt Base64-codierte Befehle ab, die an PowerShell gesendet werden:

Die Abenteuer schwer fassbarer Malware, Teil II: Geheime VBA-Skripte

...und entschlüsselt sie dann für Sie. #magisch

В vorherigen Post Ich habe meinen eigenen, leicht verschleierten JavaScript-Container erstellt, um eine PowerShell-Sitzung auszuführen. Mein Skript lädt dann, wie viele PowerShell-basierte Malware, das folgende PowerShell-Skript von einer Remote-Website herunter. Dann habe ich als Beispiel ein harmloses PS geladen, das eine Nachricht auf dem Bildschirm ausgab. Aber die Zeiten ändern sich, und jetzt schlage ich vor, das Szenario zu verkomplizieren.

PowerShell Empire und Reverse Shell

Eines der Ziele dieser Übung besteht darin, zu zeigen, wie (relativ) einfach ein Hacker klassische Perimeterverteidigungen und Antivirenprogramme umgehen kann. Wenn ein IT-Blogger wie ich ohne Programmierkenntnisse das in ein paar Abenden hinbekommt Erstellen Sie nicht erkennbare Malware (völlig unentdeckt, FUD), stellen Sie sich die Fähigkeiten eines jungen Hackers vor, der daran interessiert ist!

Und wenn Sie ein IT-Sicherheitsanbieter sind, Ihr Vorgesetzter sich jedoch der möglichen Folgen dieser Bedrohungen nicht bewusst ist, zeigen Sie ihm einfach diesen Artikel.

Hacker träumen davon, direkten Zugriff auf den Laptop oder Server des Opfers zu erhalten. Das geht ganz einfach: Ein Hacker muss sich lediglich ein paar vertrauliche Dateien auf dem Laptop des CEO sichern.

Irgendwie schon писал Informationen zur Postproduktionslaufzeit von PowerShell Empire. Erinnern wir uns daran, was es ist.

Es handelt sich im Wesentlichen um ein PowerShell-basiertes Penetrationstest-Tool, das Ihnen neben vielen anderen Funktionen die einfache Ausführung einer Reverse-Shell ermöglicht. Weitere Informationen finden Sie unter PSE-Homepage.

Machen wir ein kleines Experiment. Ich habe eine sichere Malware-Testumgebung in der Amazon Web Services-Cloud eingerichtet. Sie können meinem Beispiel folgen, um schnell und sicher ein funktionierendes Beispiel dieser Schwachstelle zu zeigen (und nicht wegen der Ausführung von Viren innerhalb der Unternehmensumgebung gefeuert zu werden).

Wenn Sie die PowerShell Empire-Konsole starten, sehen Sie etwa Folgendes:

Die Abenteuer schwer fassbarer Malware, Teil II: Geheime VBA-Skripte

Zuerst starten Sie den Listener-Prozess auf Ihrem Hacker-Computer. Geben Sie den Befehl „listener“ ein und geben Sie mit „set Host“ die IP-Adresse Ihres Systems an. Anschließend starten Sie den Listener-Prozess mit dem Befehl „execute“ (unten). Sie werden also Ihrerseits auf eine Netzwerkverbindung von der Remote-Shell warten:

Die Abenteuer schwer fassbarer Malware, Teil II: Geheime VBA-Skripte

Auf der anderen Seite müssen Sie einen Agentencode generieren, indem Sie den Befehl „Launcher“ eingeben (siehe unten). Dadurch wird PowerShell-Code für den Remote-Agent generiert. Beachten Sie, dass es in Base64 codiert ist und die zweite Phase der Nutzlast darstellt. Mit anderen Worten: Mein JavaScript-Code ruft jetzt diesen Agenten auf, um PowerShell auszuführen, anstatt harmlosen Text auf dem Bildschirm auszugeben, und stellt eine Verbindung zu unserem Remote-PSE-Server her, um eine Reverse-Shell auszuführen.

Die Abenteuer schwer fassbarer Malware, Teil II: Geheime VBA-Skripte
Die Magie der Reverse Shell. Dieser codierte PowerShell-Befehl stellt eine Verbindung zu meinem Listener her und startet eine Remote-Shell.

Um Ihnen dieses Experiment zu zeigen, habe ich die Rolle des unschuldigen Opfers übernommen und Evil.doc geöffnet und dadurch unser JavaScript gestartet. Erinnern Sie sich an den ersten Teil? PowerShell wurde so konfiguriert, dass das Fenster nicht geöffnet wird, sodass das Opfer nichts Ungewöhnliches bemerkt. Wenn Sie jedoch den Windows Task-Manager öffnen, sehen Sie einen PowerShell-Hintergrundprozess, der für die meisten Menschen ohnehin keinen Alarm auslöst. Weil es einfach normales PowerShell ist, nicht wahr?

Die Abenteuer schwer fassbarer Malware, Teil II: Geheime VBA-Skripte

Wenn Sie nun Evil.doc ausführen, stellt ein versteckter Hintergrundprozess eine Verbindung zum Server her, auf dem PowerShell Empire ausgeführt wird. Ich setzte meinen weißen Pentester-Hackerhut auf, kehrte zur PowerShell Empire-Konsole zurück und sehe nun eine Meldung, dass mein Remote-Agent aktiv ist.

Die Abenteuer schwer fassbarer Malware, Teil II: Geheime VBA-Skripte

Dann gab ich den Befehl „interact“ ein, um eine Shell in PSE zu öffnen – und da war ich! Kurz gesagt, ich habe den Taco-Server gehackt, den ich einmal selbst eingerichtet habe.

Die Abenteuer schwer fassbarer Malware, Teil II: Geheime VBA-Skripte

Was ich gerade demonstriert habe, erfordert von Ihrer Seite nicht viel Arbeit. All dies können Sie problemlos in Ihrer Mittagspause für ein bis zwei Stunden durchführen, um Ihre Kenntnisse im Bereich Informationssicherheit zu verbessern. Es ist auch eine gute Möglichkeit zu verstehen, wie Hacker Ihren externen Sicherheitsbereich umgehen und in Ihre Systeme eindringen.

IT-Manager, die denken, sie hätten einen undurchdringlichen Schutz gegen jegliches Eindringen aufgebaut, werden es wahrscheinlich auch lehrreich finden – das heißt, wenn Sie sie davon überzeugen können, lange genug bei Ihnen zu bleiben.

Kommen wir zurück zur Realität

Wie ich erwartet hatte, ist ein echter Hack, der für den Durchschnittsbenutzer unsichtbar ist, einfach eine Variation dessen, was ich gerade beschrieben habe. Um Material für die nächste Veröffentlichung zu sammeln, habe ich nach einem Beispiel für HA gesucht, das genauso funktioniert wie mein erfundenes Beispiel. Und ich musste nicht lange danach suchen – es gibt viele Möglichkeiten für eine ähnliche Angriffstechnik auf der Website.

Die Malware, die ich schließlich auf HA fand, war ein VBA-Skript, das in ein Word-Dokument eingebettet war. Das heißt, ich muss nicht einmal die Dokumenterweiterung fälschen, diese Malware ist wirklich ein normal aussehendes Microsoft Word-Dokument. Wenn Sie interessiert sind, habe ich dieses Beispiel namens ausgewählt rfq.doc.

Ich habe schnell gelernt, dass man schädliche VBA-Skripte oft nicht direkt aus einem Dokument extrahieren kann. Hacker komprimieren und verstecken sie, sodass sie in den integrierten Makro-Tools von Word nicht sichtbar sind. Zum Entfernen benötigen Sie ein Spezialwerkzeug. Zum Glück bin ich auf einen Scanner gestoßen OfficeMalScanner Frank Baldwin. Danke, Frank.

Mit diesem Tool konnte ich stark verschleierten VBA-Code herausziehen. Es sah ungefähr so ​​aus:

Die Abenteuer schwer fassbarer Malware, Teil II: Geheime VBA-Skripte
Die Verschleierung wurde von Fachleuten auf ihrem Gebiet vorgenommen. Ich war beeindruckt!

Angreifer sind wirklich gut darin, Code zu verschleiern, ganz anders als meine Bemühungen, Evil.doc zu erstellen. Okay, im nächsten Teil werden wir unsere VBA-Debugger herausnehmen, etwas tiefer in diesen Code eintauchen und unsere Analyse mit den HA-Ergebnissen vergleichen.

Source: habr.com

Kommentar hinzufügen