ESET-Forscher haben eine neue Entdeckung gemacht - eine zuvor undokumentierte Backdoor und Dokumenten-Stealer. Wir schreiben die von ihren Entwicklern Crutch genannte Malware der berüchtigten Turla APT-Gruppe zu. Sie wurde, laut unseren Erkenntnissen, von 2015 bis mindestens Anfang 2020 verwendet. Die Tatsache, dass wir Crutch im Netzwerk eines Außenministeriums innerhalb der Europäischen Union gesehen haben, deutet darauf hin, dass diese Malware-Familie nur gegen sehr spezifische Ziele eingesetzt wird. Dies gilt für viele Turla-Werkzeuge.
Turla ist eine Cyberspionagegruppe, die seit mehr als zehn Jahren aktiv ist. Sie hat viele Regierungen, insbesondere deren diplomatische Organisationen, auf der ganzen Welt kompromittiert und nutzt ein großes Malware-Arsenal, das wir in den letzten Jahren beschrieben haben.
Zuschreibung an Turla
Während unseren Nachforschungen konnten wir starke Verbindungen zwischen einem Crutch-Dropper aus dem Jahr 2016 und Gazer identifizieren. Letzteres, war die zweite Stufe einer Backdoor, die von Turla in den Jahren 2016 bis 2017 verwendet wurde und unter dem Namen WhiteBear bekannt ist. Unsere Analyse basiert auf dem Crutch Dropper mit SHA-1 A010D5449D29A1916827FDB443E3C84C405CB2A5 und der Gazer-Dropper mit SHA-1 1AE4775EFF21FB59708E8C2B55967CD24840C8D9.
Wir konnten die folgenden Ähnlichkeiten feststellen:
- Beide Malware-Samples wurden im September 2017 im Abstand von fünf Tagen unter dem Pfad C:\Intel\~intel_upd.exe auf demselben Computer abgelegt.
- Beide Samples droppen CAB-Dateien, die die verschiedenen Malware-Komponenten enthalten.
- Die von den genannten Samples gedroppten Loader, verwenden eindeutig verwandte PDB-Pfade:
C:\Users\user\Documents\Visual Studio 2012\Projects\MemoryStarter\Release\Extractor.pdb and C:\Users\user\Documents\Visual Studio 2012\Projects\MemoryStarter\x64\Release\Extractor.pdb - Die Loader entschlüsseln ihre Payload mit demselben RC4-Schlüssel: E8 8E 77 7E C7 80 8E E7 CE CE CE C6 C6 CE C6 68
Angesichts dieser Beispiele und der Tatsache, dass die Turla Malware-Familien, soweit bekannt, nicht mit anderen Gruppen geteilt werden, glauben wir, dass Crutch eine Malware-Familie innerhalb des Turla-Arsenals ist.
Eine weitere interessante Beobachtung ist das gleichzeitige Vorhandensein von FatDuke und Crutch auf einer Maschine. Ersteres ist eine Backdoor der dritten Stufe, die wir in unserem Operation Ghost-Bericht der Gruppe Dukes/APT29 zugeschrieben haben. Es gibt jedoch keine Hinweise auf eine Interaktion zwischen diesen beiden Malware-Familien. Es ist möglich, dass beide Gruppen unabhängig voneinander dieselbe Maschine kompromittiert haben.
Spionageaktivitäten
Laut ESET LiveGrid®-Daten verwendete Turla das Crutch-Toolset gegen mehrere Maschinen des Außenministeriums eines europäischen Landes. Die Tools wurden dazu entwickelt, um vertrauliche Dokumente und andere Dateien auf von Turla-Betreibern kontrollierte Dropbox-Konten zu exfiltrieren.
Wir waren in der Lage einige der Befehle abzufangen, die von den Betreibern an mehrere Crutch v3-Instanzen gesendet wurden. Dies ist hilfreich, um das Ziel der Operation zu verstehen. Die Angreifer betrieben hauptsächlich Aufklärung, breiteten sich im Netzwerk aus und spionierten.
Die hauptsächlichen Aktivitäten sind das Staging sowie das Komprimieren und Exfiltrieren von Dokumenten und verschiedenen Dateien, wie in Abbildung 1 dargestellt. Hierbei handelt es sich um Befehle, die von den Betreibern manuell ausgeführt werden. Sie zeigen nicht die in einem späteren Abschnitt beschriebene automatische Erfassung von Dokumenten durch die Laufwerksüberwachungskomponente.
Die Exfiltration wird durch einen anderen Backdoor-Befehl ausgeführt und ist daher in den folgenden Beispielen nicht dargestellt.
copy /y \\<redacted>\C$\users\<redacted>\prog\csrftokens.txt c:\programdata\ & dir /x c:\programdata\
copy /y \\<redacted>\c$\users\user\Downloads\FWD___~1.ZIP %temp%\
copy /y \\<redacted>\c$\docume~1\User\My Documents\Downloads\8937.pdf %temp%
"C:\Program Files\WinRAR\Rar.exe" a -hp<redacted> -ri10 -r -y -u -m2 -v30m "%temp%\~res.dat" "d:\<redacted>\*.*" "d:\$RECYCLE.BIN\*.doc*" "d:\$RECYCLE.BIN\*.pdf*" "d:\$RECYCLE.BIN\*.xls*" "d:\Recycled\*.doc*" "d:\Recycled\*.pdf*" "d:\<redacted>\*.pdf"
Abbildung 1. Manuelle Befehle, die von den Bedienern während der Spionagephase ausgeführt werden
Schließlich haben die Betreiber auch einen gewissen Sinn für Humor. Irgendwann führten sie den folgenden Befehl aus:
mkdir %temp%\Illbeback
Arbeitszeiten der Betreiber
Um eine ungefähre Vorstellung von den Arbeitszeiten der Betreiber zu bekommen, haben wir uns die Zeiten abgesehen, an denen sie ZIP-Dateien auf die von ihnen betriebenen Dropbox-Konten hochgeladen haben. Diese ZIP-Dateien enthalten Befehle für die Backdoor und werden von den Betreibern in die Dropbox hochgeladen, unabhängig von den Zeiten, zu denen die Backdoor ihren Inhalt liest und ausführt. Diese sollten also zeigen, wann die Betreiber arbeiten und nicht, wann die Maschinen des Opfers aktiv sind.
Wir haben 506 verschiedene Zeitstempel gesammelt, die von Oktober 2018 bis Juli 2019 reichen. Sie sind in Abbildung 2 dargestellt.
In Anbetracht des Diagramms arbeiten die Bediener wahrscheinlich in der Zeitzone UTC+3.
Kompromittierung und Auslieferung der Malware
Wir glauben, dass Crutch keine Backdoor der ersten Stufe ist und erst bereitgestellt wird, nachdem die Betreiber das Netzwerk eines Unternehmens das erste Mal kompromittiert haben.
Die erste Methode besteht in der Verwendung eines Implantats der ersten Stufe wie Skipper. Im Jahr 2017 beobachteten wir, dass Crutch einige Monate nach der Kompromittierung des Computers durch Skipper eingesetzt wurde. Danach haben die Malware-Betreiber auch andere Computer im lokalen Netzwerk kompromittiert, indem sie sich seitlich ausbreiteten.
Die zweite Methode, die wir gesehen haben, basiert auf der Verwendung von PowerShell Empire. Wir konnten nicht feststellen, wie das schädliche Skript auf den Computer gekommen ist, aber wir glauben, dass dafür ein anderes Implantat verantwortlich ist. Ein Phishing-Dokument kann allerdings auch nicht ausgeschlossen werden. Es ist zu erwähnen, dass die PowerShell Empire-Skripte OneDrive und Dropbox verwendeten.
Crutch, Version 1 bis 3
Von 2015 bis Mitte 2019 verwendete die Malware-Architektur eine Backdoor, die mit Dropbox kommunizierte, und einen Laufwerksmonitor ohne Netzwerkfunktionen.
Abbildung 3 zeigt die Architektur von Crutch Version 3. Sie enthält eine Backdoor, die über die offizielle HTTP-API mit einem fest codierten Dropbox-Konto kommuniziert. Sie kann grundlegende Befehle ausführen, wie das Lesen und Schreiben von Dateien oder das Ausführen zusätzlicher Prozesse. Persistenz erreicht sie über DLL-Hijacking in Chrome, Firefox oder OneDrive. In einigen Varianten gab es Reserve-C&C-Server, die GitHub oder eine herkömmliche Domain verwendeten.
Die zweite wichtige Binärdatei dient zur Überwachung von Wechseldatenträgern. Sie sucht nach Dateien mit interessanten Erweiterungen (.pdf, .rtf, .doc, .docx) und stellt diese anschließend in einem verschlüsselten Archiv bereit.
Crutch, Version 4
Im Juli 2019 haben wir eine neue Version von Crutch gefunden. Wir kennen zwar nicht die Versionsnummer des Entwicklers, aber wir glauben, dass sie sich so weit entwickelt hat, dass sie als Version 4 bezeichnet werden kann. Diese neue Version ist eine aktualisierte Version der Überwachung von Wechseldatenträgern mit Netzwerkfunktionen.
Abbildung 4 zeigt die Architektur von Crutch v4. Der Hauptunterschied besteht darin, dass Backdoor-Befehle nicht mehr unterstützt werden. Auf der anderen Seite werden die auf lokalen und wechselbaren Datenträgern gefundenen Dateien mithilfe der Windows-Version von Wget automatisch zu Dropbox hochgeladen.
Das Arbeitsverzeichnis dieser Version 4 lautet C:\Intel, wobei die folgenden Komponenten gefunden werden:
- outllib.dll: Die Crutch-DLL
- finder.exe: Der echte Outlook Item Finder von Microsoft Outlook (SHA-1: 830EE9E6A1BB7588AA8526D94D2D9A2B491A49FA)
- resources.dll: Echte DLL, die eine Abhängigkeit von finder.exe darstellt (SHA-1: 31D82C554ABAB3DD8917D058C2A46509272668C3)
- outlook.dat: Crutch-Konfigurationsdatei. Sie enthält das Dropbox-API-Token.
- ihlp.exe: Das echte RAR-Dienstprogramm (SHA-1: A92C801F491485F6E27B7EF6E52E02B461DBCFAA)
- msget.exe: Eine saubere Version des Wget-Dienstprogramms für Windows (SHA-1: 457B1CD985ED07BAFFD8C66FF40E9C1B6DA93753)
Wie Crutch v3 nutzt Version 4 DLL-Hijacking um auf dem Opfer-System Persistenz zu erreichen. In diesem Fall handelt es sich bei der Hostanwendung jedoch um eine alte Microsoft Outlook-Komponente, die von den Bedienern auf dem gefährdeten System abgelegt wird.
Fazit
In den letzten Jahren konnten wir mehrere von Turla betriebene Malware-Familien öffentlich dokumentieren. Crutch zeigt, dass es der Gruppe nicht an neuen oder derzeit nicht dokumentierten Backdoors mangelt und dass die Turla-Gruppe über beträchtliche Ressourcen verfügt, um ein so großes und vielfältiges Arsenal zu betreiben.
Crutch kann einige Sicherheitsebenen umgehen, indem es die legitime Infrastruktur - hier Dropbox - missbraucht, um sich in den normalen Netzwerkverkehr einzufügen, gestohlene Dokumente zu filtern und Befehle von seinen Betreibern zu erhalten.
Kompromissindikatoren finden Sie auch auf GitHub. Wenn Sie Fragen haben oder Muster zu diesem Thema einreichen möchten, wenden Sie sich unter folgender Adresse an: threatintel@eset.com.
Indicators of Compromise
Hashes
SHA-1 | Description | ESET detection name |
---|---|---|
A010D5449D29A1916827FDB443E3C84C405CB2A5 | Crutch dropper similar to Gazer | Win64/Agent.VX |
2FABCF0FCE7F733F45E73B432F413E564B92D651 | Crutch v3 backdoor (packed) | Win32/Agent.TQL |
A4AFF23B9A58B598524A71F09AA67994083A9C83 | Crutch v3 backdoor (unpacked) | Win32/Agent.TQL |
778AA3A58F5C76E537B5FE287912CC53469A6078 | Crutch v4 | Win32/Agent.SVE |
Paths
Crutch working directories
- C:\Intel\
- C:\AMD\Temp\
Filenames
- C:\Intel\outllib.dll
- C:\Intel\lang.nls
- C:\Intel\~intel_upd.exe
- C:\Intel\~csrss.exe
- C:\Program Files (x86)\Google\Chrome\Application\dwmapi.dll
- C:\Program Files (x86)\Mozilla Firefox\rasadhlp.dll
- %LOCALAPPDATA%\Microsoft\OneDrive\dwmapi.dll
Network
- hotspot.accesscam[.]org
- highcolumn.webredirect[.]org
- ethdns.mywire[.]org
- theguardian.webredirect[.]org
- https://raw.githubusercontent[.]com/ksRD18pro/ksRD18/master/ntk.tmp
MITRE ATT&CK techniques
Note: This table was built using version 7 of the MITRE ATT&CK framework.
Tactic | ID | Name | Description |
---|---|---|---|
Initial Access | T1078.003 | Valid Accounts: Local Accounts | Crutch operators abused local accounts that have the same password across the victim’s network. This was used when compromising additional machines in the network, the initial breach is unknown. |
Persistence | T1053.005 | Scheduled Task/Job: Scheduled Task | Crutch v4 persists using a Windows scheduled task. |
T1574.001 | Hijack Execution Flow: DLL Search Order Hijacking | Crutch v3 persists by doing DLL search order hijacking on Google Chrome, Mozilla Firefox or Microsoft OneDrive. | |
Defense Evasion | T1036.004 | Masquerading: Masquerade Task or Service | Crutch v4 persists using a scheduled task that impersonates the Outlook item finder. |
T1120 | Peripheral Device Discovery | Crutch monitors when a removable drive is plugged into the compromised machine. | |
T1025 | Data from Removable Media | Crutch monitors removable drives and exfiltrates files matching a given extension list. | |
T1074.001 | Data Staged: Local Data Staging | The Crutch v3 removable-drive monitor stages the stolen files in the C:\AMD\Temp directory. | |
T1119 | Automated Collection | Crutch automatically monitors removable drives in a loop and copies interesting files. | |
T1560.001 | Archive Collected Data: Archive via Utility | Crutch uses the WinRAR utility to compress and encrypt stolen files. | |
T1008 | Fallback Channels | Crutch v3 uses a hardcoded GitHub repository as a fallback channel. | |
T1071.001 | Application Layer Protocol: Web Protocols | The network protocol of Crutch uses the official Dropbox API over HTTP. | |
T1102.002 | Web Service: Bidirectional Communication | Crutch uses Dropbox to download commands and to upload stolen data. | |
Exfiltration | T1020 | Automated Exfiltration | Crutch v4 automatically exfiltrates the stolen files to Dropbox. |
T1041 | Exfiltration Over C2 Channel | Crutch exfiltrates data using the primary C&C channel (Dropbox HTTP API). | |
T1567.002 | Exfiltration Over Web Service: Exfiltration to Cloud Storage | Crutch exfiltrates stolen data to Dropbox. |