SOC Prime Bias: Hoch

24 Jun 2026 19:37 UTC

PureRAT-Variante im KI-Videoplayer entdeckt

Author Photo
SOC Prime Team linkedin icon Folgen
PureRAT-Variante im KI-Videoplayer entdeckt
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

Eine Malware-Kampagne verwendet einen gefälschten Google Drive-Theme-Videodownloader, um eine mehrstufige Ausführungskette zu starten. Die Infektion bewegt sich von einem Python-basierten Loader zu Shellcode und dann zu einer geschützten .NET-Assembly, die als PureRAT identifiziert wurde. Die Malware verlässt sich auf starke Verschleierung, benutzerdefinierte Verschlüsselung und authentifizierte WebSocket-Kommunikation, um den Command-and-Control-Verkehr zu verwalten.

Untersuchung

Die Untersuchung analysierte einen gestaffelten Ausführungsablauf, der mit einem Python-Bytecode-Loader begann. Forscher beobachteten Base85-Dekodierung, zlib Dekomprimierung und Shellcode-Injektion durch VirtualAlloc. Weitere Analysen enthüllten einen stark geschützten .NET-Loader, Ykzrh/smveo-csharp-agent.exe, der Virtualisierung und Laufzeitrekonstruktion verwendete, um Analysen zu erschweren.

Minderung

Benutzer sollten gewarnt werden, keine Dateien von inoffiziellen oder verdächtigen Video-Theme-Ködern herunterzuladen. Organisationen sollten die unautorisierte Ausführung von Python und ungewöhnliches Verhalten von .NET-Assemblies in lokalen Anwendungsdatendateien überwachen. Eine starke Anwendungssperrliste und die Überwachung verdächtiger Änderungen an Run-Schlüsseln können ebenfalls das Risiko einer Kompromittierung vermindern.

Reaktion

Wenn diese Aktivität festgestellt wird, sollten betroffene Endpunkte sofort isoliert werden, um weiteren WebSocket-basierten Command-and-Control-Verkehr zu unterbrechen. Ermittler sollten Speicherforensik durchführen, um die entschlüsselte .NET-Nutzlast zu erfassen und das Ausmaß der Infektion zu bestimmen. Netzprotokolle sollten auch auf Verbindungen zur smveo.com -Infrastruktur überprüft werden, und alle möglicherweise kompromittierten Anmeldeinformationen sollten geändert werden.

graph TB %% Class Definitions Section classDef action fill:#99ccff classDef malware fill:#ff9999 classDef persistence fill:#99ff99 classDef obfuscation fill:#ffff99 classDef tool fill:#cccccc %% Node definitions act_user_exec[„<b>Aktion</b> – <b> T1204 Benutzer Ausführung</b><br/>Das Opfer interagiert mit einem Köder<br/>getarnt als gefälschter Google Drive<br/> oder SMVEO-Videodownload.“] class act_user_exec action act_drive_by[„<b>Aktion</b> – <b> T1189 Drive-by Kompromittierung</b><br/>Benutzer lädt bösartige Datei herunter:<br/>DriveVideoSetup-x64-0.1.0.exe.“] class act_drive_by action mal_setup[„<b>Malware</b> – <b>Erstinstallierte Datei</b><br/>Datei: DriveVideoSetup-x64-0.1.0.exe<br/>Etabliert Persistenz und<br/>startet die Deobfuskationskette.“] class mal_setup malware per_registry[„<b>Aktion</b> – <b> T1547.014 Persistenz</b><br/>Ändert Registrierungsschlüssel:<br/>HKCUSoftwareMicrosoftWindowsCurrentVersionRun“] class per_registry persistence act_deobf[„<b>Aktion</b> – <b> T1140 Deobfuskieren/Dekodieren von Dateien</b><br/>Komplexe Python-Stufen, die<br/>Base85-Dekodierung, zlib-Dekompression,<br/>und marshal.loads. nutzen.“] class act_deobf obfuscation tool_donut[„<b>Werkzeug</b> – <b>DonutLoader</b><br/>Mechanismus zur Ausführung<br/>von Shellcode im Speicher.“] class tool_donut tool mal_ykzrh[„<b>Malware</b> – <b>Ykzrh.exe</b><br/>Hochgeschützter .NET-Loader<br/>mit Virtualisierung.“] class mal_ykzrh malware act_packing[„<b>Aktion</b> – <b> T1027.002 Software Verpackung</b><br/>Verwendet benutzerdefinierte Bytecode-Interpreter<br/>und Virtualisierung zur Verschleierung der Kernlogik.“] class act_packing obfuscation mal_purerat[„<b>Malware</b> – <b>PureRAT</b><br/>Kernfunktionalität des Angriffs<br/>versteckt durch Obfuskation.“] class mal_purerat malware act_cert_steal[„<b>Aktion</b> – <b> T1649 Diebstahl von Authentifikationszertifikaten oder deren Fälschung</b><br/>Generiert client.crt und client.key<br/>unter %LOCALAPPDATA%SMVEO.“] class act_cert_steal action comm_c2[„<b>Aktion</b> – <b>C2 Kommunikation</b><br/>Authentifizierte WebSocket-Kommunikation<br/>zu agent.sm-veo.com.“] class comm_c2 action %% Connections act_user_exec –>|führt zu| act_drive_by act_drive_by –>|führt aus| mal_setup mal_setup –>|führt aus| per_registry mal_setup –>|initiiert| act_deobf act_deobf –>|führt zu| tool_donut tool_donut –>|bereitstellt| mal_ykzrh mal_ykzrh –>|nutzt aus| act_packing act_packing –>|verbirgt| mal_purerat mal_purerat –>|führt aus| act_cert_steal act_cert_steal –>|ermöglicht| comm_c2

