ESET-Forscher haben neue Erkenntnisse über POLONIUM veröffentlicht. Es handelt sich dabei um eine Advanced Persistent Threat (APT)-Gruppe, über die nur wenige Informationen öffentlich zugänglich sind. Der ursprüngliche Angriffsvektor ist ebenfalls bisher unbekannt. POLONIUM ist eine Cyberspionage-Gruppe, die erstmals im Juni 2022 vom Microsoft Threat Intelligence Center (MSTIC) dokumentiert wurde. Nach Einschätzung des MSTIC handelt es sich bei POLONIUM um eine operative Gruppe mit Sitz im Libanon. Sie koordiniert ihre Aktivitäten mit anderen Akteuren, die ihrerseits mit dem iranischen Ministerium für Nachrichtenwesen und (Staats-)Sicherheit (MOIS) verbunden sind.

Laut ESET-Telemetrie hat POLONIUM mindestens seit September 2021 mehr als ein Dutzend Organisationen in Israel ins Visier genommen. Die jüngsten Aktionen der Gruppe konnten wir im September 2022 beobachten. Zu den Zielbranchen dieser Gruppe gehören Technik, Informationstechnologie, Recht, Kommunikation, Branding und Marketing, Medien, Versicherungen und soziale Dienste. Unsere Ergebnisse, die die Taktiken dieser Gruppe beschreiben (einschließlich Details über eine Reihe von bisher nicht dokumentierten Hintertüren) wurden Ende September auf der Virus Bulletin Konferenz 2022 vorgestellt.

Die wichtigsten Punkte dieses Blogposts:

  • POLONIUM konzentrierte sich ausschließlich auf israelische Ziele und griff mehr als ein Dutzend Organisationen in verschiedenen Branchen wie Technik, Informationstechnologie, Recht, Kommunikation, Markenbildung und Marketing, Medien, Versicherungen und Sozialdienste an.
  • Die Ergebnisse von ESET Research zu POLONIUM wurden Ende September auf der Virus Bulletin Konferenz 2022 vorgestellt.
  • Laut ESET-Telemetrie hat die Gruppe seit September 2021 mindestens sieben verschiedene benutzerdefinierte Backdoors verwendet und ist zum Zeitpunkt der Erstellung dieses Artikels noch aktiv.
  • Die Gruppe hat benutzerdefinierte Tools entwickelt, um Screenshots zu erstellen, Tastatureingaben zu protokollieren, die Webcam auszuspionieren, Reverse Shells zu öffnen, Dateien zu stehlen und vieles mehr.
  • Für die "Command and Control" (C&C-)Kommunikation missbraucht POLONIUM gängige Cloud-Dienste wie Dropbox, OneDrive und Mega.

Die zahlreichen Versionen und Änderungen, die POLONIUM an seinen benutzerdefinierten Tools vorgenommen hat, zeugen von den kontinuierlichen und langfristigen Bemühungen, die Ziele der Gruppe auszuspionieren. Wir haben zwar nicht beobachtet, welche Befehle von den Operatoren auf den kompromittierten Computern ausgeführt wurden, aber wir können aus ihrem Toolset schließen, dass sie daran interessiert sind, vertrauliche Daten zu sammeln. Die Gruppe scheint bisher nicht an Sabotage- oder Ransomware-Aktionen beteiligt zu sein.

Wie in Abbildung 1 dargestellt, besteht das Toolset von POLONIUM aus sieben benutzerdefinierten Backdoors: CreepyDrive, das die Cloud-Dienste OneDrive und Dropbox für C&C missbraucht; CreepySnail, das Befehle ausführt, die von der eigenen Infrastruktur der Angreifer empfangen werden; DeepCreep und MegaCreep, die die Dateispeicherdienste Dropbox bzw. Mega nutzen; sowie FlipCreep, TechnoCreep und PapaCreep, die Befehle von den Servern der Angreifer empfangen. Die Gruppe hat auch mehrere benutzerdefinierte Module verwendet, um ihre Ziele auszuspionieren.

Abbildung 1. Zeitleiste der beobachteten Backdoors, die von POLONIUM eingesetzt werden

Ursprünglicher Zugang

Wir wissen zwar nicht, wie sich die Gruppe ursprünglich Zugang zu den angegriffenen Systemen verschafft hat, aber einige der Fortinet VPN Accountdaten der Opfer waren im September 2021 gestohlen worden und wurden online veröffentlicht. Es ist daher möglich, dass sich die Angreifer durch den Missbrauch dieser durchgesickerten VPN-Anmeldeinformationen Zugang zu den internen Netzwerken der Opfer verschafft haben.

