SOC Prime Bias: Hoch

29 Jul 2026 06:34 UTC

MedusaHVNC stiehlt Live-Windows-Sitzungen durch einen versteckten Desktop

Author Photo
SOC Prime Team linkedin icon Folgen
MedusaHVNC stiehlt Live-Windows-Sitzungen durch einen versteckten Desktop
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

MedusaHVNC ist ein neu identifizierter Remote Access Trojaner (RAT), der über ein Malware-as-a-Service (MaaS) Modell verbreitet wird. Es nutzt ein verborgenes Virtual Network Computing (HVNC) Modul, um eine separate und unsichtbare Windows-Desktop-Sitzung zu erstellen. Dies ermöglicht Angreifern, aktive Browsersitzungen, einschließlich Cookies und authentifizierter Sitzungszustände, zu kapern, ohne das Opfer zu alarmieren.

Untersuchung

Forscher analysierten eine MedusaHVNC-Probe und entdeckten eine fünfstufige Infektionskette, die mit einem verschleierten JScript-Launcher beginnt. Die Untersuchung ergab, dass AutoIt für die Entschlüsselung und Prozessinjektion in das legitime Windows Zeichentabellenprogramm (charmap.exe). Die endgültige Nutzlast verwendet ChaCha20-Verschlüsselung und kommuniziert mit einem fest kodierten C2-Server über ein benutzerdefiniertes TCP-Protokoll.

Minderung

Effektive Minderungsstrategien umfassen das Blockieren bekannter C2-Infrastrukturen und das Überwachen von Endpunkten auf ungewöhnliche ausgehende Netzwerkverbindungen. Organisationen sollten Anti-Daten-Exfiltration-Kontrollen einsetzen, die in der Lage sind, ausgehenden Verkehr unabhängig vom Ursprungsprozess zu inspizieren. Das Überwachen auf verdächtige Kindprozesse oder Injektionsaktivitäten in legitime Systembinärdateien wie charmap.exe kann ebenfalls die Erkennung verbessern.

Antwort

Wenn MedusaHVNC-Aktivitäten entdeckt werden, sollten Sicherheitsteams den betroffenen Endpunkt sofort isolieren, um die Kommunikation mit dem C2-Server zu beenden. Ermittler sollten den ursprünglichen Lieferpfad des JScript-Launchers identifizieren und auf Persistenzmechanismen im Startup-Ordner prüfen. Sitzungs- und Authentifizierungsprotokolle sollten ebenfalls auf unbefugte Aktivitäten während des Kompromittierungszeitraums überprüft werden.

Angriffsablauf

Simulation-Ausführung

Voraussetzung: Der Telemetrie- & Baseline-Pre-Flight-Check muss bestanden sein.

Begründung: Dieser Abschnitt beschreibt die präzise Ausführung der Angriffstechnik (TTP), die darauf ausgelegt ist, die Erkennungsregel auszulösen. Die Befehle und der Bericht MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, genau die Telemetrie zu erzeugen, die von der Erkennungslogik erwartet wird. Abstrakte oder nicht verwandte Beispiele führen zu Fehldiagnosen.

  • Angriffserzählung & Befehle: Ein Angreifer hat MedusaHVNC erfolgreich auf einem Arbeitsrechner des Opfers eingesetzt. Um Kommando und Steuerung (C2) zu etablieren und Remote-Desktop-Interaktionen zu beginnen, versucht die Malware, ihren fest kodierten Listener zu erreichen. In dieser Simulation imitieren wir dieses Verhalten, indem wir eine Verbindung zu einem lokalen Listener am Port 4444 erzwingen. Diese Aktion soll die „Phone Home“-Phase des MedusaHVNC-Lebenszyklus simulieren und ein Sysmon-Ereignis-ID-3-Protokoll mit Zielport: 4444.

  • Regressionstest-Skript:

    # Simulationsskript: MedusaHVNC C2 Kommunikationsemulation
    # Ziel: Generierung eines Netzwerkverbindungsereignisses am Port 4444, um die Sigma-Regel auszulösen.
    
    $TargetIP = "127.0.0.1"
    $TargetPort = 4444
    
    Write-Host "[+] Starte MedusaHVNC C2 Simulation..." -ForegroundColor Cyan
    
    # Schritt 1: Lokalen Listener erstellen, um die Verbindung zu erfassen (Simuliert C2-Server)
    $Listener = New-Object System.Net.Sockets.TcpListener([System.Net.IPAddress]::Loopback, $TargetPort)
    $Listener.Start()
    Write-Host "[+] Lokaler C2 Listener gestartet auf $TargetIP:$TargetPort" -ForegroundColor Green
    
    try {
        # Schritt 2: Emulieren der ausgehenden Verbindung der Malware
        Write-Host "[+] Emulieren der ausgehenden Verbindung zu C2..." -ForegroundColor Yellow
        $Client = New-Object System.Net.Sockets.TcpClient
        $Client.Connect($TargetIP, $TargetPort)
        Write-Host "[!] Erfolg: Verbindung hergestellt. Überprüfen Sie SIEM auf Warnungen." -ForegroundColor Red
    }
    catch {
        Write-Host "[-] Verbindung fehlgeschlagen: $($_.Exception.Message)" -ForegroundColor Red
    }
    finally {
        # Verbindung bereinigen
        if ($Client) { $Client.Close() }
        $Listener.Stop()
        Write-Host "[+] Simulationsbereinigung abgeschlossen." -ForegroundColor Cyan
    }
  • Bereinigungskommandos:

    # Stellt sicher, dass keine verbleibenden Prozesse oder Listener existieren
    Stop-Process -Name "powershell" -Force -ErrorAction SilentlyContinue
    # (Hinweis: In einer realen Umgebung prüfen Sie manuell, ob der Port 4444 geschlossen ist)
    Test-NetConnection -ComputerName 127.0.0.1 -Port 4444