ESET-Forscher analysierten eine Reihe von OilRig-Downloadern, die die Gruppe in mehreren Kampagnen im Jahr 2022 eingesetzt hat, um sich Zugang zu Zielorganisationen von besonderem Interesse zu verschaffen - alle mit Sitz in Israel. Diese leichtgewichtigen Downloader, die wir SampleCheck5000 (SC5k v1-v3), OilCheck, ODAgent und OilBooster genannt haben, zeichnen sich dadurch aus, dass sie eine von mehreren legitimen Cloud-Service-APIs für die C&C-Kommunikation und die Datenexfiltration verwenden: die Microsoft Graph OneDrive- oder Outlook-APIs und die Microsoft Office Exchange Web Services (EWS) API.
In allen Fällen verwenden die Downloader ein gemeinsames, von OilRig betriebenes Konto (E-Mail oder Cloud-Speicher), um Nachrichten mit den OilRig-Betreibern auszutauschen. Das gleiche Konto wird in der Regel für mehrere Opfern genutzt. Die Downloader greifen auf dieses Konto zu, um Befehle und zusätzliche Payloads herunterzuladen, die von den Betreibern bereitgestellt wurden, und um Befehlsausgaben und bereitgestellte Dateien hochzuladen.
Wir entdeckten den ersten Downloader der Serie, SC5k (v1), im November 2021, als er in der OilRig-Kampagne "Outer Space" eingesetzt wurde, die in unserem letzten Blogpost dokumentiert wurde. Im aktuellen Blogpost konzentrieren wir uns auf alle SC5k-Nachfolger, die OilRig im Laufe des Jahres 2022 entwickelt hat, wobei alle paar Monate eine neue Variante eingeführt wurde. Wir werden auch einen genaueren Blick auf die Mechanismen dieser Downloader werfen. Wir vergleichen diese Downloader auch mit anderen OilRig-Backdoors, die E-Mail-basierte C&C-Protokolle verwenden und über die Trend Micro (MrPerfectionManager) und Symantec (PowerExchange) Anfang des Jahres berichtet haben.
Schließlich erweitert dieser Blogpost auch unsere LABScon 2023-Präsentation, in der wir genauer untersucht haben, wie OilRig den Zugang zu ausgewählten israelischen Organisationen aufrechterhält: Alle in diesem Blogpost untersuchten Downloader wurden in Netzwerken eingesetzt, die zuvor von mehreren OilRig-Tools betroffen waren, was die Tatsache unterstreicht, dass OilRig hartnäckig auf dieselben Organisationen abzielt und entschlossen ist, in kompromittierten Netzwerken weiter Fuß zu fassen.
Die wichtigsten Punkte dieses Blogposts:
- OilRig hat im Jahr 2022 aktiv eine Reihe von Downloadern mit einer ähnlichen Logik entwickelt und eingesetzt: drei neue Downloader - ODAgent, OilCheck, OilBooster - und neuere Versionen des SC5k-Downloaders.
- Die Downloader nutzen verschiedene legitime Cloud-Service-APIs für die C&C-Kommunikation und die Datenexfiltration: Microsoft Graph OneDrive API, Microsoft Graph Outlook API und Microsoft Office EWS API.
- Zu den Zielen, die sich alle in Israel befanden, gehörten eine Organisation im Gesundheitssektor, ein Fertigungsunternehmen, eine lokale Regierungsorganisation und andere Organisationen.
- Alle Ziele waren zuvor schon von mehreren OilRig-Kampagnen betroffen.
Zuschreibung
OilRig, auch bekannt als APT34, Lyceum, Crambus oder Siamesekitten, ist eine Cyberspionage-Gruppe, die seit mindestens 2014 aktiv ist und von der allgemein angenommen wird, dass sie ihren Sitz im Iran hat. Die Gruppe zielt auf die Regierungen des Nahen Ostens und eine Reihe 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 seine 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, wie in der Ausgabe T3 2021 des ESET Threat Report erwähnt. In den Jahren 2022 und 2023 führte die Gruppe mehrere Angriffe auf lokale Regierungsbehörden und Organisationen des Gesundheitswesens in Israel durch und nutzte dabei ihre neuen Backdoors Solar und Mango. Im Jahr 2023 griff OilRig Organisationen im Nahen Osten mit den Backdoors PowerExchange und MrPerfectionManager sowie damit verbundenen Tools an, um die Anmeldedaten für interne Mailbox-Konten abzufangen und diese Konten dann für die Exfiltration zu nutzen.
Basierend auf diesen Indikatoren schreiben wir die Downloader SC5k (v1-v3), ODAgent, OilCheck und OilBooster mit hoher Wahrscheinlichkeit OilRig zu:
- Ziele
- Diese Downloader wurden ausschließlich gegen israelische Organisationen eingesetzt, was mit den typischen OilRig-Zielen übereinstimmt.
- Die beobachteten Branchen der Opfer stimmen ebenfalls mit den Interessen von OilRig überein - wir haben zum Beispiel gesehen, dass OilRig schon früher auf den israelischen Gesundheitssektor und den lokalen Regierungssektor in Israel abzielte.
- Code-Ähnlichkeiten
- Die Downloader SC5k v2 und v3 haben sich aus der ursprünglichen Version entwickelt, die zuvor in der "Outer Space" OilRig-Kampagne verwendet wurde. ODAgent, OilCheck und OilBooster haben eine ähnliche Logik und nutzen alle verschiedene Cloud-Service-Anbieter für ihre C&C-Kommunikation, ebenso wie SC5k, Marlin, PowerExchange und MrPerfectionManager.
- Diese Downloader sind zwar nicht nur bei OilRig anzutreffen, aber sie sind nicht sonderlich ausgefeilt und verhalten sich auf dem System oft unnötig auffällig, was wir bereits bei der Out to Sea-Kampagne beobachtet haben.
Überblick
Im Februar 2022 entdeckten wir einen neuen OilRig-Downloader, den wir aufgrund seines Dateinamens ODAgent nannten: ODAgent.exe
. ODAgent ist ein C#/.NET-Downloader, der ähnlich wie die Marlin-Backdoor von OilRig die Microsoft OneDrive-API für die C&C-Kommunikation nutzt. Im Gegensatz zu Marlin, die eine umfassende Liste von Backdoor-Befehlen unterstützt, beschränken sich die Fähigkeiten von ODAgent auf das Herunterladen und Ausführen von Payloads sowie auf das Exfiltrieren von bereitgestellten Dateien.
ODAgent wurde im Netzwerk eines israelischen Fertigungsunternehmens entdeckt - interessanterweise war dasselbe Unternehmen zuvor von OilRigs SC5k-Downloader und später von einem anderen neuen Downloader, OilCheck, zwischen April und Juni 2022 betroffen. SC5k und OilCheck verfügen über ähnliche Funktionen wie ODAgent, nutzen jedoch Cloud-basierte E-Mail-Dienste für ihre C&C-Kommunikation.
Im Laufe des Jahres 2022 beobachteten wir, dass sich dasselbe Muster mehrfach wiederholte und neue Downloader in den Netzwerken früherer OilRig-Ziele eingesetzt wurden: So entdeckten wir beispielsweise zwischen Juni und August 2022 die Downloader OilBooster, SC5k v1 und SC5k v2 sowie die Shark-Backdoor, die alle im Netzwerk einer lokalen Regierungsorganisation in Israel eingesetzt wurden. Später entdeckten wir eine weitere SC5k-Version (v3) im Netzwerk einer israelischen Gesundheitsorganisation, die ebenfalls ein früheres OilRig-Opfer war.
SC5k ist eine C#/.NET-Anwendung, deren Zweck es ist, zusätzliche OilRig-Tools unter Verwendung der Office Exchange Web Services (EWS) API herunterzuladen und auszuführen. Mit den neuen Versionen wurden Änderungen eingeführt, die Analysten das Auffinden und die Analyse der bösartigen Payloads erschweren (SC5k v2), sowie neue Exfiltrationsfunktionen (SC5k v3).
Alle Downloader, die in Abbildung 1 zusammengefasst sind, haben eine ähnliche Logik, sind jedoch unterschiedlich implementiert und werden im Laufe der Zeit immer komplexer, wobei sich C#/.NET-Binärdateien mit C/C++-Anwendungen abwechseln, die für die C&C-Kommunikation missbrauchten Cloud-Service-Anbieter variieren und andere Besonderheiten auftreten.
OilRig hat diese Downloader nur gegen eine begrenzte Anzahl von Zielen eingesetzt, die sich alle in Israel befinden und laut ESET-Telemetrie bereits Monate zuvor von anderen OilRig-Tools angegriffen wurden. Da es in Unternehmen üblich ist, auf Office 365-Ressourcen zuzugreifen, können sich die von OilRig mit Cloud-Diensten betriebenen Downloader leichter in den regulären Netzwerkverkehr einfügen - offenbar auch der Grund, warum sich die Angreifer dafür entschieden haben, diese Downloader auf eine kleine Gruppe besonders interessanter, wiederholt angegriffener Ziele zu verteilen.
Zum Zeitpunkt der Erstellung dieses Berichts waren die folgenden (ausschließlich israelischen, wie oben erwähnt) Organisationen betroffen:
- ein Fertigungsunternehmen (SC5k v1, ODAgent und OilCheck),
- eine lokale Regierungsorganisation (SC5k v1, OilBooster und SC5k v2),
- eine Organisation im Gesundheitswesen (SC5k v3) und
- andere nicht identifizierte Organisationen in Israel (SC5k v1).
Leider liegen uns keine Informationen über den ursprünglichen Angriffsvektor vor, mit dem die in diesem Blogpost besprochenen Ziele kompromittiert wurden. Wir können nicht bestätigen, ob die Angreifer in der Lage waren, dieselben Organisationen wiederholt erfolgreich zu kompromittieren, oder ob es ihnen irgendwie gelungen ist, zwischen dem Einsatz der verschiedenen Tools im Netzwerk Fuß zu fassen.
Technische Analyse
In diesem Abschnitt bieten wir eine technische Analyse der von OilRig im Jahr 2022 verwendeten Downloader mit Details darüber, wie sie verschiedene Cloud-Speicherdienste und Cloud-basierte E-Mail-Anbieter für ihre C&C-Kommunikation missbrauchen. Alle diese Downloader folgen einer ähnlichen Logik:
- Sie verwenden ein gemeinsames Konto (E-Mail oder Cloud-Speicher), um Nachrichten mit den OilRig-Betreibern auszutauschen. Dasselbe Konto kann für mehrere Opfer verwendet werden.
- Sie greifen auf dieses Konto zu, um Befehle und zusätzliche Payloads herunterzuladen, die von den Betreibern bereitgestellt wurden, und um Befehlsausgaben und bereitgestellte Dateien hochzuladen.
In unserer Analyse konzentrieren wir uns auf diese Merkmale der Downloader:
- Besonderheiten des Netzwerkkommunikationsprotokolls (z. B. Microsoft Graph API vs. Microsoft Office EWS API).
- Der Mechanismus zur Unterscheidung zwischen verschiedenen vom Angreifer und vom Downloader hochgeladenen Nachrichten im gemeinsamen Konto, einschließlich des Mechanismus zur Unterscheidung zwischen Nachrichten, die von verschiedenen Opfern hochgeladen wurden.
- Einzelheiten darüber, wie die Downloader Befehle verarbeiten und Payloads vom gemeinsamen Konto heruntergeladen werden.
Tabelle 1 fasst zusammen und vergleicht, wie die einzelnen Downloader diese Merkmale implementieren. Anschließend analysieren wir den ersten (SC5k) und den komplexesten (OilBooster) Downloader im Detail als Beispiele für Tools, die Cloud-basierte E-Mail-Dienste bzw. Cloud-Speicherdienste missbrauchen.
Tabelle 1. Zusammenfassung der Hauptmerkmale der OilRig-Downloader, die legitime Cloud-Service-Anbieter missbrauchen
Mechanism |
SC5k v1 |
SC5k v2 |
SC5k v3 |
OilCheck |
OilBooster |
ODAgent |
C&C protocol |
A shared Microsoft Exchange email account, C&C communication embedded in draft messages. |
A shared OneDrive account; files with various extensions to distinguish action types. |
||||
Network communications |
Microsoft Office EWS API |
Microsoft Graph (Outlook) API |
Microsoft Graph (OneDrive) API. |
|||
Victim identification mechanism |
The sg extended property of the email draft is set to <victimID>. |
An unknown extended email property is set to <victimID>. |
From field has the username portion of the email address set to <victimID>. |
The zigorat extended property of the email draft is set to <victimID>. |
All communication for, and from, the specific victim is uploaded to a victim-specific subdirectory named <victimID>. |
|
Keep-alive message |
The type extended property of the email draft is set to 3; the current GMT time is in the email body. |
An unknown extended property of the email draft is set to 0; the email body is empty. |
The From field of the email draft is set to <victimID>@yahoo.com; the current GMT time is in the email body. |
The type extended property of the email draft is set to 3; the current GMT time is in the email body. |
A file named <victimID>/setting.ini. |
A file named <victimID>/info.ini. |
File for download |
The type extended property of the email draft is set to 1; the attached file has any extension other than .json. |
An unknown extended property of the email draft is set to 1; the attached file has any extension other than .bin. |
The From field of the email draft is set to <victimID>@outlook.com, with the message category set to file. |
The type extended property of the email draft is set to 1; the attached file has a .biz extension. |
A file with a .docx extension in the <victimID>/items subdirectory. |
A non-JSON file in the <victimID>/o subdirectory. |
Exfiltrated file |
The type extended property of the email draft is set to 2; the attached file has the .tmp1 extension. |
An unknown extended property of the email draft is set to 2; the attached file has a .tmp extension. |
The From field of the email draft is set to <victimID>@aol.com, with the file category. |
The type extended property of the email draft is set to 2; the attached file has a .biz extension. |
A file with a .xlsx extension in the <victimID>/items subdirectory. |
A non-JSON file in the <victimID>/i subdirectory. |
Command for execution |
The type extended property of the email draft is set to 1; the attached file has a .json extension. |
An unknown extended property of the email draft is set to 1; the attached file has a .bin extension. |
The From field of the email draft is set to <victimID>@outlook.com, without the file category. |
The type extended property of the email draft is set to 1; the attached file has any extension other than .biz. |
A file with a .doc extension in the <victimID>/items subdirectory. |
A JSON file in the <victimID>/o subdirectory. |
Command output |
The type extended property of the email draft is set to 2; the attached file has a .json extension. |
An unknown extended property of the email draft is set to 2; the attached file has a .bin extension. |
The From field of the email draft is set to <victimID>@aol.com, with the text category. |
The type extended property of the email draft is set to 2. |
A file with a .xls extension in the <victimID>/items subdirectory. |
A JSON file in the <victimID>/i subdirectory. |
SC5k-Downloader
Der SampleCheck5000 (oder SC5k) Downloader ist eine C#/.NET-Anwendung und der erste in einer Reihe von OilRigs leichtgewichtigen Downloadern, die legitime Cloud-Dienste für ihre C&C-Kommunikation nutzen. Wir haben die erste Variante in unserem letzten Blogpost kurz dokumentiert und haben seitdem zwei neuere Varianten entdeckt.
Alle SC5k-Varianten verwenden die Microsoft Office EWS-API, um mit einem gemeinsam genutzten Exchange-E-Mail-Konto zu interagieren, um zusätzliche Payloads und Befehle herunterzuladen und Daten hochzuladen. E-Mail-Entwürfe und ihre Anhänge sind in allen Versionen dieses Downloaders das primäre Vehikel für den C&C-Verkehr, aber die späteren Versionen erhöhen die Komplexität dieses C&C-Protokolls (SC5k v3) und fügen Fähigkeiten zur Umgehung der Erkennung hinzu (SC5k v2). Dieser Abschnitt konzentriert sich darauf, diese Unterschiede hervorzuheben.
Für die C&C-Kommunikation verwendetes Exchange-Konto
Zur Laufzeit stellt SC5k über die EWS-API eine Verbindung zu einem entfernten Exchange-Server her, um zusätzliche Payloads und Befehle zu erhalten, die von einem E-Mail-Konto ausgeführt werden, das der Angreifer (und in der Regel auch andere Opfer) gemeinsam nutzen. Standardmäßig erfolgt der Zugriff auf ein Microsoft Office 365 Outlook-Konto über die URL https://outlook.office365.com/EWS/Exchange.asmx
unter Verwendung von hartcodierten Anmeldeinformationen, aber einige SC5k-Versionen sind auch in der Lage, eine Verbindung zu anderen entfernten Exchange-Servern herzustellen, wenn eine Konfigurationsdatei mit einem hartcodierten Namen(setting.key
, set.idl
) und den entsprechenden Anmeldeinformationen darin vorhanden ist.
Wir haben die folgenden E-Mail-Adressen gesehen, die von SC5k-Versionen für die C&C-Kommunikation verwendet wurden, wobei die erste davon dem Downloader seinen Namen gab:
samplecheck5000@outlook.com
FrancesLPierce@outlook.com
SandraRCharles@outlook.com
In SC5k v2 sind die Standard-URL von Microsoft Exchange, die E-Mail-Adresse und das Passwort nicht im Hauptmodul enthalten - stattdessen wurde der Code des Downloaders in mehrere Module aufgeteilt. Wir haben nur Variationen der Hauptanwendung entdeckt, die sich bei einem entfernten Exchange-Server anmeldet, die E-Mails im Verzeichnis Drafts
("Entwürfe") durchläuft und zusätzliche Payloads aus ihren Anhängen extrahiert. Diese Anwendung hängt jedoch von zwei externen Klassen ab, die in den entdeckten Samples nicht vorhanden waren und wahrscheinlich in dem/den fehlenden Modul(en) implementiert sind:
- Die Klasse
init
sollte eine Schnittstelle bereitstellen, um die E-Mail-Adresse, den Benutzernamen und das Kennwort, die für die Anmeldung bei dem entfernten Exchange-Konto erforderlich sind, sowie andere Konfigurationswerte von dem anderen Modul zu erhalten. - Die Klasse
structure
sollte Funktionen für die Verschlüsselung, Komprimierung, Ausführung heruntergeladener Payloads und andere Hilfsfunktionen implementieren.
Diese Änderungen wurden wahrscheinlich eingeführt, um Analysten das Auffinden und die Analyse der bösartigen Payloads zu erschweren, da die beiden fehlenden Klassen für die Identifizierung des für die Malware-Verteilung verwendeten Exchange-Kontos entscheidend sind.
C&C- und Exfiltrationsprotokoll
In allen Versionen meldet sich der SC5k-Downloader wiederholt bei einem entfernten Exchange-Server an, indem er die .NET-Klasse ExchangeService im Namespace Microsoft.Exchange.WebServices.Data verwendet, um mit der EWS-API zu interagieren. Sobald die Verbindung hergestellt ist, liest SC5k E-Mail-Nachrichten mit Anhängen im Verzeichnis Drafts
, um Angreiferbefehle und zusätzliche Payloads zu extrahieren. Umgekehrt exfiltriert SC5k bei jeder Verbindung Dateien aus einem lokalen Staging-Verzeichnis, indem er neue E-Mail-Entwürfe in demselben E-Mail-Konto erstellt. Der Pfad zum Staging-Verzeichnis variiert in den einzelnen Samples.
Interessant ist die Art und Weise, wie sowohl die Betreiber als auch die verschiedenen Instanzen dieses Downloaders zwischen den verschiedenen Arten von Entwürfen in dem gemeinsamen E-Mail-Konto unterscheiden können. Zum einen ist in jedem E-Mail-Entwurf eine <victimID>
enthalten, wodurch dasselbe Exchange-Konto für mehrere OilRig-Opfer verwendet werden kann:
- Bei v1 und v2 überträgt der Downloader die
<victimID>
als benutzerdefiniertes Attribut des E-Mail-Entwurfs über die Methode SetExtendedProperty. - Bei v3 nimmt der Downloader die
<victimID>
in das FeldFrom
des E-Mail-Entwurfs auf.
Die <victimID>
wird in der Regel anhand der Informationen des kompromittierten Systems generiert, z. B. der Volume-ID des Systems oder des Computernamens, wie in Abbildung 2 dargestellt.
Darüber hinaus können verschiedene E-Mail-Eigenschaften verwendet werden, um zwischen von den Betreibern erstellten Nachrichten (Befehle, zusätzliche Payloads) und von den Malware-Instanzen erstellten Nachrichten (Befehlsausgaben, exfiltrierte Dateien) zu unterscheiden. SC5k v1 und v2 verwenden Dateierweiterungen (der Entwurfsanhänge), um diese Unterscheidung zu treffen, während SC5k v3 die Felder From
und MailItem.Categories
des E-Mail-Entwurfs verwendet, um zwischen verschiedenen Aktionen zu unterscheiden. In jedem Fall können die E-Mail-Entwürfe im gemeinsamen E-Mail-Konto verschiedenen Zwecken dienen, wie in Tabelle 2 zusammengefasst und im Folgenden erläutert wird. Beachten Sie, dass die im Absenderfeld verwendeten E-Mail-Adressen nicht echt sind. Da SC5k niemals echte E-Mail-Nachrichten versendet, werden diese Attribute nur zur Unterscheidung zwischen verschiedenen bösartigen Aktionen verwendet.
Tabelle 2. Typen von E-Mail-Nachrichten, die von SC5k v3 für C&C-Kommunikation verwendet werden
From |
MailItem.Categories |
Created by |
Details |
<victimID>@yahoo.com |
N/A |
SC5k v3 instance |
Created to register the victim with the C&C server, and renewed periodically to indicate that the malware is still active. |
<victimID>@outlook.com |
file |
C&C server |
Attached file is decrypted, decompressed, and dumped on the victim’s computer. |
<victimID>@outlook.com |
Other than file |
C&C server |
Attached command is decrypted, decompressed, then passed as an argument to a file already present on the compromised machine, presumably a command interpreter. |
<victimID>@aol.com |
file |
SC5k v3 instance |
Created to exfiltrate a file from a staging directory. |
<victimID>@aol.com |
text |
SC5k v3 instance |
Created to send command output to the C&C server. |
Genauer gesagt verarbeitet (und löscht) SC5k v3 die E-Mail-Nachrichten des gemeinsamen Exchange-Kontos, bei denen das Feld From
auf <victimID>@outlook.com
gesetzt ist, und unterscheidet anhand der Nachrichtenkategorie(MailItem.Categories
) zwischen Befehlen und zusätzlichen Payloads:
- Bei Payloads wird die angehängte Datei mit dem hartkodierten Schlüssel
&5z
XOR entschlüsselt, dann mit gzip dekomprimiert und in das Arbeitsverzeichnis abgelegt. - Bei Shell-Befehlen wird der Entwurf des Anhangs base64-dekodiert, XOR-entschlüsselt und dann lokal mit
cmd.exe
oder, im Fall von SC5k v3, mit einem benutzerdefinierten Befehlsinterpreter unter dem Namen<baseDirectory>\*Ext.dll
ausgeführt. Diese Datei wird dann überAssembly.LoadFrom
geladen, und ihreextend
-Methode wird mit dem als Argument übergebenen Befehl aufgerufen.
Um mit den Angreifern zu kommunizieren, erstellt SC5k v3 Nachrichtenentwürfe mit einem anderen From
-Feld : <victimID>@aol.com
. An diese Nachrichten sind Ausgaben von zuvor empfangenen Befehlen oder Inhalte des lokalen Staging-Verzeichnisses angehängt. Dateien werden immer gzip-komprimiert und XOR-verschlüsselt, bevor sie in die gemeinsame Mailbox hochgeladen werden, während Shell-Befehle und Befehlsausgaben XOR-verschlüsselt und base64-kodiert sind.
Schließlich erstellt SC5k v3 wiederholt einen neuen Entwurf auf dem gemeinsam genutzten Exchange-Konto mit From <victimID>@yahoo.com
, um den Angreifern zu zeigen, dass diese Downloader-Instanz noch aktiv ist. Diese Keepalive-Nachricht, deren Aufbau in Abbildung 3 dargestellt ist, hat keinen Anhang und wird bei jeder Verbindung mit dem entfernten Exchange-Server erneuert.
Andere OilRig-Tools, die ein E-Mail-basiertes C&C-Protokoll verwenden
Neben SC5k wurden in der Folge (2022 und 2023) weitere bemerkenswerte OilRig-Tools entdeckt, die APIs legitimer Cloud-basierter E-Mail-Dienste für die Exfiltration und beide Richtungen ihrer C&C-Kommunikation missbrauchen.
OilCheck, ein C#/.NET-Downloader, der im April 2022 entdeckt wurde, verwendet ebenfalls Nachrichtenentwürfe, die in einem gemeinsam genutzten E-Mail-Konto erstellt wurden, für beide Richtungen der C&C-Kommunikation. Im Gegensatz zu SC5k verwendet OilCheck die REST-basierte Microsoft Graph API, um auf ein gemeinsames Microsoft Office 365 Outlook-E-Mail-Konto zuzugreifen, und nicht die SOAP-basierte Microsoft Office EWS API. Während SC5k die integrierte ExchangeService .NET-Klasse verwendet, um die API-Anfragen transparent zu erstellen, erstellt OilCheck die API-Anfragen manuell. Die wichtigsten Merkmale von OilCheck sind in Tabelle 1 zusammengefasst.
Anfang des Jahres 2023 wurden zwei weitere OilRig-Backdoors öffentlich dokumentiert: MrPerfectionManager (Trend Micro, Februar 2023) und PowerExchange (Symantec, Oktober 2023), die beide E-Mail-basierte C&C-Protokolle zum Exfiltrieren von Daten verwenden. Ein bemerkenswerter Unterschied zwischen diesen Tools und den in diesem Blogpost untersuchten Downloadern von OilRig besteht darin, dass erstere den Exchange-Server des betroffenen Unternehmens nutzen, um E-Mail-Nachrichten vom und zum E-Mail-Konto des Angreifers zu übertragen. Im Gegensatz dazu griffen bei SC5k und OilCheck sowohl die Malware als auch der Betreiber auf dasselbe Exchange-Konto zu und kommunizierten, indem sie E-Mail-Entwürfe erstellten, ohne jemals eine tatsächliche Nachricht zu versenden.
In jedem Fall bestätigen die neuen Erkenntnisse den Trend von OilRig, sich von den bisher verwendeten HTTP/DNS-basierten Protokollen abzuwenden und legitime Cloud-Service-Provider zu nutzen, um seine bösartige Kommunikation zu verbergen und die Netzwerkinfrastruktur der Gruppe zu verschleiern, während sie weiterhin mit verschiedenen Varianten solcher alternativen Protokolle experimentieren.
OilBooster-Downloader
OilBooster ist eine 64-Bit Portable Executable (PE), geschrieben in Microsoft Visual C/C++ mit statisch gelinkten OpenSSL- und Boost-Bibliotheken (daher der Name). Wie OilCheck verwendet sie die Microsoft Graph API, um sich mit einem Microsoft Office 365-Konto zu verbinden. Im Gegensatz zu OilCheck verwendet sie jedoch diese API, um mit einem OneDrive-Konto (nicht Outlook) zu interagieren, das von den Angreifern für die C&C-Kommunikation und Exfiltration kontrolliert wird. OilBooster kann Dateien vom Remote-Server herunterladen, Dateien und Shell-Befehle ausführen und die Ergebnisse exfiltrieren.
Überblick
Nach der Ausführung blendet OilBooster sein Konsolenfenster aus (über die ShowWindow-API) und überprüft, ob es mit einem Befehlszeilenargument ausgeführt wurde. Andernfalls wird es sofort beendet.
OilBooster erstellt dann eine <victimID>
, indem es den Hostnamen und den Benutzernamen des kompromittierten Computers kombiniert: <hostname>-<username>
. Diese Kennung wird später in der C&C-Kommunikation verwendet: OilBooster erstellt für jedes Opfer ein spezifisches Unterverzeichnis auf dem gemeinsamen OneDrive-Konto, das dann zum Speichern von Backdoor-Befehlen und zusätzlichen Payloads (die von den Betreibern hochgeladen werden), Befehlsergebnissen und exfiltrierten Daten (die von der Malware hochgeladen werden) verwendet wird. Auf diese Weise kann ein und dasselbe OneDrive-Konto von mehreren Opfern genutzt werden.
Abbildung 4 zeigt die Struktur des freigegebenen OneDrive-Kontos und des lokalen Arbeitsverzeichnisses und fasst das C&C-Protokoll zusammen.
Wie in Abbildung 4 dargestellt, lädt der OilRig-Operator Backdoor-Befehle und zusätzliche Payloads in das opferbezogene Verzeichnis auf OneDrive hoch, und zwar als Dateien mit den Erweiterungen .doc
und .docx
. Auf der anderen Seite des C&C-Protokolls lädt OilBooster Befehlsergebnisse und exfiltrierte Daten als Dateien mit den Erweiterungen .xls
bzw. .xlsx
hoch. Beachten Sie, dass es sich dabei nicht um echte Microsoft Office-Dateien handelt, sondern um JSON-Dateien mit XOR-verschlüsselten und base64-kodierten Werten.
Abbildung 5 zeigt, wie OilBooster Instanzen von zwei Threads in einer unendlichen Schleife erzeugt und nach jeder Iteration 153123 Millisekunden lang schläft:
Beide Threads interagieren mit dem gemeinsamen OneDrive-Konto:
- Ein Downloader-Thread wickelt die C&C-Kommunikation ab und führt heruntergeladene Payloads aus.
- Ein Exfiltrations-Thread exfiltriert Daten aus dem lokalen Staging-Verzeichnis.
Der Downloader-Thread verbindet sich mit dem vom Angreifer kontrollierten OneDrive-Konto und durchläuft alle Dateien mit den Erweiterungen .doc
und .docx
, die dann heruntergeladen, entschlüsselt und geparst werden, um zusätzliche Payloads auf dem angegriffenen Host zu extrahieren und auszuführen. Die heruntergeladenen Dateien werden in einem lokalen Unterverzeichnis namens items
im aktuellen Arbeitsverzeichnis (in dem OilBooster installiert ist) gespeichert. Wie in Abbildung 6 dargestellt, wird jeder Verbindungsversuch in einer separaten Thread-Instanz behandelt, die einmal alle 53123 Millisekunden gestartet wird.
Der Exfiltrations-Thread durchläuft ein weiteres lokales Unterverzeichnis mit dem Namen tempFiles
und exfiltriert dessen Inhalt in das freigegebene OneDrive-Konto, wo er als einzelne Dateien mit der Erweiterung .xlsx
hochgeladen wird. Das Staging-Verzeichnis wird auf diese Weise einmal alle 43123 Millisekunden in einer separaten Thread-Instanz geleert, wie auch in Abbildung 6 zu sehen ist.
Netzwerkkommunikation
Für die C&C-Kommunikation und die Exfiltration verwendet OilBooster die Microsoft Graph API, um auf das freigegebene OneDrive-Konto zuzugreifen, wobei eine Vielzahl von HTTP GET-, POST-, PUT- und DELETE-Anfragen an den graph.microsoft.com
-Host über den Standardport 443 gestellt werden. Der Einfachheit halber werden diese Anfragen auch als OneDrive-API-Anfragen bezeichnet. Die verschlüsselte Kommunikation wird durch die statisch gelinkte OpenSSL-Bibliothek erleichtert, die die SSL-Kommunikation übernimmt.
Um sich mit dem OneDrive-Konto zu authentifizieren, erhält OilBooster zunächst das OAuth2-Zugangstoken von der Microsoft-Identitätsplattform (dem Autorisierungsserver), indem eine POST-Anfrage mit folgendem Body über Port 443 an login.microsoftonline.com/common/oauth2/v2.0/token
gesendet wird, wobei fest kodierte Anmeldedaten verwendet werden:
client_id=860b23a7-d484-481d-9fea-d3e6e129e249
&redirect_uri=https://login.live.com/oauth20_desktop.srf
&client_secret=<redacted>
&refresh_token=<redacted>
&grant_type=refresh_token
OilBooster erhält auf diese Weise ein neues Access-Token, das im Authorization-Header der nachfolgenden OneDrive-API-Anfragen zusammen mit einem neuen Refresh-Token verwendet wird. OilBooster verfügt auch über einen Backup-Kanal, um nach 10 aufeinanderfolgenden erfolglosen Verbindungen zum OneDrive-Server ein neues Refresh-Token von seinem C&C-Server anzufordern. Wie in Abbildung 7 dargestellt, kann das neue Token durch Senden einer einfachen HTTP-GET-Anfrage auf Port 80 an host1[.]com/rt.ovf
(eine legitime, wahrscheinlich kompromittierte Website) angefordert werden, auf die das neue Refresh-Token im Klartext in der HTTP-Antwort folgen sollte.
Die verschiedenen von OilBooster hergestellten Netzwerkverbindungen sind in Abbildung 8 zusammengefasst.
Downloader-Schleife
In der Downloader-Schleife stellt OilBooster wiederholt eine Verbindung zum freigegebenen OneDrive-Konto her, um eine Liste der Dateien mit den Erweiterungen .docx
und .doc
im opfer-spezifischen Unterverzeichnis mit dem Namen <victimID>/items/
zu erhalten, indem eine HTTP-GET-Anfrage über Port 443 an diese URL gesendet wird:
graph.microsoft.com/v1.0/me/drive/root:/<victimID>/items:/children?$filter=endsWith(name,'.doc')%20or%20endsWith(name,'.docx')&$select=id,name,file
Wenn die Verbindung nach 10 Versuchen nicht erfolgreich ist (Antwortstatus HTTP_STATUS_DENIED
), stellt OilBooster eine Verbindung zu seinem Fallback-C&C-Server, host1[.]com/rt.ovf
, her, um ein neues Refresh-Token zu erhalten, wie bereits erwähnt.
Wenn das angegebene Verzeichnis noch nicht existiert(HTTP_STATUS_NOT_FOUND
), registriert OilBooster das Opfer zunächst auf dem freigegebenen OneDrive-Konto, indem er eine HTTP-POST-Anfrage über Port 443 an folgende URL sendet: graph.microsoft.com/v1.0/me/drive/items/root:/<victimID>:/children
mit dem JSON-String {"name": "items", "folder":{}}
als Request Body, wie in Abbildung 9 gezeigt. Diese Anfrage erstellt gleichzeitig die gesamte Verzeichnisstruktur <victimID>/items
, die später von den Angreifern verwendet wird, um Befehle und zusätzliche Payloads zu speichern, die als .doc
- und .docx
-Dateien getarnt sind.
Bei nachfolgenden Verbindungen (mit HTTP_STATUS_OK
) verarbeitet OilBooster diese Dateien, um Payloads zu extrahieren und auszuführen. OilBooster lädt zunächst jede Datei aus dem OneDrive-Konto herunter und löscht sie nach der Verarbeitung aus OneDrive.
Nachdem alle .doc
- und .docx
-Dateien aus dem OneDrive-Unterverzeichnis heruntergeladen wurden, zeichnet OilBooster den Zeitstempel der letzten Verbindung (die aktuelle GMT-Zeit) auf, indem er eine neue Datei mit dem Namen setting.ini
im OneDrive-Unterverzeichnis des Opfers erstellt. Dies geschieht über eine HTTP PUT-Anfrage an Port 443, die an folgende URL gerichtet ist: graph.microsoft.com/v1.0/me/drive/root:/<victimID>/setting.ini:/content
.
Verarbeitung von .doc-Dateien
Dateien mit der Erweiterung .doc
, die vom freigegebenen OneDrive-Konto heruntergeladen werden, sind in Wirklichkeit JSON-Dateien mit verschlüsselten Befehlen, die auf dem kompromittierten Host ausgeführt werden sollen. Sobald eine <filename>.doc
heruntergeladen ist, analysiert OilBooster die Werte s
(Teil des Entschlüsselungsschlüssels) und c
(verschlüsselter Befehl) aus dem Dateiinhalt. Es entschlüsselt zuerst base64 und entschlüsselt dann den Wert c
mit XOR, wobei ein Schlüssel verwendet wird, der durch Anhängen der letzten beiden Zeichen des Wertes s
an die letzten beiden Zeichen von <filename>
erzeugt wird.
Nach der Entschlüsselung führt OilBooster die Befehlszeile in einem neuen Thread unter Verwendung der CreateProcessW API aus und liest das Befehlsergebnis über eine unbenannte Pipe, die mit dem Prozess verbunden ist. OilBooster lädt dann das Befehlsergebnis als neue Datei mit dem Namen <filename>.xls
auf das freigegebene OneDrive-Konto hoch, indem es eine HTTP PUT-Anfrage über Port 443 an graph.microsoft.com/v1.0/me/drive/root:/<VictimID>/items/<filename>.xls:/content
sendet.
Verarbeitung von .docx-Dateien
Dateien mit der Erweiterung .docx
, die vom freigegebenen OneDrive-Konto heruntergeladen werden, sind in Wirklichkeit komprimierte und verschlüsselte Dateien mit dem Namen <filename>.<original extension>.docx
, die auf dem kompromittierten System abgelegt und entpackt werden. OilBooster lädt zunächst die verschlüsselte Datei in das lokale Verzeichnis <currentdir>\items
herunter und verwendet dabei den vollständigen Original-Dateinamen.
Im nächsten Schritt liest und entschlüsselt OilBooster den Inhalt der Datei unter Verwendung einer XOR-Verschlüsselung mit .<original extension>
als Entschlüsselungsschlüssel und legt sie im selben Verzeichnis in einer Datei namens <filename>.<original extension>.doc ab, während die erste Datei gelöscht wird. Schließlich liest und dekomprimiert OilBooster die entschlüsselte Datei, legt das Ergebnis im selben Verzeichnis in einer Datei mit dem Namen <filename>.<original extension> ab und löscht die andere Datei.
Beachten Sie die unnötige Erstellung mehrerer Dateien während des Prozesses - dies ist typisch für OilRig. Wir haben bereits die "lauten" Operationen der Gruppe auf kompromittierten Hosts in ihrer Out to Sea-Kampagne beschrieben.
Exfiltrationsschleife
In der Exfiltrationsschleife durchläuft OilBooster den Inhalt des lokalen Verzeichnisses <currentdir>\tempFiles
und lädt die Dateiinhalte in den Ordner des Opfers auf dem freigegebenen OneDrive-Konto hoch. Jede Datei wird auf diese Weise verarbeitet:
- OilBooster gzip komprimiert die Originaldatei <filename>.<original extension> und schreibt das Ergebnis in eine Datei namens
<filename>.<original extension>.xlsx
im selben Verzeichnis. - Dann verschlüsselt es die komprimierte Datei mit einer XOR-Chiffre und .<original extension> als Schlüssel. Wenn keine Dateierweiterung vorhanden ist, wird
4cx
als Standardschlüssel verwendet.
Schließlich wird die verschlüsselte Datei auf das OneDrive-Konto hochgeladen und die lokale Datei gelöscht.
ODAgent-Downloader: Der Vorläufer von OilBooster
ODAgent ist eine C#/.NET-Anwendung, die die Microsoft Graph API nutzt, um auf ein vom Angreifer kontrolliertes OneDrive-Konto für die C&C-Kommunikation und Exfiltration zuzugreifen - kurz gesagt, ODAgent ist ein C#/.NET-Vorläufer von OilBooster. Ähnlich wie OilBooster stellt ODAgent wiederholt eine Verbindung zum freigegebenen OneDrive-Konto her und listet den Inhalt des opferbezogenen Ordners auf, um zusätzliche Payloads und Backdoor-Befehle zu erhalten.
Wie in Abbildung 10 dargestellt, analysiert ODAgent dann die Metadaten für jede Remote-Datei. Anschließend verwendet er den Wert des mit der Datei verknüpften mimeType
-Schlüssels, um zwischen Backdoor-Befehlen (formatiert als JSON-Dateien) und verschlüsselten Payloads zu unterscheiden - im Gegensatz zu OilBooster, das Dateierweiterungen für diese Unterscheidung verwendet. Nachdem eine Datei lokal verarbeitet wurde, löscht ODAgent das Original über die OneDrive-API aus dem OneDrive-Remoteverzeichnis.
Wenn es sich bei der heruntergeladenen Datei um eine JSON-Datei handelt, analysiert ODAgent die Argumente a1
(Befehls-ID), a2
(verschlüsselter Backdoor-Befehl) und a3
(geheim). Zunächst wird der Sitzungsschlüssel durch XOR-Verknüpfung des angegebenen Geheimnisses mit dem hartcodierten Wert 15a49w@]
abgeleitet. Anschließend wird der Backdoor-Befehl mit diesem Sitzungsschlüssel base64-dekodiert und XOR-entschlüsselt. In Tabelle 3 sind alle von ODAgent unterstützten Backdoor-Befehle aufgeführt.
Tabelle 3. Von ODAgent unterstützte Backdoor-Befehle
Backdoor command |
Description |
odt> |
Returns the path to the current working directory. |
dly><delaytime> |
Configures the number of seconds to wait after each connection to <delaytime>. |
<commandline> |
Executes the specified <commandline> via the native API and returns the command output. |
Andere (Nicht-JSON-)Dateien, die von dem freigegebenen OneDrive-Konto heruntergeladen werden, sind Dateien und zusätzliche Payloads, die beide verschlüsselt sind. ODAgent XOR entschlüsselt diese Dateien mit dem hartcodierten Schlüssel 15a49w@]
und legt sie im lokalen Verzeichnis <currentdir>\o
unter demselben Dateinamen ab. Wenn die ursprüngliche Datei eine .c
-Erweiterung hat, wird ihr Inhalt ebenfalls mit gzip dekomprimiert (und die Erweiterung wird dann aus dem Dateinamen entfernt).
Am Ende jeder Verbindung lädt ODAgent den Inhalt des lokalen Verzeichnisses <currentdir>\i
in das Verzeichnis <victimID>/i
auf dem freigegebenen OneDrive-Konto hoch, wobei die ursprünglichen Dateinamen mit der hinzugefügten .c
-Erweiterung erhalten bleiben.
Schlussfolgerung
Im Laufe des Jahres 2022 entwickelte OilRig eine Reihe neuer Downloader, die alle eine Reihe legitimer Cloud-Speicher und Cloud-basierter E-Mail-Dienste als C&C- und Exfiltrationskanäle nutzten. Diese Downloader wurden ausschließlich gegen Ziele in Israel eingesetzt - oft gegen dieselben Ziele innerhalb weniger Monate. Da alle diese Ziele zuvor von anderen OilRig-Tools angegriffen wurden, kommen wir zu dem Schluss, dass OilRig diese Klasse von leichtgewichtigen, aber effektiven Downloadern als Mittel der Wahl einsetzt, um den Zugang zu interessanten Netzwerken aufrechtzuerhalten.
Diese Downloader weisen Ähnlichkeiten mit den Backdoors MrPerfectionManager und PowerExchange auf, die erst kürzlich zum OilRig-Toolset hinzugefügt wurden und E-Mail-basierte C&C-Protokolle verwenden - mit dem Unterschied, dass SC5k, OilBooster, ODAgent und OilCheck nicht die interne Infrastruktur des Opfers, sondern vom Angreifer kontrollierte Cloud-Service-Konten verwenden. All diese Aktivitäten bestätigen, dass für die C&C-Kommunikation zunehmend auf legitime Cloud-Service-Anbieter ausgewichen wird, um die bösartige Kommunikation zu verbergen und die Netzwerkinfrastruktur der Gruppe zu verschleiern.
Wie der Rest des OilRig-Toolsets sind auch diese Downloader nicht besonders ausgefeilt und sind auf dem System unnötig auffällig. Die kontinuierliche Entwicklung und das Testen neuer Varianten, das Experimentieren mit verschiedenen Cloud-Diensten und unterschiedlichen Programmiersprachen sowie das Bestreben, dieselben Ziele immer wieder zu kompromittieren, machen OilRig jedoch zu einer Gruppe, die man im Auge behalten sollte.
Wenn Sie Fragen zu unserer auf WeLiveSecurity veröffentlichten Forschung haben, kontaktieren Sie uns bitte unter threatintel@eset.com.
ESET Research bietet private APT Intelligence Reports und Datenfeeds an. Wenn Sie Fragen zu diesem Service haben, besuchen Sie die ESET Threat Intelligence Seite.
IoCs
Dateien
SHA-1 |
Filename |
Detection |
Description |
0F164894DC7D8256B66D0EBAA7AFEDCF5462F881 |
CCLibrary.exe |
MSIL/OilRig.A |
OilRig downloader - SC5k v1. |
2236D4DCF68C65A822FF0A2AD48D4DF99761AD07 |
acrotray.exe |
MSIL/OilRig.D |
OilRig downloader - SC5k v1. |
35E0E78EC35B68D3EE1805EECEEA352C5FE62EB6 |
mscom.exe |
MSIL/OilRig.D |
OilRig downloader - SC5k v1. |
51B6EC5DE852025F63740826B8EDF1C8D22F9261 |
CCLibrary.exe |
MSIL/OilRig.A |
OilRig downloader - SC5k v1. |
6001A008A3D3A0C672E80960387F4B10C0A7BD9B |
acrotray.exe |
MSIL/OilRig.D |
OilRig downloader - SC5k v1. |
7AD4DCDA1C65ACCC9EF1E168162DE7559D2FDF60 |
AdobeCE.exe |
MSIL/OilRig.D |
OilRig downloader - SC5k v1. |
BA439D2FC3298675F197C8B17B79F34485271498 |
AGSService.exe |
MSIL/OilRig.D |
OilRig downloader - SC5k v1. |
BE9B6ACA8A175DF61F2C75932E029F19789FD7E3 |
CCXProcess.exe |
MSIL/OilRig.A |
OilRig downloader - SC5k v1. |
C04F874430C261AABD413F27953D30303C382953 |
AdobeCE.exe |
MSIL/OilRig.A |
OilRig downloader - SC5k v1. |
C225E0B256EDB9A2EA919BACC62F29319DE6CB11 |
mscom.exe |
MSIL/OilRig.A |
OilRig downloader - SC5k v1. |
E78830384FF14A58DF36303602BC9A2C0334A2A4 |
armsvc.exe |
MSIL/OilRig.D |
OilRig downloader - SC5k v1. |
EA8C3E9F418DCF92412EB01FCDCDC81FDD591BF1 |
node.exe |
MSIL/OilRig.D |
OilRig downloader - SC5k v1. |
1B2FEDD5F2A37A0152231AE4099A13C8D4B73C9E |
consoleapp.exe |
Win64/OilBooster.A |
OilRig downloader - OilBooster. |
3BF19AE7FB24FCE2509623E7E0D03B5A872456D4 |
owa.service.exe |
MSIL/OilRig.D |
OilRig downloader - SC5k v2. |
AEF3140CD0EE6F49BFCC41F086B7051908B91BDD |
owa.service.exe |
MSIL/OilRig.D |
OilRig downloader - SC5k v2. |
A56622A6EF926568D0BDD56FEDBFF14BD218AD37 |
owa.service.exe |
MSIL/OilRig.D |
OilRig downloader - SC5k v2. |
AAE958960657C52B848A7377B170886A34F4AE99 |
LinkSync.exe |
MSIL/OilRig.F |
OilRig downloader - SC5k v3. |
8D84D32DF5768B0D4D2AB8B1327C43F17F182001 |
AppLoader.exe |
MSIL/OilRig.M |
OilRig downloader - OilCheck. |
DDF0B7B509B240AAB6D4AB096284A21D9A3CB910 |
CheckUpdate.exe |
MSIL/OilRig.M |
OilRig downloader - OilCheck. |
7E498B3366F54E936CB0AF767BFC3D1F92D80687 |
ODAgent.exe |
MSIL/OilRig.B |
OilRig downloader - ODAgent. |
A97F4B4519947785F66285B546E13E52661A6E6F |
N/A |
MSIL/OilRig.N |
Help utility used by OilRig's OilCheck downloader - CmEx. |
Netzwerk
IP |
Domain |
Hosting provider |
First seen |
Details |
188.114.96[.]2 |
host1[.]com |
Cloudflare, Inc. |
2017-11-30 |
A legitimate, likely compromised website misused by OilRig as a fallback C&C server. |
MITRE ATT&CK-Techniken
Diese Tabelle wurde mit der Version 14 des MITRE ATT&CK Frameworks erstellt.
Tactic |
ID |
Name |
Description |
Resource Development |
Acquire Infrastructure: Domains |
OilRig has registered a domain for use in C&C communications. |
|
Acquire Infrastructure: Server |
OilRig has acquired a server to be used as a backup channel for the OilBooster downloader. |
||
Acquire Infrastructure: Web Services |
OilRig has set up Microsoft Office 365 OneDrive and Outlook accounts, and possibly other Exchange accounts for use in C&C communications. |
||
Develop Capabilities: Malware |
OilRig has developed a variety of custom downloaders for use in its operations: SC5k versions, OilCheck, ODAgent, and OilBooster. |
||
Establish Accounts: Cloud Accounts |
OilRig operators have created new OneDrive accounts for use in their C&C communications. |
||
Establish Accounts: Email Accounts |
OilRig operators have registered new Outlook, and possibly other, email addresses for use in their C&C communications. |
||
Stage Capabilities |
OilRig operators have staged malicious components and backdoor commands in legitimate Microsoft Office 365 OneDrive and Outlook, and other Microsoft Exchange accounts. |
||
Execution |
Command and Scripting Interpreter: Windows Command Shell |
SC5k v1 and v2 use cmd.exe to execute commands on the compromised host. |
|
Native API |
OilBooster uses the CreateProcessW API functions for execution. |
||
Defense Evasion |
Deobfuscate/Decode Files or Information |
OilRig’s downloaders use string stacking to obfuscate embedded strings, and the XOR cipher to encrypt backdoor commands and payloads. |
|
Execution Guardrails |
OilRig’s OilBooster requires an arbitrary command line argument to execute the malicious payload. |
||
Hide Artifacts: Hidden Window |
Upon execution, OilBooster hides its console window. |
||
Indicator Removal: File Deletion |
OilRig’s downloaders delete local files after a successful exfiltration, and delete files or email drafts from the remote cloud service account after these have been processed on the compromised system. |
||
Indirect Command Execution |
SC5k v3 and OilCheck use custom command interpreters to execute files and commands on the compromised system. |
||
Masquerading: Match Legitimate Name or Location |
OilBooster mimics legitimate paths. |
||
Obfuscated Files or Information |
OilRig has used various methods to obfuscate strings and payloads embedded in its downloaders. |
||
Discovery |
System Information Discovery |
OilRig’s downloaders obtain the compromised computer name. |
|
System Owner/User Discovery |
OilRig’s downloaders obtain the victim’s username. |
||
Collection |
Archive Collected Data: Archive via Custom Method |
OilRig’s downloaders gzip compress data before exfiltration. |
|
Data Staged: Local Data Staging |
OilRig’s downloaders create central staging directories for use by other OilRig tools and commands. |
||
Command and Control |
Data Encoding: Standard Encoding |
OilRig’s downloaders base64 decode data before sending it to the C&C server. |
|
Encrypted Channel: Symmetric Cryptography |
OilRig’s downloaders use the XOR cipher to encrypt data in C&C communication. |
||
Fallback Channels |
OilBooster can use a secondary channel to obtain a new refresh token to access the shared OneDrive account. |
||
Ingress Tool Transfer |
OilRig’s downloaders have the capability to download additional files from the C&C server for local execution. |
||
Web Service: Bidirectional Communication |
OilRig’s downloaders use legitimate cloud service providers for C&C communication. |
||
Exfiltration |
Automated Exfiltration |
OilRig’s downloaders automatically exfiltrate staged files to the C&C server. |
|
Exfiltration Over C2 Channel |
OilRig’s downloaders use their C&C channels for exfiltration. |
||
Exfiltration Over Web Service: Exfiltration to Cloud Storage |
OilBooster and ODAgent exfiltrate data to shared OneDrive accounts. |
||
Exfiltration Over Web Service |
SC5k and OilCheck exfiltrate data to shared Exchange and Outlook accounts. |