Toolset

POLONIUM ist eine aktive Gruppe, die ständig Änderungen an ihren benutzerdefinierten Tools vornimmt. Seit wir die Gruppe verfolgen, haben wir mehr als 10 verschiedene Schadcode-Module gesehen, die meisten davon in verschiedenen Versionen oder mit geringfügigen Änderungen in einer bestimmten Version. Einige der interessantesten Merkmale des Toolsets der Gruppe sind:

  • Eine Fülle von Werkzeugen: Wir haben seit September 2021 sieben verschiedene benutzerdefinierte Backdoors gesehen, die von der Gruppe verwendet wurden. Dazu kommen viele andere bösartige Module zum Aufzeichnen von Tastatureingaben, Erstellen von Screenshots, Ausführen von Befehlen, Aufnehmen von Fotos mit der Webcam oder zum Stehlen von Dateien.
  • Benutzerdefinierte Tools: Bei verschiedenen Angriffen, die von dieser Gruppe innerhalb kurzer Zeit durchgeführt wurden, haben wir dieselbe Komponente mit geringfügigen Änderungen entdeckt. In einigen anderen Fällen haben wir ein von Grund auf neu programmiertes Modul gesehen, das der gleichen Logik wie einige frühere Komponenten folgte. Nur in wenigen Fällen haben wir gesehen, dass die Gruppe öffentlich verfügbare Tools oder Code verwendet hat. All dies deutet darauf hin, dass POLONIUM seine eigenen Werkzeuge entwickelt und pflegt.
  • Cloud Dienste: Die Gruppe missbraucht gängige Cloud-Dienste wie Dropbox, OneDrive und Mega für die C&C-Kommunikation (Empfang von Befehlen und Diebstahl von Daten).
  • Kleine Komponenten: Die meisten Module der Gruppe sind klein und haben nur eine begrenzte Funktionalität. In einem Fall verwendeten die Angreifer ein Modul zum Erstellen von Screenshots und ein anderes zum Hochladen auf den C&C-Server. In ähnlicher Weise teilen sie den Code in ihren Backdoors gerne auf und verteilen die bösartigen Funktionen auf verschiedene kleine DLLs, vielleicht in der Hoffnung, dass Verteidiger oder Forscher nicht die gesamte Angriffskette beobachten.

CreepyDrive

CreepyDrive ist eine PowerShell Backdoor, die Befehle aus einer auf OneDrive oder Dropbox gespeicherten Textdatei liest und ausführt. Sie kann Dateien von Konten unter der Kontrolle von Angreifern in diesen Cloud-Diensten hoch- oder herunterladen und den bereitgestellten PowerShell-Code ausführen. Abbildung 2 zeigt einen Teil des Codes, der Dateien herunterlädt und Befehle ausführt. Diese Backdoor wurde bereits in Microsofts Bericht vom Juni 2022 dokumentiert.

Abbildung 2. Von CreepyDrive verwendeter Code zum Herunterladen von Dateien oder Ausführen von Befehlen

CreepyDrive verwendet die HTTP-API von OneDrive (und die HTTP-API von Dropbox) für den Zugriff auf den Cloud-Speicher. In beiden Fällen werden ein Refresh-Token, Client-ID und Client-Secret (alle fest codiert) verwendet, um ein Zugriffstoken zu generieren, das den Benutzer authentifiziert und den Zugriff auf die Konten gewährt.

Wir konnten zwar nicht beobachten, dass die Angreifer auf den kompromittierten Systemen Befehle ausführten, aber wir entdeckten eine Logdatei, die die Ausführung eines Befehls auf einem der betroffenen Computer dokumentiert. Der Inhalt der Datei ist entschlüsselt in Abbildung 3 dargestellt.

Abbildung 3. Ausführungslog eines Befehls und seine Ausgabe

CreepySnail

CreepySnail ist eine weitere PowerShell Backdoor, die HTTP-Anfragen an einen C&C-Server sendet und PowerShell-Befehle empfängt und ausführt. Wir haben verschiedene Versionen dieser Backdoor in freier Wildbahn gesehen, obwohl die Unterschiede zwischen ihnen minimal waren. Abbildung 4 zeigt eine Version, die jede vom C&C-Server angegebene ausführbare Datei ausführen kann (solange sie sich im Malware-Ordner befindet). Wir werden nicht weiter auf diese Backdoor eingehen, da sie bereits von Microsoft in deren Bericht beschrieben wurde.

