BlueShell-Malware-Variante mit APT-Kampagnen in Verbindung gebracht
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
Der Bericht untersucht eine neue Linux-basierte BlueShell RAT-Variante, die in Go geschrieben ist. Diese Version bietet verbesserte Ausweichmechanismen, darunter das Vortäuschen des Prozesses als Kernel-Arbeiter und die Nutzung von Proxy-Servern für die C2-Kommunikation. Die Malware wird mit in China ansässigen Bedrohungsakteuren in Verbindung gebracht, einschließlich BlackTech.
Untersuchung
Analysten identifizierten einen Dropper, der das BlueShell-Payload XOR-dekodiert und dekomprimiert in /tmp/kthread. Die Malware speichert kodierte Konfigurationsdaten in einer Umgebungsvariable namens wtim. Die Untersuchung deckte auch neue Funktionen auf, einschließlich der Hostnamenvalidierung und der Fähigkeit, direkte C2-Verbindungen zu vermeiden, indem der Datenverkehr über einen internen Proxy geleitet wird.
Minderung
Organisationen sollten die verdächtige Dateierstellung innerhalb von /tmp und ungewöhnliche Prozessnamen wie [kworker/12:12]genau überwachen. Sicherheitsteams sollten auch unerwarteten ausgehenden Datenverkehr erkennen, der durch interne Proxy-Server geleitet wird. Speicherforensik und Dateisystem-Scanning sollten durchgeführt werden, wenn Dropper gelöscht werden, um Payloads und Konfigurationsdaten wiederherzustellen.
Antwort
Wird BlueShell-Aktivität erkannt, sollten betroffene Hosts sofort isoliert und mittels Speicherforensik untersucht werden, um den bösartigen Prozess und dessen Konfiguration zu identifizieren. Proxy-Logs sollten auf Verbindungen zur C2-IP-Adresse überprüft werden 48.216.210.91. Ermittler sollten auch herausfinden, wie der initiale Dropper eingesetzt wurde, einschließlich möglichem Missbrauch kompromittierter SSH-Anmeldeinformationen.
Angriffsablauf
Erkennungen
Gefährliche Berechtigungen für ein Binary/Skript/Ordner wurden gesetzt (über cmdline)
Ansehen
Versteckte Datei wurde auf Linux-Host erstellt (via file_event)
Ansehen
IOCs (HashSha256) zur Erkennung: Analyse der BlueShell-Variante, die von APT-Gruppen verwendet wird
Ansehen
IOCs (SourceIP) zur Erkennung: Analyse der BlueShell-Variante, die von APT-Gruppen verwendet wird
Ansehen
IOCs (DestinationIP) zur Erkennung: Analyse der BlueShell-Variante, die von APT-Gruppen verwendet wird
Ansehen
Erkennung von Verbindungsversuchen zum BlueShell-Variante-C2-Server [Windows Netzwerkverbindung]
Ansehen
Erkennung der BlueShell-Variante mit Proxy-Server-C2-Kommunikation [Proxy]
Ansehen
Erkennung der Ausführung des BlueShell-Malware-Varianten [Linux Prozess-Erstellung]
Ansehen
Simulation-Ausführung
Voraussetzung: Die Telemetrie- & Baseline-Preflight-Prüfung muss bestanden sein.
Begründung: Dieser Abschnitt beschreibt die genaue Ausführung der gegnerischen Technik (TTP), die darauf abzielt, die Erkennungsregel auszulösen. Die Befehle und die Erzählung MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, die von der Erkennungslogik erwartete spezifische Telemetrie zu generieren. Abstrakte oder nicht verwandte Beispiele führen zu Fehldiagnosen.
-
Angriffserzählung & Befehle: Ein Angreifer hat anfänglichen Zugriff auf einen Linux-Server erlangt und setzt eine BlueShell-Variante ein, um Persistenz zu etablieren. Zur Erkennungsausweichung versuchen sie, den bösartigen Prozess als Kernel-Arbeiter-Thread mit dem Namen
/kworker/12:12zu tarnen. Gleichzeitig versucht der Dropper, das Hauptpayload in zu entpacken/tmp/kthread. Wir werden sowohl das Vortäuschen des Prozesses als auch die Dropper-Aktivität simulieren, um zu validieren, dass die spezifischen Zeichenfolgen, die in der Sigma-Regel definiert sind, den Alarm auslösen. -
Regressionstest-Skript:
#!/bin/bash # Simulation der Ausführung der BlueShell-Virusvariante echo "[+] Starte BlueShell-Simulation..." # 1. Simuliere das Verhalten des Droppers (Schreiben in /tmp/kthread) echo "Simuliere Dropper, der in /tmp/kthread schreibt" echo "#!/bin/bash" > /tmp/kthread chmod +x /tmp/kthread /tmp/kthread & SLEEP_PID=$! # 2. Simuliere die Ausführung des getarnten Prozesses # Wir erstellen eine Dummy-Datei und benennen sie in den Zielprozessnamen um, um 'Image enthält' auszulösen echo "[+] Simuliere getarnten Prozess /kworker/12:12" echo "echo 'Ich bin ein falscher Kernel-Thread'" > /tmp/fake_worker chmod +x /tmp/fake_worker # Ausführung über einen Pfad, der den Namen enthält, um die 'enthält'-Logik auszulösen /tmp/fake_worker --name="/kworker/12:12" & WORKER_PID=$! echo "[+] Simulationsbefehle gesendet." echo "[+] Warte auf die Telemetrieaufnahme..." sleep 10 # Bereinigung wird durch separates Kommando durchgeführt echo "[+] Simulation abgeschlossen. Verwenden Sie das Bereinigungsskript, um Artefakte zu entfernen." -
Bereinigungskommandos:
#!/bin/bash # Bereinigung der Simulationsartefakte echo "[+] Bereinigen der Simulationsartefakte..." rm -f /tmp/kthread rm -f /tmp/fake_worker pkill -f "/kworker/12:12" pkill -f "/tmp/kthread" echo "[+] Bereinigung abgeschlossen."