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.

Abbildung 2. Arbeitszeiten der Crutch-Betreiber basierend auf den Uploads in Dropbox

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.

Abbildung 3. Architektur von Crutch v3

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.

Abbildung 4. Architektur von Crutch v4

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.