Abbildung 4. Von CreepySnail verwendeter Code zur Ausführung von Befehlen

DeepCreep

DeepCreep ist eine bisher nicht dokumentierte, in C# geschriebene Backdoor, die Befehle aus einer in Dropbox-Konten gespeicherten Textdatei liest und Dateien auf diese Konten hoch- oder von ihnen herunterladen kann. Einige Versionen von DeepCreep haben verschleierte Strings, bei anderen ist der Code in DLLs aufgeteilt, und manche haben mehr oder weniger Befehle. Wir werden uns in dieser Analyse auf die am weitesten verbreitete Version konzentrieren, obwohl auch interessante Merkmale anderer Versionen erwähnt werden.

Ein von der Backdoor auszuführender Befehl wird aus der Datei cd.txt im serverseitigen Stammordner des Opfers gelesen; nach dem Lesen wird die Datei aus der Cloud gelöscht. DeepCreep führt diesen Prozess in einer Endlosschleife aus, was bedeutet, dass für jeden auszuführenden Befehl eine neue cd.txt-Datei im Cloud-Speicher abgelegt werden muss. Wenn die Datei nicht gefunden wird, schläft die Backdoor und versucht es später erneut. Eine Liste der Befehle, die DeepCreep verarbeiten kann, finden Sie in Tabelle 1.

Tabelle 1. Liste der von DeepCreep unterstützten Befehle

Command Description
GetNoThing Deletes cd.txt.
upload "<local_file_path>"
"<file_name_on_dropbox>"
Uploads a file on the victim’s computer to a subfolder 2 in Dropbox. Multiple upload lines can be included in cd.txt to execute more than one upload at once.
download
"<file_name_on_dropbox>"
"<local_file_path>"
<bool_abs_p>
Downloads a file from the root folder in Dropbox to the victim’s computer. If <bool_abs_p> is 0, the file is downloaded into %TEMP%\<local_file_path> (relative path). If it’s 1, the file is downloaded into <local_file_path> (absolute path).
delay <value> Sets the delay for all sleep operations, where 1000 is 1 minute.
zip
"<local_file_folder_path>" "⁠<output_path>" "<size_mb>"
Creates a ZIP file with the specified file or folder and saves it in the specified path on the victim’s computer. The archive is split in chunks of the specified size, in megabytes.
Execute with cmd.exe When none of the previous commands are found in the first line of cd.txt, then all of the lines are taken as commands to be executed with cmd.exe. The output produced by the commands is uploaded to a text file in Dropbox. The output encoding for the console is set to Windows-1255, which handles Hebrew characters.

DeepCreep bleibt systempersistent, indem eine LNK-Datei in %APPDATA%\Microsoft\Windows\Startmenü\Programme\Startup erstellt und eine geplante Aufgabe ("Task") erstellt wird. Zum Erstellen der LNK-Datei wird ein PowerShell-Befehl verwendet, wie in Abbildung 5 dargestellt.

Abbildung 5. Teil des Codes, den DeepCreep zur Erreichung der Persistenz verwendet

Die Authentifizierung mit der Cloud erfolgt über OAuth 2.0 Token, die in den Binärdateien fest einkodiert sind. DeepCreep benötigt eine legitime DLL mit Dropbox SDK, um mit der Cloud kommunizieren zu können.

Wir haben einige Fälle gesehen, in denen ein separater Loader namens WindowsTool.exe verwendet wurde, um Persistenz zu implementieren und DeepCreep mit InstallUtil, einem legitimen Tool aus dem .NET Framework, auszuführen. Bei dieser Version der Backdoor wird der bösartige Code in einer Deinstallationsroutine bereitgestellt und mit der Option /u (uninstall) von InstallUtil.exe ausgeführt - vielleicht um Verteidiger in die Irre zu führen. Abbildung 6 zeigt einen Teil des Codes des Loaders.

Abbildung 6. Teil des Codes des Laders, der DeepCreep ausführt

Was die Verschleierung von Strings betrifft, so haben wir zwei Varianten gesehen: ROT13 und AsStrongAsFuck Obfuscator. Die neueste Version von DeepCreep, die wir gesehen haben, verwendet AES-Verschlüsselung und hat die gleichen Schlüsselbefehle wie die MegaCreep Backdoor, die wir im nächsten Abschnitt beschreiben werden.

MegaCreep

