BITSLOTH auf einen Blick
BITSLOTH ist eine neu entdeckte Windows-Backdoor, die den Background Intelligent Transfer Service (BITS) als Befehls- und Steuerungsmechanismus nutzt. BITSLOTH wurde Anfang des Sommers bei einem Eindringen in die Region LATAM entdeckt. Diese Malware wurde unseres Wissens nach nicht öffentlich dokumentiert, und obwohl nicht klar ist, wer hinter der Malware steckt, befindet sie sich seit mehreren Jahren in der Entwicklung, basierend auf der Verfolgung verschiedener Versionen, die auf VirusTotal hochgeladen wurden.
Die aktuellste Iteration der Backdoor zum Zeitpunkt dieser Veröffentlichung verfügt über 35 Handler-Funktionen, einschließlich Keylogging und Screen-Capture-Funktionen. Darüber hinaus enthält BITSLOTH viele verschiedene Features für die Ermittlung, Enumeration und Befehlszeilenausführung. Basierend auf diesen Fähigkeiten bewerten wir, dass dieses Tool für das Sammeln von Daten von Opfern entwickelt wurde.
Wichtigste Erkenntnisse
- BITSLOTH ist eine neu entdeckte Windows-Backdoor
- BITSLOTH verwendet eine integrierte Microsoft-Funktion, den Background Intelligent Transfer Service (BITS) für die Befehls- und Steuerungskommunikation
- BITSLOTH verfügt über zahlreiche Befehlshandler, die für die Ermittlung/Aufzählung, Ausführung und Sammlung verwendet werden
- Die Hintertür enthält Protokollierungsfunktionen und Zeichenfolgen, die damit übereinstimmen, dass die Autoren chinesische Muttersprachler sind
Discovery
Unser Team beobachtete, dass BITSLOTH am 25. Juni während der REF8747 auf einer Serverumgebung installiert war, dies war ein Eindringen in das Außenministerium einer südamerikanischen Regierung. Das Eindringen wurde auf die PSEXEC-Ausführung auf einem der infizierten Endpunkte zurückgeführt. Die Angreifer verwendeten für die meisten ihrer Operationen eine Reihe von öffentlich zugänglichen Tools, mit Ausnahme von BITSLOTH.
Einer der primären Mechanismen der Ausführung war ein Shellcode-Ladeprojekt namens RINGQ. Ähnlich wie DONUTLOADER konvertiert RINGQ jede ausführbare Windows-Datei und generiert benutzerdefinierten Shellcode, der in einer Datei ( main.txt platziert wird. Dieser Shellcode wird entschlüsselt und im Arbeitsspeicher ausgeführt. Diese Technik wird verwendet, um Abwehrmaßnahmen zu umgehen, die auf Hash-Blocklisten oder statischen Signaturen in einigen Anti-Malware-Produkten basieren.
Wir haben beobachtet, dass RINGQ verwendet wird, um die IOX-Portweiterleitung zu laden. Hinweis: Der Schlüssel in der Abbildung unten ist die Hex-Umwandlung von "whoami".
Darüber hinaus nutzten die Angreifer das Dienstprogramm STOWAWAY, um verschlüsselten Datenverkehr über HTTP an ihre C2-Server weiterzuleiten. Proxy-Tools, Tunneler und Redirectors werden häufig bei Eindringlingen verwendet, um den Angreifer zu verbergen, der für ein Eindringen verantwortlich ist. Diese Tools bieten Angreifern verschiedene Funktionen, darunter die Möglichkeit, interne Netzwerkkontrollen zu umgehen, Terminalschnittstellen, Verschlüsselungsfunktionen sowie Dateiübertragungsoptionen bereitzustellen.
Nach dem ersten Zugriff bewegte sich der Akteur seitlich und legte BITSLOTH in Form einer DLL (flengine.dll
) im ProgramData-Verzeichnis ab. Der Schauspieler führte daraufhin das Musikprogramm FL Studio (fl.exe
) aus. Basierend auf der beobachteten Aufrufliste, die mit der Selbstinjektionswarnung verbunden ist, haben wir bestätigt, dass der Bedrohungsakteur eine herkömmliche Sideloading-Technik mit einer signierten Version von FL Studio verwendet hat.
c:\windows\syswow64\ntdll.dll!0x770841AC
c:\windows\syswow64\ntdll.dll!0x7709D287
c:\windows\syswow64\kernelbase.dll!0x76ED435F
c:\windows\syswow64\kernelbase.dll!0x76ED42EF
Unbacked!0x14EAB23
Unbacked!0x14EA8B6
c:\programdata\pl studio\flengine.dll!0x74AD2F2E
c:\programdata\pl studio\fl.exe!0xDB3985
c:\programdata\pl studio\fl.exe!0xDB3E5E
c:\programdata\pl studio\fl.exe!0xDB4D3F
c:\windows\syswow64\kernel32.dll!0x76B267F9
c:\windows\syswow64\ntdll.dll!0x77077F4D
c:\windows\syswow64\ntdll.dll!0x77077F1B
Diese Aufrufliste wurde zusammen mit einer Prozessinjektionswarnung generiert und ermöglichte es den Forschern, eine In-Memory-DLL zu extrahieren, die mit RWX-Seitenschutz (Read/Write/Execute) festgelegt wurde.
BITSLOTH overview
Bei unserer Analyse fanden wir mehrere ältere BITSLOTH-Proben, die eine Aufzeichnung der Entwicklung seit Dezember 2021 belegen. Im Rahmen dieses Projekts wählte der Malware-Entwickler eine bemerkenswerte Terminologie – er bezog sich auf BITSLOTH als Slaver
-Komponente und den Command-and-Control-Server als Master
Komponente. Nachfolgend finden Sie ein Beispiel für einen der PDB-Dateipfade, die mit BITSLOTH verknüpft sind und dies darstellen:
BITSLOTH verwendet keine Verschleierung des Kontrollflusses oder irgendeine Art von Zeichenfolgenverschlüsselung.
Sowohl ältere als auch neuere Beispiele enthalten Zeichenfolgen, die für Protokollierungs- und Debugzwecke verwendet werden. Als Beispiel gibt es beim Start eine Zeichenfolge, auf die im schreibgeschützten Abschnitt verwiesen wird (.rdata
).
Diese Zeichenfolge für vereinfachtes Chinesisch lässt sich wie folgt übersetzen:
Note: There is already a program running, do not run it again…
Diese kleinen Schnipsel, die in BITSLOTH enthalten sind, helfen dabei, Licht in die Entwicklung und Priorisierung von Funktionen zu bringen, zusammen mit dem, was wie Operatoranweisungen aussieht. In der neuesten Version wurde vom Entwickler eine neue Planungskomponente hinzugefügt, um bestimmte Zeiten zu steuern, zu denen BITSLOTH in einer Opferumgebung ausgeführt werden soll. Dies ist eine Funktion, die wir bei anderen modernen Malware-Familien wie EAGERBEE beobachtet haben.
BITSLOTH-Code-Analyse
BITSLOTH ist eine Hintertür mit vielen verschiedenen Funktionen, darunter:
- Ausführen und Ausführen von Befehlen
- Hochladen und Herunterladen von Dateien
- Ausführen von Enumeration und Ermittlung
- Sammeln sensibler Daten durch Keylogging und Screen-Capturing
Mutex
BITSLOTH verwendet einen hartcodierten Mutex (Global\d5ffff77ff77adad657658
) innerhalb jedes Beispiels, um sicherzustellen, dass jeweils nur eine Instanz ausgeführt wird.
Kommunikation
BITSLOTH verwendet eine traditionelle Client/Server-Architektur, der Entwickler bezeichnet den Client als Slaver
Komponente und den Command-and-Control-Server (C2) als Master
Komponente. Der Entwickler bettet die IP/den Port des C2-Servers in jedes Beispiel mit einer von vorne geladenen Zeichenfolge (rrrr_url
) ein. Diese Zeichenfolge fungiert als Schlüssel zur Identifizierung der C2-Konfiguration an sich, während sie im Speicher ausgeführt wird, und wird beim Aktualisieren des C2-Servers verwendet.
Im Folgenden finden Sie die Konfigurationen in mehreren Beispielen, die unser Team beobachtet hat: Der Bedrohungsakteur konfiguriert sowohl interne als auch externe IP-Bereiche.
rrrr_url216.238.121[.]132:8443
rrrr_url192.168.1[.]125:8443
rrrr_url192.168.1[.]124:8443
rrrr_url45.116.13[.]178:443
Eines der definierenden Features von BITSLOTH ist die Verwendung des Background Intelligent Transfer Service (BITS) für C2. Obwohl diese Funktion entwickelt wurde, um die Netzwerkübertragung von Dateien zwischen zwei Computern zu erleichtern, wurde sie von mehreren staatlich geförderten Gruppen missbraucht und fliegt weiterhin unter dem Radar gegen Organisationen. Dieses Medium ist für Angreifer attraktiv, da viele Unternehmen immer noch Schwierigkeiten haben, den BITS-Netzwerkverkehr zu überwachen und ungewöhnliche BITS-Aufträge zu erkennen.
Windows verfügt über eine Systemverwaltungsfunktion namens Background Intelligent Transfer Service (BITS), die das Herunterladen und Hochladen von Dateien auf HTTP-Webserver oder SMB-Freigaben ermöglicht. Der BITS-Dienst verwendet während des Dateiübertragungsprozesses mehrere Funktionen, z. B. die Möglichkeit, Übertragungen anzuhalten/fortzusetzen, Netzwerkunterbrechungen zu behandeln usw. BITS-Datenverkehr wird in der Regel mit Softwareupdates in Verbindung gebracht und daher fälschlicherweise als vertrauenswürdig impliziert. Vielen Unternehmen fehlt es an Einblick in den BITS-Netzwerkverkehr, was dies zu einem attraktiven Ziel macht.
Die BITS-API wird über das Component Object Model (COM) von Windows mithilfe der IBackgroundCopyManager-Schnittstelle verfügbar gemacht. Diese Schnittstelle bietet Funktionen zum Erstellen neuer Aufträge, zum Auflisten vorhandener Aufträge in der Übertragungswarteschlange und zum Zugreifen auf einen bestimmten Auftrag aus einer Übertragungswarteschlange.
Nach der Initialisierung bricht BITSLOTH alle vorhandenen BITS-Aufträge auf dem Opfercomputer ab, die den folgenden Anzeigenamen entsprechen:
WU Client Download
WU Client Upload
WU Client Upload R
Diese Namen werden vom Entwickler verwendet, um die verschiedenen BITS-Übertragungsaufträge einzufügen und ihnen den jeweiligen BITS-Auftragstypen zuzuordnen. Durch das Abbrechen vorhandener Aufträge kann die Ausführung der Malware in einem sauberen Zustand ausgeführt werden.
Im Folgenden finden Sie die Microsoft-Definitionen, die dem Typ des BITS-Auftrags entsprechen:
- BG_JOB_TYPE_DOWNLOAD – Gibt an, dass der Auftrag Dateien auf den Client herunterlädt.
- BG_JOB_TYPE_UPLOAD – Gibt an, dass der Auftrag eine Datei auf den Server hochlädt.
- BG_JOB_TYPE_UPLOAD_REPLY – Gibt an, dass der Auftrag eine Datei auf den Server hochlädt und eine Antwortdatei von der Serveranwendung empfängt.
Nach dem Abbrechen vorhandener Aufträge werden die MAC-Adresse und die Betriebssysteminformationen abgerufen und in globalen Variablen abgelegt. Ein neuer Thread wird erstellt, in dem die Autostart-Funktion konfiguriert wird. Innerhalb dieses Threads wird ein neuer BITS-Downloadauftrag mit dem Namen (Microsoft Windows
) erstellt.
Dieser Download-Job legt die Ziel-URL auf http://updater.microsoft[.]com/index.aspx
fest. Obwohl diese Domäne nicht routingfähig ist, maskiert BITSLOTH diesen BITS-Auftrag mit einer harmlos aussehenden Domäne als Tarnung und verwendet dann SetNotifyCmdLine , um die Malware auszuführen, wenn der Übertragungsstatus geändert wird.
Interessanterweise ermöglichte uns dieses einzigartige Toolmark, auf zusätzliche Stichproben umzuschwenken, die zeigen, dass diese Familie bereits seit mehreren Jahren im Umlauf ist.
Zu diesem Zeitpunkt wurde die Malware nun mit Persistenz über einen BITS-Job namens Microsoft Windows
konfiguriert. Unten sehen Sie einen Screenshot der Konfiguration dieses Auftrags, der die Benachrichtigungsbefehlszeile zeigt, die auf den BITSLOTH-Speicherort (C:\ProgramData\Media\setup_wm.exe
) festgelegt ist.
Sobald BITSLOTH aktiv wird, beginnt es, Anweisungen vom C2-Server mithilfe des WU Client Download
-Jobs anzufordern. Diese Anforderungs-URL wird generiert, indem die MAC-Adresse mit einer hartcodierten Zeichenkette (wu.htm
) kombiniert wird. Nachfolgend finden Sie eine Beispiel-URL:
https://192.168.182.130/00-0C-29-0E-29-87/wu.htm
Als Antwort auf diese Anfrage erhält die Malware dann eine 12-Byte-Struktur vom C2-Server, die eine eindeutige ID für den Auftrag, eine Befehls-ID für den Handler und ein Antworttoken enthält. Während dieses Austauschs von Dateiübertragungen werden temporäre Dateien vom Opfercomputer als Platzhalter verwendet, um die übertragenen Daten hin und her zu speichern. BITSLOTH verwendet einen Dateinamen, der mit Zeichen (wm
) beginnt, an die zufällige Zeichen angehängt werden.
Funktionalität von Befehlen
BITSLOTH verwendet einen Befehlshandler mit 35 Funktionen, um bestimmte Aktionen zu verarbeiten, die auf dem Opfercomputer ausgeführt werden sollen. Die Malware kann optional mit HTTP oder HTTPS konfiguriert werden und verwendet ein fest codiertes Single-Byte-XOR (0x2
), um die eingehenden Anweisungen vom C2-Server zu verschleiern. Die ausgehenden Anfragen, die die gesammelten Opferdaten enthalten, sind nicht durch die Malware selbst geschützt und werden im Klartext gesendet.
Um schnell voranzukommen, nutzte unser Team eine hilfreiche Python-Implementierung eines BITS-Servers, die von SafeBreach Labs veröffentlicht wurde. Durch das Festlegen der C2-IP auf unsere Loopback-Adresse innerhalb einer VM konnten wir uns einen Überblick über den Netzwerkverkehr verschaffen.
Die Handler verhalten sich alle nach einem ähnlichen Ansatz: Sie führen eine primäre Funktion aus und schreiben dann die vom Handler zurückgegebenen Daten in eine lokale temporäre Datei. Diese temporären Dateien werden dann einem BITS-Upload-Job mit dem Namen WU Client Upload
zugeordnet. Jeder Handler verwendet seine eigene Zeichenfolgenformatierung, um eine eindeutige Ziel-URL zu erstellen. Jeder Dateiname am Ende der URL verwendet einen einzelnen Buchstaben, um den Typ der vom Host gesammelten Daten darzustellen, z. B. P.bin
für Prozesse oder S.bin
für Dienste.
http://192.168.182.130/00-0C-29-0E-29-87/IF/P.bin
Im Folgenden sehen Sie einen Beispielscreenshot, der den Prozessaufzählungshandler mit der Zeichenfolgenformatierung zeigt und zeigt, wie diese Daten dann mit dem BITS-Uploadauftrag verknüpft werden.
Diese Verknüpfung mit den exfiltrierten Daten kann auch durch direktes Betrachten des BITS-Upload-Jobs beobachtet werden. In den folgenden Screenshots sehen wir die Ziel-URL (C2-Server) für den Upload und die temporäre Datei (wm9F0C.tmp
), die mit dem Job verknüpft ist.
Wenn wir uns die temporäre Datei ansehen, können wir die gesammelten Prozessinformationen vom Host des Opfers sehen.
Kurz nachdem der Upload-Job erstellt wurde, werden die Daten über eine BITS_POST Anforderung, die die erfassten Daten enthält, über das Netzwerk gesendet.
Tabelle für die Befehlsbehandlung
Befehls-ID | Beschreibung |
---|---|
0 | Erfassen laufender Prozesse über WTSEnumerateProcessesW |
1 | Abrufen von Windows-Diensten über EnumServicesStatusW |
2 | Abrufen von Systeminformationen über systeminfo Befehl |
3 | Abrufen aller Windows-Instanzen der obersten Ebene über EnumWindows |
5 | Sammeln von Dateilisten |
6 | Datei vom C2-Server herunterladen |
7 | Datei auf C2-Server hochladen |
10 | Beenden Sie sich selbst |
11 | Festlegen des Kommunikationsmodus auf HTTPS |
12 | Festlegen des Kommunikationsmodus auf HTTP |
13 | Entfernen der Persistenz |
14 | Neukonfigurieren der Persistenz |
15 | BITS-Downloadauftrag abbrechen (WU Client Download ) |
16 | Entfernen der Persistenz und Löschen sich selbst |
17 | Thread-Konfiguration |
18 | Duplikat des Handlers #2 |
19 | Datei basierend auf dem Dateipfad löschen |
20 | Ordner basierend auf dem Dateipfad löschen |
21 | Startet die Terminal-Shell mit stdin/stdout-Umleitung |
22 | Setzt den Terminal-Handler zurück (#21) |
23 | Führt den Windows-Strukturbefehl aus |
24 | Aktualisiert BITSLOTH, alte Version löschen |
25 | Fahren Sie den Computer über ExitWindowsExherunter |
26 | Starten Sie den Computer über ExitWindowsExneu |
27 | Melden Sie den Benutzer über ExitWindowsExvom Gerät ab |
28 | Beenden des Prozesses basierend auf der Prozesskennung (PID) |
29 | Ruft zusätzliche Informationen über msinfo32 Befehl ab |
30 | Ausführen einzelner Dateien über ShellExecuteW |
34 | Neues Verzeichnis über CreateDirectoryWerstellen |
41 | Hochladen von Daten auf den C2-Server |
42 | Sucht über capGetDriverDescriptionWnach Erfassungstreibern |
43 | Machen Sie Screenshots des Desktop-Computers des Opfers |
44 | Zeichnen Sie Tastenanschläge vom Opfercomputer auf |
45 | Beenden Sie die Aufnahme von Screenshots |
46 | Stoppen Sie die Keylogger-Funktionalität |
Backdoor-Funktionalität
BITSLOTH umfasst eine breite Palette von Post-Compromise-Funktionen, mit denen ein Angreifer in einer Opferumgebung agieren kann. Wir konzentrieren uns auf die wichtigeren Fähigkeiten, indem wir sie in verschiedene Kategorien gruppieren.
Discovery/enumeration
Ein Teil der BITSLOTH-Handler konzentriert sich auf das Abrufen und Auflisten von Daten von Opfercomputern. Dazu gehören:
- Abrufen von Prozessinformationen über WTSEnumerateProcessesW
- Sammeln von Windows-Diensten über EnumServicesStatusW
- Auflisten aller Windows auf oberster Ebene über EnumWindows mit einer Callback-Funktion
- Abrufen von Systeminformationen über Windows-Dienstprogramme wie
systeminfo
undmsinfo32
In vielen der Handler ist die Gebietsschemaversion so konfiguriert, dass sie chs
(Chinesisch – vereinfacht).
BITSLOTH verfügt über einige benutzerdefinierte Aufzählungsfunktionen, die mit dem Abrufen von Dateilisten und der Durchführung von Verzeichnisbaumsuchen verbunden sind. Der Dateiauflistungshandler verwendet einen benutzerdefinierten Parameter vom Operator, um auf bestimmte Ordnerspeicherorte von Interesse abzuzielen:
- GET_DESKDOP → CSIDL_DESKTOPDIRECTORY (Desktop)
- GET_BITBUCKET -> CSIDL_BITBUCKET (Papierkorb)
- GET_PERSONAl -> CSIDL_MYDOCUMENTS (Eigene Dokumente)
BITSLOTH bietet auch die Möglichkeit, mithilfe des Windows-Strukturdienstprogramms für jede Datei ganze Verzeichnis-/Dateilisten auf dem Computer zu sammeln. Dieser Handler durchläuft das Alphabet für jeden Laufwerksbuchstaben, wobei die Daten dann lokal in einer temporären Datei mit dem Namen aghzyxklg
gespeichert werden.
Die Baumdaten werden dann komprimiert und mit einer .ZIP Erweiterung an den C2-Server gesendet. Nachfolgend finden Sie ein Beispiel für die gesammelten Daten. Diese Daten können dabei helfen, vertrauliche Dateien zu lokalisieren oder mehr Kontext über die Zielumgebung bereitzustellen.
Erfassung
In Bezug auf die Sammlung gibt es einige Handler, die zum aktiven Sammeln von Informationen verwendet werden. Diese konzentrieren sich auf das Aufnehmen von Screenshots vom Desktop und das Ausführen von Keylogging-Funktionen.
BITSLOTH implementiert eine leichtgewichtige Funktion, die zur Identifizierung von Aufnahmegeräten verwendet wird, dies scheint eine Technik zu sein, um mithilfe der Windows-API (capGetDriverDescriptionW) nach einer Kamera zu suchen.
BITSLOTH hat die Fähigkeit, Screenshots basierend auf den vom Betreiber bereitgestellten Parametern zu erstellen. Bei der Eingabe dieser Funktion wird ein Trennzeichen (||
) verwendet, wobei der Operator die Anzahl der Sekunden des Erfassungsintervalls und die Erfassungsanzahl angibt. Die Bilder werden als BMP-Dateien mit einem fest codierten Namen ciakfjoab
gespeichert und mit dem DEFLATE-Algorithmus unter Verwendung eines .ZIP
Archivs komprimiert. Diese mit einem Zeitstempel versehenen gezippten Archive werden dann an den C2-Server gesendet.
Der Handler nutzt gängige Screenshot-APIs wie CreateCompatibleBitmap und BitBlt von Gdi32.dll
.
Zum Aufzeichnen von Tastenanschlägen verwendet BITSLOTH herkömmliche Techniken, indem Tastendrücke mit GetAsyncKeyState/GetKeyState überwacht werden. Der Handler verfügt über ein Argument für die Anzahl der Sekunden, die das Keylogging ausgeführt werden soll. Diese Daten werden ebenfalls in einer .ZIP
Datei komprimiert und ausgehend an den C2-Server gesendet.
Ausführung / Wartung
BITSLOTH verfügt über mehrere Funktionen rund um die Wartung und Dateiausführung sowie über Standard-Backdoor-Funktionen wie:
- Möglichkeit, Dateien eigenständig über ShellExecuteWauszuführen
- Windows-Terminal-Fähigkeit zum Ausführen von Befehlen und Zurücklesen von Daten über Pipes
- Erstellen von Verzeichnissen, Ausführen von Neustarts, Herunterfahren des Computers, Beenden von Prozessen
- Durchführen von Datei-Uploads und -Downloads zwischen C2-Servern
- Ändern der BITSLOTH-Konfiguration, z. B. Kommunikationsmodi, Aktualisieren der C2-URL, Deaktivieren von Keylogging-/Screenshot-Funktionen
BITSLOTH pivots
BITSLOTH scheint aktiv eingesetzt zu werden. Wir haben einen weiteren BITSLOTH C2-Server (15.235.132[.]67
) identifiziert, der denselben Port (8443
) mit demselben SSL-Zertifikat verwendet, das von unserem Eindringen verwendet wurde.
While it’s not exactly clear who’s behind BITSLOTH, there was a large amount of activity of VirusTotal uploads occurring on December 12, 2021. With around 67 uploads over 24 hours from one submitter (1fcc35ea
), we suspect someone linked to this project was validating detections, making modifications, and uploading different versions of BITSLOTH to VirusTotal. One sample was packed with VMProtect, others stripped of functionality, some uploads were debug builds, etc.
Seitdem ist viel Zeit vergangen, aber es ist interessant zu sehen, wie diese Familie bei einem kürzlichen Einbruch auftaucht. Was auch immer das Ziel hinter dieser Malware ist, es ist überraschend, dass diese Familie so viele Jahre lang unter dem Radar blieb.
REF 8747 über MITRE ATT&CK
Elastic verwendet das MITRE ATT&CK-Framework , um gängige Taktiken, Techniken und Verfahren zu dokumentieren, die von Advanced Persistent Threats gegen Unternehmensnetzwerke eingesetzt werden.
[h4] Taktik Taktik stellt das Warum einer Technik oder Untertechnik dar. Es ist das taktische Ziel des Gegners: der Grund für die Ausführung einer Aktion.
Techniken
Techniken stellen dar, wie ein Angreifer ein taktisches Ziel erreicht, indem er eine Aktion ausführt.
- BITS-Jobs
- Erkennung von Systeminformationen
- Hijack-Ausführungsablauf: DLL-Querladen
- Bildschirmaufnahme
- Eingabeerfassung: Keylogging
- Proxy
Erkennen von REF8747
Erkennung
Die folgenden Erkennungsregeln und Verhaltenspräventionsereignisse wurden während der Analyse dieses Intrusion-Sets beobachtet:
- Persistenz über BITS Job Notify Cmdline
- LSASS-Zugriffsversuch über PPL-Bypass
- LSASS-Zugriffsversuch von einer nicht signierten ausführbaren Datei
- Verdächtige Eltern-Kind-Beziehung
- Credential Access via Known Utilities (Zugriff mit Anmeldeinformationen über bekannte Hilfsprogramme)
- Shellcode-Injektion
YARA-Signaturen
- Windows.Hacktool.Mimikatz
- Windows.Trojan.BITSloth
- Windows.Hacktool.Iox
- Windows.Hacktool.Rubeus
- Windows.Hacktool.Certify
- Windows.Hacktool.RingQ
- Windows.Hacktool.GodPotato
- Multi.Hacktool.Stowaway
YARA
Elastic Security hat YARA-Regeln erstellt, um diese Aktivität zu identifizieren. Im Folgenden finden Sie YARA-Regeln zur Identifizierung von BITSLOTH:
rule Windows_Trojan_BITSLOTH_05fc3a0a {
meta:
author = "Elastic Security"
creation_date = "2024-07-16"
last_modified = "2024-07-18"
os = "Windows"
arch = "x86"
threat_name = "Windows.Trojan.BITSLOTH"
license = "Elastic License v2"
strings:
$str_1 = "/%s/index.htm?RspID=%d" wide fullword
$str_2 = "/%s/%08x.rpl" wide fullword
$str_3 = "/%s/wu.htm" wide fullword
$str_4 = "GET_DESKDOP" wide fullword
$str_5 = "http://updater.microsoft.com/index.aspx" wide fullword
$str_6 = "[U] update error..." wide fullword
$str_7 = "RMC_KERNEL ..." wide fullword
$seq_global_protocol_check = { 81 3D ?? ?? ?? ?? F9 03 00 00 B9 AC 0F 00 00 0F 46 C1 }
$seq_exit_windows = { 59 85 C0 0F 84 ?? ?? ?? ?? E9 ?? ?? ?? ?? 6A 02 EB ?? 56 EB }
condition:
2 of them
}
Beobachtungen
Alle Observables stehen auch im ECS- und STIX-Format in einem kombinierten Zip-Bundle zum Download zur Verfügung.
Die folgenden Observablen wurden in dieser Studie diskutiert.
Observable | Typ | Name | Referenz |
---|---|---|---|
4a4356faad620bf12ff53bcfac62e12eb67783bd22e66bf00a19a4c404bf45df | SHA-256 | s.dll | BITSLOTH |
dfb76bcf5a3e29225559ebbdae8bdd24f69262492eca2f99f7a9525628006d88 | SHA-256 | 125.exe | BITSLOTH |
4fb6dd11e723209d12b2d503a9fcf94d8fed6084aceca390ac0b7e7da1874f50 | SHA-256 | setup_wm.exe | BITSLOTH |
0944b17a4330e1c97600f62717d6bae7e4a4260604043f2390a14c8d76ef1507 | SHA-256 | 1242.exe | BITSLOTH |
0f9c0d9b77678d7360e492e00a7fa00af9b78331dc926b0747b07299b4e64afd | SHA-256 | setup_wm.exe | BITSLOTH (VMProtect) |
216.238.121[.]132 | IPv4-ADDR | BITSLOTH C2-Server | |
45.116.13[.]178 | IPv4-ADDR | BITSLOTH C2-Server | |
15.235.132[.]67 | IPv4-ADDR | BITSLOTH C2-Server | |
http ://updater.microsoft.com/index.aspx | BITSLOTH-Dateiindikator | ||
updater.microsoft.com | BITSLOTH-Dateiindikator |
Referenzen
In der obigen Studie wurde auf Folgendes Bezug genommen:
- https://github.com/SafeBreach-Labs/SimpleBITSServer/tree/master
- https://github.com/T4y1oR/RingQ
- https://github.com/EddieIvan01/iox
- https://github.com/ph4ntonn/Stowaway/
Über Elastic Security Labs
Elastic Security Labs ist der Threat-Intelligence-Zweig von Elastic Security, der sich der Schaffung positiver Veränderungen in der Bedrohungslandschaft verschrieben hat. Elastic Security Labs bietet öffentlich zugängliche Forschungsergebnisse zu neuen Bedrohungen mit einer Analyse der strategischen, operativen und taktischen Ziele von Angreifern und integriert diese Forschung dann mit den integrierten Erkennungs- und Reaktionsfunktionen von Elastic Security.
Folgen Sie Elastic Security Labs auf Twitter @elasticseclabs und sehen Sie sich unsere Forschungsergebnisse unter www.elastic.co/security-labs/ an.