Vorsicht vor SparroWock: Die Hintertür, die beißt, die Befehle, die fangen
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Die an China angepasste APT-Gruppe FamousSparrow hat einen neuen modularen C++-Backdoor namens SparroWocky eingesetzt, der das frühere SparrowDoor-Implantat ersetzt. Die Malware beinhaltet fortschrittliche Anti-Analyse-Funktionen wie Stack-Spoofing und reflektives Speichers Laden. Derzeit konzentriert sich die Aktivität stark auf staatliche Organisationen in ganz Lateinamerika.
Untersuchung
ESET-Forscher identifizierten SparroWocky durch die Untersuchung seiner modularen Architektur und charakteristischen Code-Eigenschaften, einschließlich Verweisen auf das Jabberwocky-Gedicht. Die Untersuchung deckte ein Dreizack-Ladeschema auf, das sich auf DLL-Side-Loading und ein benutzerdefiniertes Payload-Format stützt, das mit RC4 entschlüsselt wird. Analysten beobachteten auch, dass Open-Source-Bibliotheken wie Mbed TLS und MinHook verwendet werden, um die Tarnung und Funktionalität zu verbessern.
Minderung
Organisationen sollten strenge Kontrollen um DLL-Side-Loading durchsetzen und auf verdächtige Dienst-Erstellungen oder Änderungen an Registry-Run-Schlüsseln achten. Eine fortschrittliche Endpunkt-Erkennung, die in der Lage ist, nur im Speicher ausgeführte PE-Execution und Stack-Manipulation zu identifizieren, ist ebenfalls wichtig. Öffentliche Anwendungen, einschließlich Exchange-Servern, sollten schnell gepatcht werden, um anfängliche Zugriffsmöglichkeiten zu reduzieren.
Antwort
Wenn SparroWocky-Aktivität erkannt wird, sollten betroffene Systeme sofort isoliert werden, um seitliche Bewegungen und Kommando- und Kontrollkommunikation zu verhindern. Ermittler sollten Gedächtnisforensik durchführen, um reflektiv geladene Module zu identifizieren und entführte Ausführungsflüsse zu untersuchen. Auch Überwachungsprotokolle sollten auf nicht autorisierte Dienstinstallationen oder Änderungen an Persistenzmechanismen wie dem SnapCart Registry-Wert überprüft werden.
Angriffsablauf
Wir aktualisieren diesen Teil noch.
Erkennungen
Mögliche Persistenzpunkte [ASEPs – Software/NTUSER Hive] (via registry_event)
Mögliches verzögertes Ausführungsverhalten (via cmdline)
IOCs (HashSha1) zu erkennen: Hüten Sie sich vor dem SparroWock: Der Backdoor, der beißt, die Befehle, die fangen
IOCs (SourceIP) zu erkennen: Hüten Sie sich vor dem SparroWock: Der Backdoor, der beißt, die Befehle, die fangen
IOCs (DestinationIP) zu erkennen: Hüten Sie sich vor dem SparroWock: Der Backdoor, der beißt, die Befehle, die fangen
Erkennung des SparroWocky-Backdoor-Reflektiven Code-Ladens [Windows Sysmon]
SparroWocky Backdoor C&C Kommunikation und Proxy Erkennung [Windows Netzwerkverbindung]
Erkennung der SparroWocky-Ausführung im Speicher [Windows Prozess Erstellung]
Simulation Ausführung
-
Angriffs-Narrativ & Befehle: Der Angreifer zielt darauf ab, einen verdeckten Kommunikationskanal zu einem Command and Control (C2) Server zu etablieren. Um einfache Perimeterverteidigungen zu umgehen, nutzt der Angreifer einen SOCKS5-Proxy, um den Verkehr zu tunneln, wodurch der Verkehr den Anschein erweckt, von einem legitimen Proxy-Server und nicht vom infizierten Endpunkt zu stammen. Diese Aktion soll die
selection_http_proxyLogik in der Erkennungsregel auslösen, indem Protokolle generiert werden, die das Protokoll als SOCKS5 identifizieren und die Aktion als ‚zulassen‘. -
Regression Testskript:
# Simulation der SparroWocky C2 über SOCKS5 Proxy # Hinweis: Dies erfordert einen erreichbaren Proxy oder einen simulierten Listener, um das 'zulassen'-Protokoll auszulösen. $ProxyServer = "127.0.0.1:1080" # Nimmt einen lokalen Listener/Proxy zu Simulationszwecken an $TargetUrl = "http://example.com" Write-Host "[+] Versuche, die SOCKS5-Proxy-Verbindung zur Simulation des C2 herzustellen..." # Verwenden von PowerShell, um eine Verbindung über einen Proxy zu erzwingen $proxy = New-Object System.Net.WebProxy("http://$ProxyServer") $wc = New-Object System.Net.WebClient $wc.Proxy = $proxy try { $wc.DownloadString($TargetUrl) Write-Host "[+] Verbindung versucht. Überprüfen Sie die Firewall-Protokolle auf SOCKS5/HTTP-Proxy-Aktivität." } catch { Write-Host "[-] Verbindung fehlgeschlagen (erwartet, wenn kein Listener vorhanden ist), aber Telemetrie sollte immer noch durch den Netzwerk-Stack generiert werden." } -
Säuberungsbefehle:
# Stoppen Sie alle lokalen Proxy-Listener, wenn diese als Teil des Lab-Setups gestartet wurden Stop-Process -Name "nc" -ErrorAction SilentlyContinue Stop-Process -Name "python" -ErrorAction SilentlyContinue Write-Host "[+] Säuberung abgeschlossen."