MegaCreep ist eine bisher nicht dokumentierte Backdoor, die auf DeepCreep basiert und zusätzliche Funktionen bietet. Sie liest Befehle aus einer im Mega-Cloud-Speicherdienst gespeicherten Textdatei und führt sie aus. Obwohl MegaCreep wohl nur eine neuere Version von DeepCreep ist und in der Tat Code von DeepCreep wiederverwendet, scheinen die Angreifer beide Backdoors als separate Projekte zu betrachten.

MegaCreep verarbeitet die gleichen Befehle, die wir für DeepCreep beschrieben haben, aber sie werden in AES-verschlüsselter Form in der Datei cd.txt gespeichert. Sie verfügt über zusätzliche Befehle, die sich beide auf den für die Entschlüsselung verwendeten Schlüssel beziehen und in Tabelle 2 beschrieben werden.

Tabelle 2. Liste der neuen Befehle, die zu MegaCreep hinzugefügt wurden

Command Description
NewASKey <key> Receives the decryption key <key> that is stored locally in Cert.dll (only if the file doesn’t already exist).
UPKY <old_key> <new_key> Updates the decryption key from <old_key> to <new_key>. The process is successful only if <old_key> is the same as the key that the backdoor is currently using. In this case, <new_key> is stored locally in Cert.dll.

MegaCreep sucht zunächst nach diesen Befehlen, die unverschlüsselt in cd.txt gespeichert sind. Wenn keiner dieser Befehle gefunden wird, wird der Inhalt von cd.txt mit dem Schlüssel in Cert.dll entschlüsselt. Nach der Entschlüsselung können alle Befehle, die wir für DeepCreep beschrieben haben, auch von MegaCreep ausgeführt werden.

MegaCreep verwendet die MegaApiClient C#-Bibliothek für die Kommunikation mit der Mega Cloud. Die Authentifizierung erfolgt mit einem Benutzernamen und einem Passwort, die verschlüsselt in einer lokalen Datei, Sess.dll, gespeichert sind. Abbildung 7 zeigt den Code, der den Benutzernamen und das Kennwort aus Sess.dll lädt.

Abbildung 7. In MegaCreep verwendeter Code zum Laden von Benutzernamen und Passwort

Diese Backdoor ist ein gutes Beispiel für die Vorliebe von POLONIUM für die Verwendung separater DLLs mit spezifischen Funktionen, wie in Abbildung 8 dargestellt. In diesem Beispiel werden zwei Methoden von PRLib.dll aufgerufen: CHP, die laufende Prozesse mit demselben Namen wie die ausführbare Datei der Backdoor beendet (d. h. frühere Ausführungen der Backdoor, die noch laufen), und XVDFv, die Persistenz implementiert (auf dieselbe Weise, die wir für DeepCreep beschrieben haben).

Abbildung 8. Beispiel für den Aufruf von Methoden aus separaten DLLs durch MegaCreep

Eine weitere Funktion, die zu MegaCreep hinzugefügt wurde, ist, dass die Ausgabe von Befehlen die von cmd.exe ausgeführt werden verschlüsselt wird, bevor sie in die Cloud hochgeladen wird. Der für die Verschlüsselung verwendete Schlüssel ist derselbe, der auch für die Entschlüsselung der Befehle verwendet wird.

In einem Fall wurde MegaCreep mit einem Loader namens WLAN-AutoConfig.exe installiert. Der Hauptcode für die Backdoor befand sich in einer DLL-Datei namens MainZero.dll und andere Routinen, die mit Mega kommunizieren, befanden sich in einer anderen DLL, MagLibrary.dll. Abbildung 9 zeigt den Code im Loader, der MainZero aufruft.

Abbildung 9. Code für den Loader von MegaCreep

FlipCreep

FlipCreep ist eine weitere, bisher nicht dokumentierte Backdoor, die in C# geschrieben wurde und einen sehr ähnlichen Ausführungsablauf hat wie die anderen Backdoors, die wir beschrieben haben: Sie liest Befehle aus orders.txt - einer Textdatei, die auf einem von POLONIUM betriebenen FTP-Server gespeichert ist - und kann Dateien vom Server hoch- oder herunterladen. Die Befehle, die FlipCreep verarbeiten kann, sind die gleichen wie bei den anderen Backdoors, mit den folgenden Besonderheiten:

  • Die Befehle upload und download bewirken das Gegenteil von dem, was erwartet wird. Wir wissen nicht, ob dies ein Fehler war, aber upload lädt tatsächlich Dateien vom FTP-Server auf das Gerät des Opfers herunter, und download lädt Dateien hoch. Beide benötigen zwei Argumente, wie es auch bei MegaCreep der Fall war. Abbildung 10 zeigt einen Teil des Codes, der Dateien hochlädt; wir können sehen, dass er nach der Zeichenfolge download sucht.
  • Es gibt einen Befehl ftpversion, der die Version der Backdoor (hart kodiert) in eine Datei txt auf dem FTP-Server im Stammverzeichnis des Ziels hochlädt.

