Über anhaltende Cyber-Bedrohungen und -Gruppierungen mit politisch motivierten Zielen in Lateinamerika wird selten berichtet. Momentan existiert aber eine andauernde Cyberspionage-Kampagne gegen staatliche Einrichtungen. Die sich hinter den Cyber-Attacken verbergende Machete-Gruppierung konnte Gigabytes an geheimen Daten erbeuten. Die meisten davon stammen aus dem Umfeld der Regierung. Zum jetzigen Zeitpunkt ist die Cybergang noch sehr aktiv. Hauptsächlich ist sie damit beschäftigt, ihre Malware, Infrastruktur und Spearphishing-Kampagne anzupassen.
ESET verfolgte neue Versionen der auf Python basierenden Malware-Tools der Machete-Gruppe, die zunächst im April 2018 auftauchten. Zwar sind die Hauptfunktionen der Backdoor überwiegend gleich geblieben. Die Cyber-Spione ergänzten allerdings hier und da ein paar neue Features. Im umfassenden ESET-Whitepaper haben wir alle wichtigen Informationen zusammengetragen.
Die Angriffsziele von Machete
Zwischen Ende März und Ende Mai 2019 fanden die ESET-Forscher mehr als fünfzig kompromittierte Computer, die aktiv mit einem C&C-Server kommunizierten. Das ergibt mehrere Gigabyte an Daten, die jede Woche von den infizierten Rechnern aus hochgeladen wurden. Mehr als Dreiviertel der Rechner ordnete man Regierungsorganisationen, Bildungseinrichtungen, der Polizei und außenpolitischen Ministerien zu. Machete griff auch auf andere lateinamerikanische Länder über. Dazu zählen das ecuadorianische Militär und andere Einrichtungen von besonderem Interesse. Die aktuelle Verbreitung von Machete zeigt Abb. 1.
Die Tricks der Machete Cyber-Angreifer
Die Malware-Akteure greifen auf effektive Spearphishing-Angriffe zurück. Durch eine ganze Reihe von Cyberattacken auf lateinamerikanische Länder blicken sie auf einen ausgereiften Erfahrungshorizont zurück. Über die Jahre konnten sie ihre Angriffsstrategien verfeinern. Die Machete Cyber-Angreifer kennen ihre Ziele genau und wissen, welche Kommunikationswege anzuzapfen und welche Dateien von Wert sind. Nicht nur Office-Dokumente, sondern auch spezielle Dateitypen, wie die Geographic Information System (GIS) Software nutzt, sind interessante Beute. Die Gruppierung suchte bereits nach Dateien, die mithilfe von militärischen Rastern Navigationsrouten und Positionspunkte erstellen.
Die Machete-Operatoren schickt sehr spezifische E-Mails unmittelbar an die ausgewählten Opfer. Der Inhalt ändert sich je nach Ziel. Die elektronischen Nachrichten enthalten entweder einen Link zu einer selbst-extrahierenden Datei oder sie ist an die E-Mails selbst als ZIP angehängt. Beides ist in der Lage, die Malware zu aktivieren. Zunächst öffnet sich aber ein Lockvogel-Dokument.
Abb. 2 zeigt ein typisches PDF-Dokument, dass einem potenziellen Opfer während der Kompromittierung angezeigt werden kann. Um die nichts ahnenden ausgewählten Ziele in die Falle zu locken, benutzen die Machete-Akteure offizielle Dokumente, die sie zuvor von den angesprochenen Einrichtungen stahlen.
Abb. 2 ist ein Ausschnitt aus einem Geheimdokument, das auf den 21. May 2019 datiert ist. Am selben Tag schickten die Cyber-Angreifer die schädlichen ZIP-Anhänge per E-Mail an ihre ausgewählten Opfer. Die ESET-Forscher deckten noch weitere Malware-Angriffe nach diesem Schema auf.
Diese Art von Dokument wird mehrmals täglich zwischen den von Machete anvisierten Zielen ausgetauscht. Radiogramas sind beispielsweise Dokumente, die der Kommunikation der venezolanischen Streitkräfte dienen. Die Cyber-Angreifer nutzen ihr Wissen über die Dokumente und den militärischen Jargon, um sehr überzeugende Phishing-Mails zu kreieren.
Darstellung der Machete-Malware
Die Machete-Gruppe ist sehr aktiv. Seit dem Release der letzten Version im April 2018 nahm sie mehrere Veränderungen an der Malware vor. Frühere Versionen wurden durch Kaspersky im Jahr 2014 und durch Cyclance im Jahr 2017 beschrieben. Abb. 3 zeigt die Komponenten der neueren Version der Machete-Malware.
Der erste Teil des Machete-Angriffs beinhaltet einen Downloader im selbst-extrahierenden Archiv – erstellt mit 7z SFX Builder. Ist das Datei-Archiv mithilfe des selbst-extrahierenden Codes entpackt, öffnet ein Extractor ein PDF-Dokument oder ein Microsoft Office File, das als Köder dient (Abb. 2). Danach folgt die Ausführung des Downloaders. Dieser stellt wiederum eine andere selbst-extrahierende Datei dar, welche die eigentliche Downloader-Binary (eine py2exe-Komponente) sowie die Ziel-URL des Downloaders als verschlüsselter String enthält.
Alle von uns entdeckten Download-URLs befanden sich entweder in einer Dropbox oder in einem Google Doc. Die hinter den URLs versteckten Dateien waren allesamt selbst-extrahierende Archive (RAR SFX), die verschlüsselte Konfigurations- und py2exe-Backdoor-Komponenten enthielten. Seit Mai 2019 verwenden die Machete-Akteure jedoch keine Downloader mehr und greifen auf das Lockvogel-Dokument und auf die im selben Archiv befindliche Backdoor-Komponenten zurück.
Ein Dekompilieren der py2exe-Binaries führt zu Python-Code. Alle Downloader- und Backdoor-Komponenten sind mithilfe von pyobfuscate verschleiert. Bereits in vorherigen Malware-Versionen gebrauchte die Machete-Gruppierung diese Verschleierungstaktik. Abb. 4 zeigt einen Teil eines der verschleierten Skripte.
Seit August 2018 werden Machetes Malware-Komponenten mit zusätzlicher Verschleierung versehen. Die Skripte enthalten jetzt einen Block mit zlib-komprimiertem, base64-codierten Text, der nach der Dekodierung ein Skript wie in Abbildung 4 ausgibt. Diese erste Verschleierungsebene wird mithilfe von pyminifier und dem -gzip-Parameter geschaffen.
Machetes Backdoor-Komponenten
Machetes Dropper ist eine RAR SFX Executable. Dieser legt im System des Opfers folgende drei py2exe-Komponenten ab: GoogleCrash.exe, Chrome.exe und GoogleUpdate.exe. Nur eine einzelne Konfigurationsdatei setzt der Dropper ab. Es handelt sich um jer.dll, welche base64-verschlüsselten Text enthält, der zu einem AES-verschlüsselten String passt. Die Abb. 5 fasst die Komponenten in einer schematischen Darstellung zusammen.
GoogleCrash.exe ist die Hauptkomponente der Malware. Es plant die Ausführung der beiden anderen Komponenten und erstellt Windows Task Scheduler-Aufgaben, um Persistenz auf dem Computer-System zu gewährleisten.
Die Chrome.exe-Komponente ist für das Datensammeln auf dem betroffenen Computer verantwortlich. Die Komponente ist zu folgendem imstande:
- Screenshots aufnehmen
- Tastatureingaben aufzeichen
- Zwischenablage auslesen
- AES-Verschlüsselung und abgreifen von Dokumenten
- Erkennen neu eingelegter Laufwerke & kopieren der Dateien
- Ausführen andere Binärdateien, die vom C&C-Server heruntergeladen wurden
- Abrufen bestimmter Dateien vom System
- Abrufen von Benutzerprofildaten von mehreren Browsern
- Sammeln von Geodaten von Opfern und Informationen zu WLAN-Netzwerken in der Nähe
- physische Abgreifen von Daten durch Wechseldatenträger
Die Machete-Akteure sind an bestimmten Dateitypen von ihren Zielen interessiert. Abgesehen von Microsoft Office-Dokumenten werden Laufwerken auch nach folgenden Dateien durchsucht:
- Backup-Dateien
- Datenbankdateien
- Kryptografische Schlüssel (PGP)
- OpenOffice-Dokumente
- Vektor-Grafiken
- Dateien für Geoinformationssysteme (topografische Karten, Navigationsrouten usw.)
Die kompromittierte Chrome.exe sammelt Informationen über WLAN-Netzwerke in der Nähe und sendet diese an die Mozilla Location Service API. Dieser Service ist imstande, Geo-Koordinaten aus Bluetooth Beacons, Mobilfunkmasten oder WLAN-Signalen zu reproduzieren. Die Malware nimmt Längen- und Breitengrade, um eine Google Maps URL zusammenzustellen. Einen Ausschnitt aus dem dafür zuständigen Code zeigt Abb. 6:
Der Vorteil des Mozilla Location Services besteht darin, dass die Geolokalisierung ohne tatsächliches GPS möglich ist, zum Teil sogar genauer als andere Methoden. Eine IP-Adresse kann beispielsweise verwendet werden, um einen ungefähren Standort zu ermitteln, ist jedoch nicht so genau. Wenn Daten für das Gebiet verfügbar sind, kann Mozilla Location Service Informationen bereitstellen, z. B., in welchem Gebäude sich das Ziel befindet.
Die GoogleUpdate.exe- Komponente ist für die Kommunikation mit dem ferngesteuerten C&C-Server verantwortlich. Die Konfiguration zum Herstellen der Verbindung wird aus der Datei jer.dll gelesen: Domain-Name, User-Name und Kennwort. Hauptsächlich kommuniziert Machete via FTP, obwohl HTTP im Jahr 2019 als Fallback implementiert wurde. Außerdem lädt GoogleUpdate.exe verschlüsselte Dateien in verschiedene Unterverzeichnisse auf dem C&C-Server hoch und ruft auch bestimmte Dateien ab, die von den Machete-Akteuren bereitgestellt wurden. Auf diese Weise wird die Machete-Malware mit frischen Konfigurationen, neuen Binärdateien oder Datei-Listen versorgt. Zudem können Binaries heruntergeladen und ausgeführt werden.
Fazit
Die Machete-Gruppierung ist stärker als je zuvor. Selbst veröffentlichte technische Publikationen und eindeutige IoCs der Malware brachten sie nicht davon ab, ihre schädlichen Tools weiterzuentwickeln. ESET-Forscher verfolgten die Cyberkriminellen über Monate hinweg und beobachteten einige Veränderungen – manchmal geschahen diese nur innerhalb weniger Wochen.
Die bisher letzte Veränderung bezieht sich auf die Machete-Backdoors. Sechs Backdoor-Komponenten sind nicht länger „py2exe-Executables“. Stattdessen existieren Python-Script-Module, eine originale „Python 2.7.exe“ und alle verwendeten Programm-Bibliotheken in einer selbst-extrahierenden Datei.
Verschiedene Artefakte im Machete-Code und der zugrundeliegenden Infrastruktur lassen vermuten, dass es sich bei den Cyber-Angreifern um eine spanische Gruppierung handelt. Es existiert Code, der dazu in der Lage ist, Informationen von Wechseldatenträgern zu stehlen. Dieser Umstand deutet darauf hin, dass die Machete-Akteure eventuell aus einem der Zielländer agieren.
Eine umfassende und ausführliche Liste der Indicators of Compromise (IoCs) befindet sich im ESET Whitepaper und auf GitHub. ESET-Sicherheitsprodukte erkennen die Cyber-Bedrohung als Python/Machete.
Auch detaillierte Informationen über die Machete-Backdoor findet man im Whitepaper. Bei Fragen und Anregungen, oder um Malware-Samples einzureichen, steht die folgende E-Mail-Adresse zur Verfügung: threatintel@eset.com