Angriff Fluss

Simulationsausführung

Voraussetzung: Der Telemetrie- & Basislinienstarter-Check muss bestanden haben.

Begründung: Dieser Abschnitt beschreibt die genaue Ausführung der gegnerischen Technik (TTP), die darauf abzielt, die Erkennungsregel auszulösen. Die Befehle und die Schilderung MÜSSEN direkt die identifizierten TTPs widerspiegeln und darauf abzielen, die genaue Telemetrie zu erzeugen, die von der Erkennungslogik erwartet wird. Abstrakte oder nicht verwandte Beispiele führen zu Fehldiagnosen.

  • Angriffshergang & Befehle: Der Gegner hat erfolgreich eine PureRAT-Variante bereitgestellt. Um die Kontrolle zu behalten, etabliert die Malware einen persistente Command and Control (C2) Kanal. Anstelle von standardmäßigem HTTP-Polling wird eine authentifizierte WebSocket-Verbindung genutzt, um traditionelle Web-Proxy-Mechanismen zu umgehen, die möglicherweise langlebige WebSocket-Streams nicht inspizieren. Das Ziel des Angreifers ist es, einen stabilen, latenzarmen Tunnel zu agent.sm-veo.com über Port 8443zu schaffen. Diese Simulation wird ein PowerShell-Skript verwenden, um dieses Netzwerkverhalten zu imitieren, indem eine Verbindung zur bösartigen URI initiiert wird.

  • Regressionstest-Skript:

    # Simulation der PureRAT-Variante C2 via WebSocket
    # Ziel: Auslösen der Erkennungsregel über Ziel-Domain oder URL.
    
    $targetUrl = "wss://agent.sm-veo.com:8443/v1/ws"
    $targetDomain = "agent.sm-veo.com"
    
    Write-Host "[+] Starte PureRAT C2 Simulation..." -ForegroundColor Cyan
    
    try {
        Write-Host "[+] Versuche, WebSocket-Verbindung zu $targetUrl herzustellen"
        # Verwenden eines .NET WebSocket-Clients, um das spezifische Protokollverhalten zu simulieren
        $ws = New-Object System.Net.WebSockets.ClientWebSocket
        $uri = New-Object System.Uri($targetUrl)
        $ct = New-Object System.Threading.CancellationTokenSource
    
        # Wir benötigen keinen erfolgreichen Handshake, um die Netzwerktelemetrie auszulösen,
        # nur den Versuch, eine Verbindung zum angegebenen Ziel herzustellen.
        $task = $ws.ConnectAsync($uri, $ct.Token)
    
        # Kurze Wartezeit, damit der Verbindungsversuch Telemetrie erzeugt
        Start-Sleep -Seconds 5
        Write-Host "[!] Verbindungsversuch abgeschlossen. Prüfen Sie das SIEM auf Telemetrie." -ForegroundColor Green
    }
    catch {
        Write-Host "[!] Verbindung fehlgeschlagen (erwartet, falls Domain gesenkt/nicht real), aber es sollte Telemetrie erzeugt worden sein." -ForegroundColor Yellow
    }
    finally {
        if ($ws) { $ws.Dispose() }
    }
  • Bereinigungsbefehle:

    # Keine persistenten Dateien oder Registrierungsschlüssel wurden von diesem spezifischen Simulationsskript geändert.
    # Falls Persistenz (T1547.001) simuliert wurde, verwenden Sie Folgendes:
    # Remove-ItemProperty -Path 'HKCU:SoftwareMicrosoftWindowsCurrentVersionRun' -Name 'PureRAT_Update'
    Write-Host "[+] Bereinigung abgeschlossen. Keine Artefakte vom Netzwerksimulation hinterlassen." -ForegroundColor Cyan