SOC Prime Bias: Mittel

27 May 2026 15:51 UTC

BlackToad verwendet Netzmanipulation in einem AutoIt-Payload

Author Photo
SOC Prime Team linkedin icon Folgen
BlackToad verwendet Netzmanipulation in einem AutoIt-Payload
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

JUMPSEC deckte eine Phishing-Kampagne auf, die eine Remcos RAT-Payload liefert, die in einem benutzerdefinierten AutoIt-Crypter verborgen ist. Die Infektionskette verwendet ein VBS-Skript, um ipconfig /release gefolgt von ipconfig /renew, und unterbricht vorübergehend die Netzwerkverbindung, um der Erkennung zu entgehen. Forscher verknüpften die Kampagne mit dem nigerianischen e-Crime-Ökosystem, wobei die Infrastruktur auf dynamischen DNS-Domains basiert, die hinter mobilen ISP-Verbindungen gehostet werden.

Untersuchung

Die Untersuchung folgte der bösartigen E-Mail, packte das eingebettete WinRAR-Selbstextrahierungsarchiv aus und identifizierte einen VBS-Loader, der einen getarnten AutoIt-Interpreter startete. Das AutoIt-Skript entschlüsselte und ausführte das Remcos-Implantat, während die wiederhergestellte Konfiguration die Kommando- und Steuerdomains, den Mutex-Wert und einen Persistenzlauf-Schlüssel offenbarte. Forscher kartierten die unterstützende Infrastruktur auf drei dynamische DNS-Domains und einen rotierenden Satz nigerianischer IP-Adressen.

Eindämmung

Organisationen sollten die identifizierten dynamischen DNS-Domains und zugehörigen IP-Bereiche blockieren, nach der verdächtigen ipconfig /release and ipconfig /renew Sequenz überwachen und das Auftreten von AutoIt- oder VBS-Skripten erkennen, die cmd.exestarten. Starke Ausführungssteuerungen sollten auch auf Dateien mit irreführenden doppelten Erweiterungen angewendet werden, während Registry-Run-Einträge wie WindowsUpdate auf Missbrauch überwacht werden sollten.

Reaktion

Wird diese Aktivität erkannt, isolieren Sie sofort den betroffenen Endpunkt, beenden Sie den Remcos-Prozess, entfernen Sie den bösartigen Läuferschlüssel, der zur Persistenz verwendet wird, und führen Sie eine vollständige forensische Prüfung auf Anmeldeinformationen-Diebstahl oder Folgetätigkeit durch. Der Erkennungsinhalt sollte auch aktualisiert werden, um die Netzwerkausfalltechnik und die spezifischen Dateinamenmuster zu identifizieren, die mit der Kampagne verbunden sind.

Angriffsverlauf

Simulationseinführung

Voraussetzung: Der Telemetrie- & Basislinien-Pre-Flight-Check muss bestanden haben.

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

  • Angriffserzählung und Befehle:

    1. Ziel: Etabliere einen C2-Kanal mit dem BlackToad Remcos-Implantat unter Verwendung einer der bekannten bösartigen DDNS-Domains auf dem fest kodierten Port 50240.
    2. Schritt-für-Schritt:
      • Löse die gewählte bösartige DDNS-Domain auf (pmitm.ddns.net).
      • Öffne eine TCP-Verbindung zum aufgelösten IP am Port 50240.
      • Sende eine minimale „Heartbeat“-Payload, um das initiale Handshake des Implantats zu emulieren.
      • Halte die Verbindung 30 Sekunden offen, um sicherzustellen, dass die Firewall die ausgehende Verbindung protokolliert.
    3. Die ausgehende Verbindung entspricht genau den Sigma-Regel-Kriterien ziel.ip Liste und ziel.port Kriterien, was ein erkennbares Firewall-Ereignis erzeugt.
  • Regressionstest-Skript:

     # BlackToad C2 Kommunikation-Simulation (PowerShell)
      $c2Domain = "pmitm.ddns.net"      # eine der in der Regel aufgeführten Domains
      $c2Port   = 50240
    
      try {
          # Domain zu IP auflösen (fügt DNS-Abfrage-Telemetrie hinzu)
          $ip = [System.Net.Dns]::GetHostAddresses($c2Domain) |
                Where-Object { $_.AddressFamily -eq 'InterNetwork' } |
                Select-Object -First 1
    
          if (-not $ip) { throw "Unable to resolve $c2Domain" }
    
          Write-Host "Resolved $c2Domain to $($ip.IPAddressToString). Connecting..."
    
          # TCP-Verbindung öffnen (generiert Firewall ausgehendes Log)
          $client = New-Object System.Net.Sockets.TcpClient
          $client.Connect($ip, $c2Port)
    
          # Einfachen Heartbeat senden (Hex 0x01)
          $stream = $client.GetStream()
          $payload = [byte[]](0x01)
          $stream.Write($payload, 0, $payload.Length)
    
          Write-Host "Heartbeat sent. Keeping connection alive for 30 seconds..."
          Start-Sleep -Seconds 30
    
          $stream.Close()
          $client.Close()
          Write-Host "Connection closed cleanly."
      }
      catch {
          Write-Error "Simulation failed: $_"
      }
  • Bereinigungskommandos:

     # Sicherstellen, dass alle beibehaltenen Verbindungen geschlossen sind
      Get-NetTCPConnection -RemotePort 50240 -State Established |
          ForEach-Object { Stop-Process -Id $_.OwningProcess -Force }
      # Optional: DNS-Cache leeren, um den aufgelösten DDNS-Eintrag zu entfernen
      ipconfig /flushdns
      Write-Host "Bereinigung abgeschlossen."