CloudSyncD macOS-Malware verbirgt gestohlene Anmeldedaten mit unsichtbaren Unicode-Zeichen
Detection stack
- AIDR
- Alert
- ETL
- Query
Zusammenfassung
CloudSyncD ist ein zweistufiger macOS-Backdoor, der über ein gefälschtes Zoom-Installer-Disk-Image verteilt wird. Die erste Stufe stiehlt Benutzeranmeldedaten durch eine betrügerische Autorisierungsaufforderung und verbirgt das erfasste Passwort innerhalb einer Tarnkonfigurationsdatei mit Hilfe von Nullbreiten-Unicode-Zeichen. Die zweite Stufe setzt ein eingebettetes Mach-O-Implantat ein, das Kommando-und-Kontroll-Kommunikation für die Remote-Aufgaben-Ausführung herstellt.
Untersuchung
Jamf Threat Labs entdeckte die Malware während der routinemäßigen Überwachung von an VirusTotal übermittelten ausführbaren Dateien. Forscher verfolgten ihre Entwicklung von einem frühen Entwicklungsbuild bis zum aktiven Einsatz und beobachteten einen Wechsel von der lokalen Anmeldeinformationen-Validierung mit dscl zur Kommunikation mit einer aktiven C2-Infrastruktur. Analysten entschlüsselten auch die Methode der Passwortverschleierung und erstellten die Konfiguration und die Kommunikationsprotokolle des Implantats nach.
Minderung
Benutzer sollten vermeiden, manuelle Anweisungen zu befolgen, die das Umgehen des Gatekeeper-Schutzes erfordern, wenn unerwartete Anwendungen installiert werden. Organisationen können Jamf für Mac verwenden, um Bedrohungsprävention, fortschrittliche Bedrohungskontrollen und Webschutz zu aktivieren, um bösartige Aktivitäten zu erkennen und zu blockieren. Auch das Aktiviertlassen des Systemintegritätsschutzes (SIP) kann bestimmte dateilose Ausführungstechniken des Droppers verhindern.
Reaktion
Wenn CloudSyncD-Aktivitäten erkannt werden, isolieren Sie den betroffenen macOS-Host, um weitere C2-Kommunikation zu stoppen. Untersuchen Sie verdächtige Dateien innerhalb ~/.config/zoom/, ~/.local/share/cloudsync/ und dem temporären Systemverzeichnis. Setzen Sie die Anmeldeinformationen für alle Benutzerkonten zurück, die mit der gefälschten Autorisierungsaufforderung interagierten, da ihre Passwörter den Angreifern ausgesetzt worden sein könnten.
Angriffsfluss
Wir aktualisieren diesen Teil noch.
Erkennungen
Mögliche C2-Kommunikation über HTTP zu direkter IP mit ungewöhnlichem Port (über Proxy)
MacOS-Anmeldeinformationen-Validierung über dscl authonly (über cmdline)
Erkennung des CloudSyncD macOS-Backdoors [Linux Prozess-Erstellung]
## Simulationsausführung
-
Angriffserzählung & Befehle: Der Angreifer liefert einen bösartigen macOS-Installer, getarnt als Zoom, über eine Phishing-E-Mail. Sobald der Benutzer den Installer ausführt (Benutzerausführung), versucht der Dropper (die erste Stufe), die Payload der zweiten Stufe zu starten. Während dieses Prozesses tritt ein spezifischer Fehler in der Befehlszeilenzeichenfolge auf:
/dev/fd spawn fehlgeschlagen rc=13. Alternativ startet der Dropper erfolgreich eine Komponente namenscshelper. Die Simulation wird zwei verschiedene Szenarien ausführen: eines, das die Befehlszeilenzeichenfolgen ins Visier nimmt, und eines, das den spezifischen Prozessnamen anvisiert, um die volle Abdeckung der Regel-Logik sicherzustellen. -
Regressionstest-Skript:
#!/bin/bash # CloudSyncD-Simulationsskript echo "[*] CloudSyncD-Simulation wird gestartet..." # Szenario 1: Auslösung über Auswahl 1 und Auswahl 2 (Der Dropper-Fehler) echo "[*] Simulation der Stufe 1 Dropper mit spezifischer Fehlermeldung..." # Wir verwenden 'logger' oder eine Dummy-Ausführung, um die Befehlszeilentelemetrie zu simulieren, wenn wir einen Dateideskriptor nicht tatsächlich abstürzen können # In einem echten EDR-Test führen wir einen Prozess aus, der diese Zeichenfolge in seinen Argumenten trägt /usr/bin/echo "der app_installer dropper /dev/fd spawn fehlgeschlagen rc=13" & sleep 2 # Szenario 2: Auslösung über Auswahl 3 (Der cshelper-Prozess) echo "[*] Simulation der Ausführung des Prozesses 'cshelper' der Stufe 2..." # Erstellen Sie eine Dummy-Datei, die die bösartige Binärdatei darstellt touch /tmp/cshelper chmod +x /tmp/cshelper /tmp/cshelper & echo "[*] Simulationsbefehle gesendet." -
Aufräumbefehle:
#!/bin/bash # Aufräumskript echo "[*] Bereinigung von Simulationsartefakten..." rm -f /tmp/cshelper echo "[*] Bereinigung abgeschlossen."