ESET-Forscher haben zwei Kampagnen der APT-Gruppe OilRig analysiert: Outer Space (2021) und Juicy Mix (2022). Beide Cyberspionage-Kampagnen zielten ausschließlich auf israelische Organisationen ab, was im Einklang mit dem Fokus der Gruppe auf den Nahen Osten steht, und nutzten das gleiche Drehbuch: OilRig kompromittierte zunächst eine legitime Website, um sie als C&C-Server zu nutzen, und verwendete dann VBS-Dropper, um seinen Opfern eine C#/.NET-Backdoor zu liefern, während sie gleichzeitig eine Reihe von Tools nach der Kompromittierung einsetzte, die hauptsächlich zur Datenexfiltration auf den Zielsystemen verwendet wurden.
In der Outer Space-Kampagne verwendete OilRig eine einfache, bisher nicht dokumentierte C#/.NET-Backdoor, die wir Solar nannten, zusammen mit einem neuen Downloader, SampleCheck5000 (oder SC5k), der die Microsoft Office Exchange Web Services API für die C&C-Kommunikation nutzt. Für die Juicy Mix-Kampagne verbesserten die Bedrohungsakteure Solar, um die Mango-Backdoor zu erstellen, die über zusätzliche Funktionen und Verschleierungsmethoden verfügt. Wir haben nicht nur das bösartige Toolset entdeckt, sondern auch das israelische CERT über die kompromittierten Websites informiert.
Die wichtigsten Punkte dieses Blogposts:
- ESET beobachtete zwei OilRig-Kampagnen, die im Jahr 2021 (Outer Space) und 2022 (Juicy Mix) stattfanden.
- Die Betreiber hatten es ausschließlich auf israelische Organisationen abgesehen und kompromittierten legitime israelische Websites, um sie für ihre C&C-Kommunikation zu nutzen.
- Sie verwendeten in jeder Kampagne eine neue, bisher nicht dokumentierte C#/.NET-Hintertür der ersten Stufe: Solar in Outer Space, dann ihr Nachfolger Mango in Juicy Mix.
- Beide Hintertüren wurden von VBS-Droppern eingesetzt, die vermutlich über Spearphishing-E-Mails verbreitet wurden.
- In beiden Kampagnen wurde eine Vielzahl von Tools für die Zeit nach der Kompromittierung eingesetzt, insbesondere der SC5k-Downloader, der die Microsoft Office Exchange Web Services API für die C&C-Kommunikation nutzt, sowie mehrere Tools zum Diebstahl von Browserdaten und Anmeldeinformationen aus dem Windows Credential Manager.
OilRig, auch bekannt als APT34, Lyceum oder Siamesekitten, ist eine Cyberspionage-Gruppe, die seit mindestens 2014 aktiv ist und deren Sitz im Iran vermutet wird. Die Gruppe zielt auf die Regierungen des Nahen Ostens und eine Vielzahl von Geschäftsbereichen ab, darunter Chemie, Energie, Finanzen und Telekommunikation. OilRig führte die DNSpionage-Kampagne in den Jahren 2018 und 2019 durch, die auf Opfer im Libanon und in den Vereinigten Arabischen Emiraten abzielte. In den Jahren 2019 und 2020 setzte OilRig die Angriffe mit der HardPass-Kampagne fort, die LinkedIn nutzte, um Opfer im Nahen Osten im Energie- und Regierungssektor anzugreifen. Im Jahr 2021 aktualisierte OilRig seine DanBot-Backdoor und begann mit dem Einsatz der Shark-, Milan- und Marlin-Backdoors, die in der Ausgabe T3 2021 des ESET Threat Report erwähnt werden.
In diesem Blogpost bieten wir eine technische Analyse der Solar- und Mango-Backdoors, des VBS-Droppers, der zur Verbreitung von Mango verwendet wurde, und der Tools, die in jeder Kampagne nach der Kompromittierung eingesetzt wurden.
Zuschreibung
Die erste Verbindung, die es uns ermöglichte, die Outer Space-Kampagne mit OilRig in Verbindung zu bringen, ist die Verwendung desselben benutzerdefinierten Chrome-Daten-Dumpers (von ESET-Forschern unter dem Namen MKG aufgespürt) wie in der Out to Sea-Kampagne. Wir haben beobachtet, dass die Solar-Backdoor genau die gleiche MKG-Variante wie in Out to Sea auf dem System des Ziels installiert hat, zusammen mit zwei weiteren Varianten.
Neben den Überschneidungen bei den Tools und dem Zielsystem konnten wir auch mehrere Ähnlichkeiten zwischen der Solar-Backdoor und den in Out to Sea verwendeten Backdoors feststellen, die sich hauptsächlich auf das Hoch- und Herunterladen beziehen: sowohl Solar als auch Shark, eine weitere OilRig-Backdoor, verwenden URIs mit einfachen Upload- und Download-Schemata, um mit dem C&C-Server zu kommunizieren, mit einem "d" für Download und einem "u" für Upload; außerdem verwendet der Downloader SC5k Unterverzeichnisse für Uploads und Downloads, genau wie andere OilRig-Backdoors, nämlich ALMA, Shark, DanBot und Milan. Diese Erkenntnisse sind eine weitere Bestätigung dafür, dass es sich bei dem Übeltäter hinter Outer Space tatsächlich um OilRig handelt.
Was die Verbindungen der Juicy Mix-Kampagne zu OilRig angeht, so zielt sie nicht nur auf israelische Organisationen ab - was typisch für diese Spionagegruppe ist -, sondern es gibt auch Code-Ähnlichkeiten zwischen Mango, der in dieser Kampagne verwendeten Backdoor, und Solar. Darüber hinaus wurden beide Backdoors von VBS-Droppern mit der gleichen String-Verschleierungstechnik eingesetzt. Die Wahl der Tools, die bei Juicy Mix nach der Kompromittierung eingesetzt wurden, spiegelt auch frühere OilRig-Kampagnen wider.
Überblick über die Outer Space-Kampagne
Outer Space ist eine OilRig-Kampagne aus dem Jahr 2021, die ihren Namen der Verwendung eines auf Astronomie basierenden Namensschemas in den Funktionsnamen und Aufgaben verdankt. In dieser Kampagne kompromittierte die Gruppe eine israelische Website für Personalwesen und nutzte sie anschließend als C&C-Server für ihre zuvor nicht dokumentierte C#/.NET-Backdoor Solar. Solar ist eine einfache Backdoor mit grundlegenden Funktionen wie dem Lesen und Schreiben von Festplatten und dem Sammeln von Informationen.
Über Solar stellte die Gruppe dann einen neuen Downloader SC5k bereit, der die Office Exchange Web Services API nutzt, um zusätzliche Tools zur Ausführung herunterzuladen, wie in Abbildung 1gezeigt . Um Browserdaten vom System des Opfers zu exfiltrieren, verwendete OilRig einen Chrome-Datendumper namens MKG.
Überblick über die Juicy Mix-Kampagne
Im Jahr 2022 startete OilRig eine weitere Kampagne, die auf israelische Organisationen abzielte, dieses Mal mit einem aktualisierten Toolset. Wir nannten die Kampagne Juicy Mix, weil sie eine neue OilRig-Backdoor namens Mango verwendete (basierend auf dem internen Assembly-Namen und dem Dateinamen Mango.exe). In dieser Kampagne kompromittierten die Bedrohungsakteure eine legitime israelische Jobportal-Website, um sie für die C&C-Kommunikation zu nutzen. Die bösartigen Tools der Gruppe wurden dann gegen eine Organisation des Gesundheitswesens eingesetzt, die ebenfalls in Israel ansässig ist.
Die Mango-Backdoor der ersten Stufe ist ein Nachfolger von Solar, der ebenfalls in C#/.NET geschrieben wurde. Zu den bemerkenswerten Änderungen gehören Exfiltrationsfunktionen, die Verwendung nativer APIs und zusätzlicher Code zur Umgehung der Erkennung.
Neben Mango entdeckten wir auch zwei bisher nicht dokumentierte Browser-Daten-Dumper, die Cookies, Browser-Verlauf und Anmeldedaten aus den Browsern Chrome und Edge stehlen, sowie einen Windows Credential Manager Stealer, die wir alle OilRig zuschreiben. Diese Tools wurden alle gegen das gleiche Ziel wie Mango sowie bei anderen kompromittierten israelischen Organisationen in den Jahren 2021 und 2022 eingesetzt. Abbildung 2 gibt einen Überblick darüber, wie die verschiedenen Komponenten in der Juicy Mix-Kampagne eingesetzt wurden.
Technische Analyse
In diesem Abschnitt wird eine technische Analyse der Solar- und Mango-Backdoors und des SC5k-Downloaders sowie anderer Tools vorgenommen, die bei diesen Kampagnen auf den Zielsystemen eingesetzt wurden.
VBS-Dropper
Um auf dem Zielsystem Fuß zu fassen, wurden in beiden Kampagnen Visual Basic Script (VBS)-Dropper verwendet, die höchstwahrscheinlich über Spearphishing-E-Mails verbreitet wurden. Unsere nachstehende Analyse konzentriert sich auf das VBS-Skript, das für Mango (SHA-1: 3699B67BF4E381847BF98528F8CE2B966231F01A)verwendet wurde; beachten Sie, dass der Dropper von Solar sehr ähnlich ist.
Der Zweck des Droppers besteht darin, die eingebettete Mango-Backdoor zu liefern, eine Aufgabe für die Persistenz zu planen und die Kompromittierung beim C&C-Server zu registrieren. Die eingebettete Backdoor wird als eine Reihe von base64-Substrings gespeichert, die miteinander verknüpft und base64-dekodiert werden. Wie in Abbildung 3 dargestellt , verwendet das Skript auch eine einfache Technik zur Entschleierung von Zeichenketten, bei der Strings mit Hilfe von arithmetischen Operationen und der Chr-Funktion zusammengesetzt werden .
Darüber hinaus fügt der VBS-Dropper von Mango eine weitere Art der String-Verschleierung und Code zum Einrichten der Persistenz und zur Registrierung beim C&C-Server hinzu. Wie in Abbildung 4 dargestellt , ersetzt das Skript zur Entschleierung einiger Zeichenketten alle Zeichen in der Menge #*+-_)(}{@$%^& durch 0 und unterteilt die Zeichenkette dann in dreistellige Zahlen, die anschließend mit der Funktion Chr
in ASCII-Zeichen umgewandelt werden . Zum Beispiel wird die Zeichenkette 116110101109117+99111$68+77{79$68}46-50108109120115}77 in Msxml2.DOMDocument umgewandelt .
Sobald die Backdoor in das System eingebettet ist, erstellt der Dropper eine geplante Aufgabe, die Mango (oder Solar, in der anderen Version) alle 14 Minuten ausführt. Schließlich sendet das Skript einen base64-kodierten Namen des kompromittierten Computers über eine POST-Anfrage, um die Backdoor bei seinem C&C-Server zu registrieren.
Solar-Backdoor
Solar ist die Backdoor, die in der Outer Space-Kampagne von OilRig verwendet wird. Diese Backdoor verfügt über grundlegende Funktionen und kann unter anderem zum Herunterladen und Ausführen von Dateien sowie zur automatischen Exfiltration von bereitgestellten Dateien verwendet werden.
Wir haben den Namen Solar in Anlehnung an den von OilRig verwendeten Dateinamen Solar.exe gewählt. Der Name passt gut, da die Backdoor ein astronomisches Namensschema für ihre Funktionsnamen und Aufgaben verwendet, die im gesamten Binärprogramm verwendet werden (Mercury, Venus, Mars, Earth und Jupiter).
Solar beginnt die Ausführung mit den in Abbildung 5 gezeigten Schritten.
Die Backdoor erstellt zwei Aufgaben, Earth und Venus, die im Speicher ausgeführt werden. Für keine der beiden Tasks gibt es eine Stoppfunktion, so dass sie unbegrenzt laufen. Earth
wird alle 30 Sekunden ausgeführt, Venus
alle 40 Sekunden.
Earth ist die primäre Aufgabe, die für den Großteil der Funktionen von Solar verantwortlich ist. Sie kommuniziert mit dem C&C-Server über die Funktion MercuryToSun, die grundlegende System- und Malware-Versionsinformationen an den C&C-Server sendet und dann die Antwort des Servers verarbeitet. Earth sendet die folgenden Informationen an den C&C-Server:
- Die Zeichenfolge (@) <Systemhostname>; die gesamte Zeichenfolge ist verschlüsselt.
- Die Zeichenfolge 1.0.0.0, verschlüsselt (möglicherweise eine Versionsnummer).
- Die Zeichenfolge 30000, verschlüsselt (möglicherweise die geplante Laufzeit von Earth
Ver- und Entschlüsselung sind in Funktionen namens JupiterE
bzw. JupiterD implementiert. Beide Funktionen rufen eine Funktion namens JupiterX auf, die eine XOR-Schleife implementiert, wie in Abbildung 6 dargestellt .
Der Schlüssel wird aus einer fest kodierten globalen String-Variablen, 6sEj7*0B7#7, und einer Nonce abgeleitet: in diesem Fall eine zufällige Hex-Zeichenkette von 2-24 Zeichen Länge. Nach der XOR-Verschlüsselung wird die Standard-Base64-Kodierung angewendet.
Als C&C-Server wurde der Webserver eines israelischen Unternehmens für Personalwesen verwendet, den OilRig irgendwann vor dem Einsatz von Solar kompromittiert hatte:
http://organization.co[.]il/project/templates/office/template.aspx?rt=d&sun=<encrypted_MachineGuid>&rn=<encryption_nonce>
Bevor sie an den URI angehängt wird, wird die Verschlüsselungs-Nonce verschlüsselt, und der Wert der anfänglichen Abfragezeichenfolge rt wird hier auf d gesetzt, was wahrscheinlich für "Download" steht.
Der letzte Schritt der Funktion MercuryToSun
besteht darin, eine Antwort vom C&C-Server zu verarbeiten. Dazu wirdeine Teilzeichenkette der Antwort abgerufen, die sich zwischen den Zeichen QQ@ und @kkbefindet . Diese Antwort ist eine durch Sternchen (*) getrennte Befehlsfolge, die in einem Array verarbeitet wird. Earth
führt dann die Backdoor-Befehle aus, zu denen das Herunterladen zusätzlicher Nutzdaten vom Server, das Auflisten von Dateien auf dem System des Opfers und das Ausführen bestimmter ausführbarer Dateien gehören.
Die Befehlsausgabe wird dann mit der Funktion Neptune
gzip-komprimiert und mit demselben Verschlüsselungsschlüssel und einer neuen Nonce verschlüsselt. Dann werden die Ergebnisse auf den C&C-Server hochgeladen, also
http://<redacted>.co[.]il/project/templates/office/template.aspx?rt=u&sun=<MachineGuid>&rn=<new_nonce>
MachineGuid und die neue Nonce werden mit der Funktion JupiterE
verschlüsselt , und hier wird der Wert von rt auf u gesetzt , wahrscheinlich für "upload".
Venus, die andere geplante Aufgabe, wird für die automatische Datenexfiltration verwendet. Diese kleine Aufgabe kopiert den Inhalt von Dateien aus einem Verzeichnis (ebenfalls Venus genannt ) auf den C&C-Server. Diese Dateien werden wahrscheinlich von einem anderen, noch nicht identifizierten OilRig-Tool hier abgelegt. Nachdem eine Datei hochgeladen wurde, löscht die Aufgabe sie von der Festplatte.
Mango-Backdoor
Für seine Juicy Mix-Kampagne wechselte OilRig von der Solar-Backdoor zu Mango. Der Arbeitsablauf ist ähnlich wie bei Solar und die Funktionen überschneiden sich, aber es gibt dennoch einige bemerkenswerte Änderungen:
- Verwendung von TLS für die C&C-Kommunikation.
- Verwendung nativer APIs anstelle von .NET-APIs zur Ausführung von Dateien und Shell-Befehlen.
- Obwohl nicht aktiv genutzt, wurde ein Code zur Umgehung der Erkennung eingeführt.
- Die Unterstützung für die automatische Exfiltration (Venus
- Die Unterstützung für den Log-Modus wurde entfernt, und die Symbolnamen wurden verschleiert.
Im Gegensatz zu Solars astronomischem Namensschema, verschleiert Mango seine Symbolnamen, wie man in Abbildung 7sehen kann.
Neben der Verschleierung von Symbolnamen verwendet Mango auch die String-Stacking-Methode (wie in Abbildung 8), um Zeichenketten zu verschleiern, was den Einsatz einfacher Erkennungsmethoden erschwert.
Ähnlich wie Solar beginnt die Mango-Backdoor mit der Erstellung einer speicherinternen Aufgabe, die alle 32 Sekunden auf unbestimmte Zeit ausgeführt werden soll. Diese Aufgabe kommuniziert mit dem C&C-Server und führt Backdoor-Befehle aus, ähnlich wie die Aufgabe Earth
von Solar . Während Solar auch Venus, eine Aufgabe zur automatischen Exfiltration, erstellt, wurde diese Funktionalität in Mango durch einen neuen Backdoor-Befehl ersetzt.
In der Hauptaufgabe generiert Mango zunächst eine Opferkennung, <victimID>, die in der C&C-Kommunikation verwendet werden soll. Die ID wird als MD5-Hash von <Maschinenname><Benutzername> berechnet und als hexadezimale Zeichenfolge formatiert.
Um einen Backdoor-Befehl anzufordern, sendet Mango dann die Zeichenfolge d@<victimID>@<Maschinenname>|<Benutzername> an den C&C-Server http://www.darush.co[.]il/ads.asp - ein legitimes israelisches Jobportal, das wahrscheinlich vor dieser Kampagne von OilRig kompromittiert wurde. Wir haben die nationale israelische CERT-Organisation über die Kompromittierung informiert.
Der Request Body ist wie folgt aufgebaut:
- Die zu übertragenden Daten werden mit dem Verschlüsselungscode Q&4g XOR-verschlüsselt und dann base64-kodiert.
- Eine pseudozufällige Zeichenfolge von 3-14 Zeichen wird aus diesem Alphabet (wie es im Code erscheint) generiert: i8p3aEeKQbN4klFMHmcC2dU9f6gORGIhDBLS0jP5Tn7o1AVJ.
- Die verschlüsselten Daten werden an einer pseudozufälligen Position in die generierte Zeichenfolge eingefügt, eingeschlossen zwischen [ @ und @] -Trennzeichen.
Für die Kommunikation mit dem C&C-Server verwendet Mango das TLS-Protokoll (Transport Layer Security), das eine zusätzliche Verschlüsselungsebene bietet.
In ähnlicher Weise wird der vom C&C-Server empfangene Backdoor-Befehl XOR-verschlüsselt, base64-kodiert und dann zwischen [@ und @] in den HTTP-Antwortk-Body eingeschlossen. Der Befehl selbst ist entweder NCNT
(in diesem Fall wird keine Aktion ausgeführt) oder eine Zeichenkette aus mehreren Parametern, die durch @begrenzt sind, wie in Tabelle 1 gezeigt, die die Backdoor-Befehle von Mango auflistet, beschrieben . Beachten Sie, dass <Arg0> nicht in der Tabelle aufgeführt ist, aber in der Antwort an den C&C-Server verwendet wird.
Tabelle 1. Liste der Backdoor-Befehle von Mango
Arg1 |
Arg2 |
Arg3 |
Action taken |
Return value |
|
1 or empty string |
+sp <optional arguments> |
N/A |
Executes the specified file/shell command (with the optional arguments), using the native CreateProcess API imported via DllImport. If the arguments contain [s], it is replaced by C:\Windows\System32\. |
Command output. |
|
+nu |
N/A |
Returns the malware version string and C&C URL. |
<versionString>|<c2URL>; in this case: 1.0.0|http://www.darush.co[.]il/ads.asp |
||
+fl <optional directory name> |
N/A |
Enumerates the content of the specified directory (or current working directory). |
Directory of <directory path> For each subdirectory: <last_write_time> <DIR> <subdirectory name> For each file: <last_write_time> FILE <file size> <filename> <number of subdirectories> Dir(s) <number of files> File(s) |
||
+dn <file name> |
N/A |
Uploads the file content to the C&C server via a new HTTP POST request formatted: u@<victimID>@<machine name>|<username>@<file path>@2@<base64encodedFileContent>. |
One of: · file[<filename>] is uploaded to server. · file not found! · file path empty! |
||
2 |
Base64-encoded data |
Filename |
Dumps the specified data into a file in the working directory. |
file downloaded to path[<fullFilePath>] |
Jeder Backdoor-Befehl wird in einem neuen Thread behandelt, und die Rückgabewerte werden dann base64-kodiert und mit anderen Metadaten kombiniert. Schließlich wird diese Zeichenfolge mit demselben Protokoll und derselben Verschlüsselungsmethode wie oben beschrieben an den C&C-Server gesendet.
Ungenutzte Technik zur Umgehung der Erkennung
Interessanterweise haben wir in Mango eine ungenutzte Technik zur Umgehung der Erkennung gefunden. Die Funktion, die für die Ausführung der vom C&C-Server heruntergeladenen Dateien und Befehle verantwortlich ist, benötigt einen optionalen zweiten Parameter - eine Prozess-ID. Falls gesetzt, verwendet Mango die UpdateProcThreadAttribute
API, um das PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY (0x20007)
Attribut für den angegebenen Prozess auf einen Wert zu setzen: PROCESS_CREATION_MITIGATION_POLICY_BLOCK_NON_MICROSOFT_BINARIES_ALWAYS_ON (0x100000000000)
, wie in Abbildung 9 dargestellt .
Das Ziel dieser Technik ist es, Endpoint-Sicherheitslösungen daran zu hindern, ihre Code-Hooks für den Benutzermodus über eine DLL in diesem Prozess zu laden. Obwohl der Parameter in dem von uns analysierten Beispiel nicht verwendet wurde, könnte er in zukünftigen Versionen aktiviert werden.
Version 1.1.1
Unabhängig von der Juicy Mix-Kampagne fanden wir im Juli 2023 eine neue Version der Mango-Backdoor (SHA-1: C9D18D01E1EC96BE952A9D7BD78F6BBB4DD2AA2A), die von mehreren Benutzern unter dem Namen Menorah.exe auf VirusTotal hochgeladen wurde. Die interne Version in diesem Beispiel wurde von 1.0.0 auf 1.1.1 geändert, aber die einzige bemerkenswerte Änderung ist die Verwendung eines anderen C&C-Servers, http://tecforsc-001-site1.gtempurl[.]com/ads.asp.
Zusammen mit dieser Version haben wir auch ein Microsoft Word-Dokument (SHA-1: 3D71D782B95F13EE69E96BCF73EE279A00EAE5DB) mit einem bösartigen Makro entdeckt , das die Backdoor öffnet. Abbildung 10 zeigt die gefälschte Warnmeldung, die den Benutzer dazu verleitet, Makros für das Dokument zu aktivieren, und den Scheininhalt, der anschließend angezeigt wird, während der bösartige Code im Hintergrund ausgeführt wird.
Abbildung 10. Microsoft Word-Dokument mit einem bösartigen Makro, das Mango v1.1.1 ablegt
Tools für die Zeit nach der Kompromittierung
In diesem Abschnitt wird eine Auswahl der in den OilRig-Kampagnen "Outer Space" und "Juicy Mix" verwendeten Post-Compromise-Tools vorgestellt, die darauf abzielen, zusätzliche Payloads herunterzuladen und auszuführen sowie Daten von den angegriffenen Systemen zu stehlen.
SampleCheck5000 (SC5k)-Downloader
SampleCheck5000 (oder SC5k) ist ein Downloader, der zum Herunterladen und Ausführen zusätzlicher OilRig-Tools verwendet wird. Er zeichnet sich dadurch aus, dass er die Microsoft Office Exchange Web Services API für die C&C-Kommunikation nutzt: Die Angreifer erstellen Nachrichtenentwürfe in diesem E-Mail-Konto und verstecken darin die Backdoor-Befehle. Anschließend loggt sich der Downloader in dasselbe Konto ein und analysiert die Entwürfe, um die auszuführenden Befehle und Payloads zu erhalten.
SC5k verwendet vordefinierte Werte - Microsoft Exchange-URL, E-Mail-Adresse und Kennwort -, um sich beim entfernten Exchange-Server anzumelden, unterstützt aber auch die Option, diese Werte mithilfe einer Konfigurationsdatei im aktuellen Arbeitsverzeichnis namens setting.key zu überschreiben. Wir haben den Namen SampleCheck5000 gewählt, basierend auf einer der E-Mail-Adressen, die das Tool in der Outer Space-Kampagne verwendet hat.
Sobald sich SC5k beim entfernten Exchange-Server anmeldet, ruft es alle E-Mails im Verzeichnis Entwürfe
ab , sortiert sie nach dem neuesten Stand und behält nur die Entwürfe mit Anhängen bei. Anschließend werden alle Entwürfe mit Anhängen nach JSON-Anhängen durchsucht, die "Data" im Textkörper enthalten. Er extrahiert den Wert aus dem Schlüssel data in der JSON-Datei, dekodiert und entschlüsselt den Wert mit base64 und ruft cmd.exe auf , um die resultierende Befehlszeilenzeichenfolge auszuführen. SC5k speichert dann die Ausgabe der Ausführung von cmd.exe
in einer lokalen Variablen.
Als nächsten Schritt in der Schleife meldet der Downloader die Ergebnisse an die OilRig-Operatoren, indem er eine neue E-Mail-Nachricht auf dem Exchange-Server erstellt und als Entwurf speichert (nicht sendet), wie in Abbildung 11gezeigt . Eine ähnliche Technik wird verwendet, um Dateien aus einem lokalen Staging-Ordner zu exfiltrieren. Als letzten Schritt in der Schleife protokolliert SC5k die Befehlsausgabe in einem verschlüsselten und komprimierten Format auf der Festplatte.
Browser-Datendumper
Es ist typisch für die OilRig-Betreiber, dass sie bei ihren Aktivitäten nach der Kompromittierung Browser-Daten-Dumper verwenden. Wir haben zwei neue Browser-Datendumper unter den Tools entdeckt, die in der Juicy Mix-Kampagne zusammen mit der Mango-Backdoor eingesetzt wurden. Sie dumpen die gestohlenen Browserdaten im %TEMP%-Verzeichnis in Dateien namens Cupdate
und Eupdate
(daher unsere Namen für sie: CDumper und EDumper).
Bei beiden Tools handelt es sich um C#/.NET-Browser-Datenstehler, die Cookies, Browserverlauf und Anmeldeinformationen aus den Browsern Chrome (CDumper) und Edge (EDumper) sammeln. Wir konzentrieren uns bei unserer Analyse auf CDumper, da beide Stealer mit Ausnahme einiger Konstanten praktisch identisch sind.
Bei der Ausführung erstellt CDumper eine Liste von Benutzern, die Google Chrome installiert haben. Bei der Ausführung stellt der Stealer eine Verbindung zu den Chrome-SQLite-Datenbanken für Cookies, History
und Login Data unter %APPDATA%\Local\Google\Chrome\User Data her und sammelt mithilfe von SQL-Abfragen Browserdaten einschließlich besuchter URLs und gespeicherter Anmeldungen.
Die Cookie-Werte werden dann entschlüsselt, und alle gesammelten Informationen werden in einer Protokolldatei namens C:\Users\<user>\AppData\Local\Temp\Cupdate im Klartext gespeichert. Diese Funktionalität ist in CDumper-Funktionen namens CookieGrab
(siehe Abbildung 12 ), HistoryGrab und PasswordGrab implementiert . Beachten Sie, dass in CDumper kein Exfiltrationsmechanismus implementiert ist, aber Mango kann ausgewählte Dateien über einen Backdoor-Befehl exfiltrieren.
Sowohl bei Outer Space als auch bei der früheren Out to Sea-Kampagne verwendete OilRig einen C/C++ Chrome-Datendumper namens MKG. Wie CDumper und EDumper war auch MKG in der Lage, Benutzernamen und Kennwörter, den Browserverlauf und Cookies aus dem Browser zu stehlen. Dieser Chrome-Datendumper wird in der Regel an den folgenden Dateispeicherorten bereitgestellt (wobei der erste Speicherort der häufigste ist):
-
%USERS%\public\programs\vmwaredir\<random_14_character_string>\mkc.exe
%USERS%\Public\M64.exe
Windows Credential Manager Stealer
Neben Browser-Daten-Dumping-Tools setzte OilRig in der Juicy Mix-Kampagne auch einen Windows Credential Manager Stealer ein. Dieses Tool stiehlt Anmeldedaten vom Windows Credential Manager und speichert sie, ähnlich wie CDumper und EDumper, im Verzeichnis %TEMP% - in diesem Fall in einer Datei namens IUpdate
(daher der Name IDumper). Im Gegensatz zu CDumper und EDumper ist IDumper als PowerShell-Skript implementiert.
Wie bei den Browser-Dumper-Tools ist es auch bei OilRig nicht unüblich, Anmeldedaten vom Windows Credential Manager zu sammeln. In der Vergangenheit wurden die OilRig-Mitarbeiter dabei beobachtet, wie sie VALUEVAULT, ein öffentlich verfügbares, Go kompiliertes Tool zum Diebstahl von Anmeldeinformationen (siehe HardPass-Kampagne 2019 und eine Kampagne 2020), für denselben Zweck verwendeten.
Fazit
OilRig ist weiterhin innovativ und entwickelt neue Implantate mit Backdoor-ähnlichen Fähigkeiten und findet neue Wege, um Befehle auf entfernten Systemen auszuführen. Die Gruppe verbesserte ihre C#/.NET Solar-Backdoor aus der Outer Space-Kampagne, um eine neue Backdoor namens Mango für die Juicy Mix-Kampagne zu entwickeln. Die Gruppe setzt eine Reihe von benutzerdefinierten Tools für die Zeit nach der Kompromittierung ein, die zum Sammeln von Anmeldeinformationen, Cookies und Browserverläufen aus den wichtigsten Browsern und dem Windows Credential Manager verwendet werden. Trotz dieser Innovationen verlässt sich OilRig auch weiterhin auf bewährte Methoden zur Beschaffung von Benutzerdaten.
IoCs
Dateien
SHA-1 |
Filename |
ESET detection name |
Description |
3D71D782B95F13EE69E96BCF73EE279A00EAE5DB |
MyCV.doc |
VBA/OilRig.C |
Document with malicious macro dropping Mango. |
3699B67BF4E381847BF98528F8CE2B966231F01A |
chrome_log.vbs |
VBS/TrojanDropper.Agent.PCC |
VBS dropper. |
1DE4810A10FA2D73CC589CA403A4390B02C6DA5E |
Solar.exe |
MSIL/OilRig.E |
Solar backdoor. |
CB26EBDE498ECD2D7CBF1BC498E1BCBB2619A96C |
Mango.exe |
MSIL/OilRig.E |
Mango backdoor (v1.0.0). |
C9D18D01E1EC96BE952A9D7BD78F6BBB4DD2AA2A |
Menorah.exe |
MSIL/OilRig.E |
Mango backdoor (v1.1.1). |
83419CBA55C898FDBE19DFAFB5B1B207CC443190 |
EdgeUpdater.exe |
MSIL/PSW.Agent.SXJ |
Edge data dumper. |
DB01095AFEF88138C9ED3847B5D8AF954ED7BBBC |
Gr.exe |
MSIL/PSW.Agent.SXJ |
Chrome data dumper. |
BE01C95C2B5717F39B550EA20F280D69C0C05894 |
ieupdater.exe |
PowerShell/PSW.Agent.AH |
Windows Credential Manager dumper. |
6A1BA65C9FD8CC9DCB0657977DB2B03DACDD8A2A |
mkc.exe |
Win64/PSW.Agent.AW |
MKG - Chrome data dumper. |
94C08A619AF2B08FEF08B131A7A59D115C8C2F7B |
mkkc.exe |
Win64/PSW.Agent.AW |
MKG - Chrome data dumper. |
CA53B8EB76811C1940D814AAA8FE875003805F51 |
cmk.exe |
Win64/PSW.Agent.AW |
MKG - Chrome data dumper. |
BE9B6ACA8A175DF61F2C75932E029F19789FD7E3 |
CCXProcess.exe |
MSIL/OilRig.A |
SC5k downloader (32-bit version). |
2236D4DCF68C65A822FF0A2AD48D4DF99761AD07 |
acrotray.exe |
MSIL/OilRig.D |
SC5k downloader (64-bit version). |
EA8C3E9F418DCF92412EB01FCDCDC81FDD591BF1 |
node.exe |
MSIL/OilRig.D |
SC5k downloader (64-bit version). |
Netzwerk
IP |
Domain |
Hosting provider |
First seen |
Details |
199.102.48[.]42 |
tecforsc-001-site1.gtempurl[.]com |
MarquisNet |
2022-07-29 |
N/A |
MITRE ATT&CK-Techniken
Diese Tabelle wurde mit der Version 13 des MITRE ATT&CK Frameworks erstellt.
Tactic ID Name Description Resource Development Compromise Infrastructure: Server In both Outer Space and Juicy Mix campaigns, OilRig has compromised legitimate websites to stage malicious tools and for C&C communications. Develop Capabilities: Malware OilRig has developed custom backdoors (Solar and Mango), a downloader (SC5k), and a set of credential-theft tools for use in its operations. Stage Capabilities: Upload Malware OilRig has uploaded malicious components to its C&C servers, and stored prestaged files and commands in the Drafts email directory of an Office 365 account for SC5k to download and execute. Stage Capabilities: Upload Tool OilRig has uploaded malicious tools to its C&C servers, and stored prestaged files in the Drafts email directory of an Office 365 account for SC5k to download and execute. Initial Access Phishing: Spearphishing Attachment OilRig probably distributed its Outer Space and Juicy Mix campaigns via phishing emails with their VBS droppers attached. Execution Scheduled Task/Job: Scheduled Task OilRig’s IDumper, EDumper, and CDumper tools use scheduled tasks named ie<user>, ed<user>, and cu<user> to execute themselves under the context of other users. Solar and Mango use a C#/.NET task on a timer to iteratively execute their main functions. Command and Scripting Interpreter: PowerShell OilRig’s IDumper tool uses PowerShell for execution. Command and Scripting Interpreter: Windows Command Shell OilRig’s Solar, SC5k, IDumper, EDumper, and CDumper use cmd.exe to execute tasks on the system. Command and Scripting Interpreter: Visual Basic OilRig uses a malicious VBScript to deliver and persist its Solar and Mango backdoors. Native API OilRig’s Mango backdoor uses the CreateProcess Windows API for execution. Persistence Scheduled Task/Job: Scheduled Task OilRig’s VBS dropper schedules a task named ReminderTask to establish persistence for the Mango backdoor. Defense Evasion Masquerading: Match Legitimate Name or Location OilRig uses legitimate or innocuous filenames for its malware to disguise itself from defenders and security software. Obfuscated Files or Information: Software Packing OilRig has used SAPIEN Script Packager and SmartAssembly obfuscator to obfuscate its IDumper tool. Obfuscated Files or Information: Embedded Payloads OilRig’s VBS droppers have malicious payloads embedded within them as a series of base64 substrings. Masquerading: Masquerade Task or Service In order to appear legitimate, Mango’s VBS dropper schedules a task with the description Start notepad at a certain time. Indicator Removal: Clear Persistence OilRig’s post-compromise tools delete their scheduled tasks after a certain time period. Deobfuscate/Decode Files or Information OilRig uses several obfuscation methods to protect its strings and embedded payloads. Subvert Trust Controls SC5k uses Office 365, generally a trusted third party and often overlooked by defenders, as a download site. Impair Defenses OilRig’s Mango backdoor has an (as yet) unused capability to block endpoint security solutions from loading their user-mode code in specific processes. Credential Access Credentials from Password Stores: Credentials from Web Browsers OilRig’s custom tools MKG, CDumper, and EDumper can obtain credentials, cookies, and browsing history from Chrome and Edge browsers. Credentials from Password Stores: Windows Credential Manager OilRig’s custom credential dumping tool IDumper can steal credentials from the Windows Credential Manager. Discovery System Information Discovery Mango obtains the compromised computer name. File and Directory Discovery Mango has a command to enumerate the content of a specified directory. System Owner/User Discovery Mango obtains the victim’s username. Account Discovery: Local Account OilRig’s EDumper, CDumper, and IDumper tools can enumerate all user accounts on the compromised host. Browser Information Discovery MKG dumps Chrome history and bookmarks. Command and Control Application Layer Protocol: Web Protocols Mango uses HTTP in C&C communications. Ingress Tool Transfer Mango has the capability to download additional files from the C&C server for subsequent execution. Data Obfuscation Solar and SC5k use a simple XOR-encryption method along with gzip compression to obfuscate data at rest and in transit. Web Service: Bidirectional Communication SC5k uses Office 365 for downloading files from and uploading files to the Drafts directory in a legitimate email account. Data Encoding: Standard Encoding Solar, Mango, and MKG base64 decodes data before sending it to the C&C server. Encrypted Channel: Symmetric Cryptography Mango uses an XOR cipher with the key Q&4g to encrypt data in C&C communication. Encrypted Channel: Asymmetric Cryptography Mango uses TLS for C&C communication. Exfiltration Exfiltration Over C2 Channel Mango, Solar, and SC5k use their C&C channels for exfiltration.