Abbildung 10. Teil des FlipCreep-Codes zum Hochladen von Dateien

FlipCreep erstellt einen Ordner mit dem Benutzernamen des Ziels auf dem FTP-Server, zusammen mit diesen Unterordnern:

  • Files: speichert Dateien, die von den Opfern hochgeladen wurden
  • orders: speichert die Ausgabe von Befehlen, die mit exe ausgeführt wurden

Die Persistenz wird auf dieselbe Weise erreicht wie bei DeepCreep beschrieben. Was die Verschleierung der Strings betrifft, so haben wir ein Sample mit ROT13-Verschleierung gesehen.

TechnoCreep

TechnoCreep ist eine bisher nicht dokumentierte C# Backdoor, die über TCP-Sockets mit einem C&C-Server kommuniziert. In diesem Fall werden die Befehle nicht aus einer Datei gelesen, sondern durch einen Austausch von Nachrichten empfangen. Die erste Nachricht wird von der Backdoor gesendet und enthält erste Informationen über das Opfer im Format <PC_NAME>#<USERNAME>#<LIST_IP>#<LIST_OTHER>#<OS>

<LIST_IP> ist eine Liste von IP-Adressen, die für den Hostnamen des Opfers aufgelöst werden, getrennt durch /. Die Liste wird durch den Aufruf von Dns.GetHostByName und die Anwendung eines regulären Ausdrucks für IP-Adressen erhalten. Alle anderen Elemente, die nicht mit dem regulären Ausdruck übereinstimmen, werden als <LIST_OTHER> an den C&C-Server gesendet. Beachten Sie, dass diese Liste in den meisten Fällen leer sein wird.

TechnoCreep empfängt Befehle in einer Endlosschleife. Die Liste der Befehle ist in Tabelle 3 aufgeführt.

Tabelle 3. Liste der von TechnoCreep unterstützten Befehle

Command Description
upload Uploads a file on the victim’s computer to the C&C server. The path of the file to upload is received in a separate message. If the file exists, the backdoor sends Exist, to which the server replies start or stop. If start is received, the size of the file is sent. Finally, the file is sent to the server as raw bytes. If the message is stop, nothing is done. If the specified file doesn’t exist, NotE is sent to the server.
download download Downloads a file from the C&C server. The path where the file will be saved on the victim’s computer is received in a separate message. If NotE is received instead, the process stops. If the path is an absolute path, and the parent folder doesn’t exist, then the backdoor sends NOT. Otherwise, it sends Exists, to which the server replies by sending the size of the file. Then the backdoor sends ok, sleeps for 1 second, and then receives the file as raw bytes.
Execute with  cmd.exe When neither of the previous commands are received, the message is taken as a command to be executed with cmd.exe. The output is sent to the server.

TechnoCreep bleibt persistent, indem sie seine ausführbare Datei in den Autostart-Ordner kopiert, wie in Abbildung 11 dargestellt. Ein identischer Code ist auch in einigen Versionen von DeepCreep zu finden. Beachten Sie, dass bei dieser Methode keine LNK-Dateien verwendet werden.

Abbildung 11. TechnoCreep-Code zur Erreichung der Persistenz

PapaCreep

PapaCreep ist eine bisher nicht dokumentierte, in C++ geschriebene Backdoor, die Befehle von einem Remote-Server über TCP-Sockets empfangen und ausführen kann. Sie wurde erstmals im September 2022 entdeckt und ist die erste von POLONIUM verwendete Backdoor, die nicht in C# oder PowerShell geschrieben wurde.

PapaCreep ist eine modulare Backdoor. Ihr Code ist in verschiedene Komponenten aufgeteilt, von denen einige nur minimale Funktionalitäten aufweisen. Wir können die Hauptkomponenten wie folgt zusammenfassen:

  • Executive: sucht nach einer Datei mit Befehlen und führt sie mit exe aus. Die Ausgabe wird in einer Datei gespeichert.
  • Mailman: kommuniziert mit einem C&C-Server, um Befehle zu empfangen und schreibt sie in eine Datei. Außerdem sendet er die Datei mit der Ausgabe der Befehle an den C&C-Server.
  • CreepyUp: lädt eine beliebige Datei auf den C&C-Server hoch.
  • CreepyDown: lädt eine beliebige Datei vom C&C-Server herunter.

