Die Sicherheitsforscher des ThreatLabz-Teams haben einen neuen Malware-Loader namens Squirrelwaffle analysiert, der zur Verbreitung von Cobalt Strike verwendet wird. Die nun entdeckte Kampagne läuft seit Mitte September 2021. Der Squirrelwaffle-Loader wird über dieselbe Infrastruktur bereitgestellt, die auch der Qakbot-Banking-Trojaner nutzt.
Squirrelwaffle-Kampagnen beginnen in der Regel mit Spam-E-Mails, die ihre Opfer mit einer als E-Mail-Thread-Hijacking bekannten Technik dazu zu bringen, auf eine eingebettete URL zu klicken. Beim E-Mail-Thread-Hijacking werden E-Mails genutzt, die vor dem Angriff gestohlen und im Anschluss umfunktioniert werden. Dem Opfer wird dadurch vorgegaukelt, dass die E-Mail von einer bekannten Person stammt, die auf denselben Thread antwortet.
Sobald das Opfer auf die URL klickt, wird eine ZIP-Datei heruntergeladen, die ein Microsoft Word-Dokument enthält. Dieses Dokument benutzt eine DocuSign-Vorlage mit Anweisungen für den Anwender, das Makro zu aktivieren, um die Inhalte einzusehen.
Aktiviert der Benutzer das Makro, wird ein AutoOpen()-Unterprogramm aufgerufen, das dann ein bösartiges VBA-Makro (Visual Basic Application) ausführt. Das Dokument, das den Makrocode enthält, nutzt cscript.exe zum Extrahieren der eingebetteten VBS-Datei, die in den Ordner %ProgramData% geschrieben und mit wscript.exe ausgeführt wird.
Diese VBS-Datei enthält ein verschleiertes PowerShell-Skript mit fünf verschiedenen URLs zum Herunterladen der Payload. Der Bedrohungsakteur, der hinter diesen Kampagnen steht, hat im Laufe der Zeit einige seiner TTPs (Taktiken, Techniken und Prozesse) geändert.
In letzter Zeit wurde der ursprüngliche Infektionsvektor über versteckte Microsoft Excel-Tabellen mit einem Auto_Open()-Makro verwendet, das den Squirrelwafle-Loader von drei verschiedenen URLs herunterlädt. Der Loader wird anschließend über „regsvr32(exe)“ ausgeführt.
Sobald die Payload heruntergeladen ist, wird sie entweder über „rundll32(exe)“ oder „regsvr(exe)“ gestartet, je nach dem ursprünglichen Infektionsvektor zum Download der Payload. Der Squirrelwaffle-Loader ist eine 32-Bit-DLL, die mit einem eigenen Packer versehen ist. Ähnliche Packer wurden auch in anderen Malware-Familien beobachtet, darunter Ursnif und Zloader.
Squirrelwaffle enthält eine fest kodierte Konfiguration, die in der Binärdatei verschlüsselt ist. Sie besteht aus zwei Hauptkomponenten: einer Liste von CnC-URLs und einer Liste von zu blockierenden IP-Adressen, die zu Sandboxen und Analyse-Plattformen gehören. Diese Listen werden mit einem XOR-basierten Algorithmus mit fest kodierten Schlüsseln verschlüsselt.
Sobald die Malware alle zu blockierenden CnC-Domänen und IP-Adressen entschlüsselt hat, erstellt sie ein Socket und sendet die Daten mit der Funktion send() und empfängt die Inhalte vom CnC mit recv()-Aufrufen. Das CnC-Kommunikationsprotokoll verwendet eine HTTP-POST-Anfrage mit einer Base64-kodierten Nutzlast, die mit einem XOR-basierten Algorithmus und dem fest kodierten Schlüssel KJKLO verschlüsselt wird.
Die C&C-Kommunikation kann eine zweite Payload enthalten, die in einen Dateinamen geschrieben wird, der aus elf zufälligen alphanumerischen Zeichen besteht, denen eine .txt-Erweiterung angehängt ist, die schließlich ebenfalls vom Loader ausgeführt wird.
Fazit
Nach der Zerschlagung des Emotet-Botnets Anfang des Jahres füllen Cyberkriminelle diese Lücke. Squirrelwaffle scheint ein neuer Loader zu sein, der die entstandene Lücke für sich nutzt. Es ist noch nicht klar, ob dieser Loader von einem bereits bekannten Bedrohungsakteur oder einer neuen Gruppe entwickelt und verbreitet wird. Ähnliche Verbreitungstechniken wurden jedoch zuvor von Emotet verwendet.
Das ThreatLabz-Team von Zscaler wird diesen und andere Angriffe weiter beobachten und analysieren.