Die Executive- und Mailman-Komponenten laufen unabhängig voneinander und werden sogar mit separaten geplanten Aufgaben in einem kompromittierten System aufrechterhalten. Die Kommunikation mit dem Remote-Server erfolgt über "raw" TCP-Sockets, aber die von der Backdoor gesendeten und empfangenen Informationen sind in HTML-Code (mit einem gefälschten HTTP-Header). Abbildung 12 zeigt, dass der Header in der Backdoor hart kodiert ist und die Inhaltslänge immer 1024 beträgt. Beachten Sie, dass Content-Type "text/-html" ist, was kein normaler Wert ist.

Abbildung 12. Hardcodierter HTTP-Header, der von der PapaCreep Backdoor verwendet wird

Die Mailman-Komponente leitet die Kommunikation mit dem C&C-Server ein, indem sie <PC_NAME>-<USERNAME> (base64-kodiert) sendet. Anschließend startet sie zwei Threads: einer davon empfängt Befehle vom Server, der andere sendet alle verfügbaren Ausgaben der Befehlsausführung. Sowohl beim Senden als auch beim Empfangen werden Begrenzungszeichen verwendet: code#s und code#f markieren den Anfang und das Ende der Daten. Ein Beispiel für eine an den Server gesendete Nachricht mit der Ausgabe eines dir-Befehls ist in Abbildung 13 dargestellt.

Abbildung 13. Beispiel für eine an den C&C-Server gesendete Nachricht und den entschlüsselten Inhalt

Ist der Inhalt größer als 1024 Byte, wird mehr als eine Nachricht übertragen. In diesem Fall wird die erste Nachricht mit dem Startbegrenzer und die letzte Nachricht mit dem Endbegrenzer versehen. Die IP-Adresse und der Port des C&C-Servers werden aus einer Textdatei, yetty.dll, im Format <IP-Adresse>::<Port> (base64-kodiert) gelesen.

Die Module CreepyUp und CreepyDown sind keine Hauptbestandteile des Ausführungsablaufs der Backdoor und können bei Bedarf ausgeführt werden. Es handelt sich um eigenständige Befehlszeilen-Tools, die zwei Argumente benötigen, eine lokale und eine entfernte Datei. Seltsamerweise lautet der Dateiname von CreepyDown auf infizierten Computern UCLN.exe und von CreepyUp DCLN.exe. Dies ähnelt den Befehlen Upload und Download in der FlipCreep Backdoor, die das Gegenteil von dem bewirken, was erwartet wird. Sowohl CreepyUp als auch CreepyDown lesen die Serverinformationen aus der Textdatei yetty.dll.

Andere Module

Um ihre Opfer auszuspionieren, verwendet POLONIUM zusätzlich zu ihren Backdoors mehrere andere Module, darunter Reverse-Shell-Module und ein Modul zum Erstellen eines Tunnels. ESET-Forscher haben viele Varianten der Module beobachtet, die die Gruppe zum Erstellen von Screenshots verwendet. Was Keylogger betrifft, so hat POLONIUM sowohl eigene als auch Open-Source-Keylogger verwendet. Der benutzerdefinierte Keylogger der Gruppe überwacht Tastatureingaben und Inhalte der Zwischenablage und unterstützt sowohl hebräische als auch arabische Tastatur-Layouts. POLONIUM hat auch ein einfaches Modul verwendet, das AForge.NET nutzt, um einen Schnappschuss von der Webcam zu machen und ihn im TEMP-Ordner zu speichern.

Netzwerk Infrastruktur

POLONIUM hat in keinem der von uns analysierten Samples Domainnamen verwendet, sondern nur IP-Adressen. Bei den meisten Servern handelt es sich um dedizierte VPS, die wahrscheinlich eher gekauft als kompromittiert wurden und bei HostGW gehostet werden. Es gibt einen besonderen Fall: Die IP-Adresse 45.80.149[.]154 hostet erichmocanu.tv, bei der es sich offenbar um eine legitime Website handelt. Es ist wahrscheinlich, dass POLONIUM diesen Server verwendet hat, bevor er seinem jetzigen Besitzer zugewiesen wurde.

Fazit

POLONIUM ist ein sehr aktiver Bedrohungsakteur, der über ein großes Arsenal an Malware-Tools verfügt und diese ständig modifiziert und neue Tools entwickelt. Ein gemeinsames Merkmal mehrerer Tools der Gruppe ist der Missbrauch von Cloud-Diensten wie Dropbox, Mega und OneDrive für die C&C-Kommunikation.

Geheime und öffentliche Berichte über POLONIUM sind sehr spärlich und begrenzt - wahrscheinlich weil die Angriffe der Gruppe sehr zielgerichtet sind und der ursprüngliche Angriffsvektor nicht bekannt ist. ESET Research wird die Aktivitäten der Gruppe weiter verfolgen und ihre Angriffe dokumentieren.

For any inquiries about our research published on WeLiveSecurity, please contact us at threatintel@eset.com.
Um mehr darüber zu erfahren, wie Threat Intelligence die Cybersicherheit Ihres Unternehmens verbessern kann, besuchen Sie unsere ESET Threat Intelligence Webseite.

IoCs

A comprehensive list of Indicators of Compromise and samples can be found in our GitHub repository.

SHA-1 Filename ESET detection name Description
3F4E3C5301752D39DAF97384CCA47564DA1C3314 dnw.exe PowerShell/Agent.GJ CreepyDrive
CC820ED9A23084104807941B76A2679243BA357C Request.exe PowerShell/Agent.HF CreepySnail
03A35A0167684E6CCCA641296969972E49B88D60 DropBox.exe MSIL/Agent.DPT DeepCreep
4E7DBFF20995E97190536B284D7E5CC65922FD55 Mega.exe MSIL/Agent.DPT MegaCreep
994EAD7666A67E33C57A51EF98076D41AABB7FB7 Regestries.exe MSIL/Tiny.DG FlipCreep
79DE0AF2F10F8D39A93EED911D4048D87E3C8A1C WinUpdate.dll MSIL/Agent.DYU TechnoCreep
2B9444B0E1747EB4F482D29C9DE27D07CCE55A76 WindowsSartup22.exe Win64/HackTool.NetHacker.G PapaCreep
F26F43AD2E2980B96497242A3F30CA003E5CF54C WinSc.exe MSIL/Tiny.DG Screenshots module
F41E27C4C863821DE6CAD91CA7E77CD6CA6CE5D3 4kyro3fs.dll MSIL/Spy.Keylogger.FGC Keylogger module
94E75BA7C4476AFDACF4B39E403379C5ECD1BED6 Device.exe MSIL/Spy.Tiny.CZ Webcam module
B87CC5269A5DF5CF093F8D28DF78952F662162B6 OnDrive.exe MSIL/Agent.DTP Reverse shell module
809048A40274350BD0C453E49D8C1F7D32397164 Rehost.exe MSIL/Spy.Tiny.DA Exfiltration module
43E3C3752A15D0BDE7135E1B52F1DE397B5314B5 Microsoft Malware Protection.exe MSIL/Agent.DYV Tunnels module

Network

IP First seen Details
37.120.233[.]89 2022-09-12 PapaCreep C&C
45.80.148[.]119:8080 2022-05-21 Reverse shell server
45.80.148[.]167:21
45.80.148[.]167:5055
2021-11-27 Exfiltration
45.80.148[.]186:8080 2022-01-08 Reverse shell server
45.80.149[.]22:8080 2022-05-13 CreepySnail C&C
45.80.149[.]108:8080 2022-02-11 CreepySnail C&C
45.80.149[.]68:63047 2022-03-01 CreepySnail C&C
45.80.149[.]71:80 2022-03-11 CreepySnail C&C
185.244.129[.]79:63047 2022-03-01 CreepySnail C&C
45.80.149[.]154:1302
45.80.149[.]154:21
2021-09-23 TechnoCreep C&C
Exfiltration
185.244.129[.]216:5055 2021-11-24 Exfiltration
146.70.86[.]6:1433 2022-05-26 Exfiltration
195.166.100[.]23:5055 2022-01-05 Exfiltration
45.137.148[.]7:2121 2021-10-29 FlipCreep C&C
185.203.119[.]99:8080 2022-02-12 Reverse Shell
212.73.150[.]174 2022-02-24 Tunneling
94.156.189[.]103 2022-04-20 Tunneling
51.83.246[.]73 2022-03-12 Tunneling

MITRE ATT&CK techniques

This table was built using version 11 of the MITRE ATT&CK framework.

Tactic ID Name Description
Resource Development T1583.003 Acquire Infrastructure: Virtual Private Server POLONIUM has acquired various servers for C&C and also for storing exfiltrated files.
T1587.001 Develop Capabilities: Malware POLONIUM has developed at least six backdoors and several other malicious modules.
T1588.001 Obtain Capabilities: Malware POLONIUM has used a publicly available keylogger.
Execution T1059.001 Command and Scripting Interpreter: PowerShell POLONIUM has used the CreepySnail and CreepyDrive PowerShell backdoors in their attacks.
T1059.003 Command and Scripting Interpreter: Windows Command Shell DeepCreep, MegaCreep, FlipCreep and TechnoCreep use cmd.exei to execute commands in a compromised computer.
T1129 Shared Modules DeepCreep and MegaCreep have their code divided into small DLLs, which are loaded both statically and dynamically.
Persistence T1547.009 Boot or Logon Autostart Execution: Shortcut Modification POLONIUM’s backdoors persist by writing shortcuts to the Windows Startup folder.
T1053.005 Scheduled Task/Job: Scheduled Task DeepCreep, MegaCreep and FlipCreep create scheduled tasks for persistence.
Defense Evasion T1140 Deobfuscate/Decode Files or Information DeepCreep and MegaDeep use AES encryption to obfuscate commands and login credentials stored in local files on the victim’s computer.
T1070.004 Indicator Removal on Host: File Deletion POLONIUM’s exfiltration modules delete screenshot files or keystroke logs from a compromised host after they are exfiltrated.
T1036.005 Masquerading: Match Legitimate Name or Location POLONIUM has used filenames such as Mega.exei or DropBox.exei for its backdoors, to make them look like legitimate binaries.
T1218.004 System Binary Proxy Execution: InstallUtil POLONIUM has used InstallUtil.exei to execute DeepCreep.
T1083 File and Directory Discovery POLONIUM’s custom exfiltrator module builds a listing of files for any given folder.
T1057 Process Discovery DeepCreep, MegaCreep and FlipCreep look for running processes and kill other instances of themselves.
T1082 System Information Discovery TechnoCreep and POLONIUM’s reverse shell module send information such as computer name, username, and operating system to a remote server, in order to identify their victims.
T1016 System Network Configuration Discovery TechnoCreep sends a list of IP addresses associated with a victim’s computer.
T1033 System Owner/User Discovery POLONIUM has executed whoami.exei to identify the logged-on user.
Collection T1560.002 Archive Collected Data: Archive via Library DeepCreep, MegaCreep and FlipCreep use .NET’s ZipFile class to archive collected data.
T1115 Clipboard Data POLONIUM’s custom keylogger retrieves clipboard data from compromised computers.
T1005 Data from Local System POLONIUM’s exfiltrator module collects files from a compromised system.
T1056.001 Input Capture: Keylogging POLONIUM has used custom and publicly available keyloggers.
T1113 Screen Capture POLONIUM has used custom modules for taking screenshots.
T1125 Video Capture POLONIUM has used a custom module to capture images using the compromised computer’s webcam.
Command and Control T1071.001 Application Layer Protocol: Web Protocols CreepySnail and POLONIUM’s file exfiltrator modules use HTTP communication with the C&C server.
T1071.002 Application Layer Protocol: File Transfer Protocols FlipCreep and POLONIUM’s file exfiltrator modules use FTP communication with the C&C server.
T1132.001 Data Encoding: Standard Encoding CreepySnail, CreepyDrive and some of POLONIUM’s reverse shell modules use base64-encoded commands to communicate with the C&C server.
T1573.001 Encrypted Channel: Symmetric Cryptography DeepCreep and MegaCreep AES encrypt commands and their output.
T1095 Non-Application Layer Protocol TechnoCreep and POLONIUM’s reverse shell module use TCP.
T1571 Non-Standard Port POLONIUM has used non-standard ports, such as 5055 or 63047, for HTTP.
T1572 Protocol Tunneling POLONIUM’s tunnels module uses the Plink utility to create SSH tunnels.
T1102.002 Web Service: Bidirectional Communication POLONIUM has used cloud platforms such as OneDrive, Dropbox, and Mega to send commands and store the output.
Exfiltration T1041 Exfiltration Over C2 Channel DeepCreep, MegaCreep, FlipCreep and TechnoCreep exfiltrate files over the C&C channel via uploadi commands.
T1567.002 Exfiltration Over Web Service: Exfiltration to Cloud Storage POLONIUM has used OneDrive, Dropbox, and Mega cloud storage to store stolen information.

Haben Sie Fragen und Anregungen zu diesem, anderen oder zukünftigen Themen, die Sie gern betrachtet sehen wollen? Dann nutzen Sie gern die Kommentarfunktion unter diesem Artikel oder nutzen unser Kontaktformular!