SOC Prime Bias: Mittel

22 Apr 2026 15:47 UTC

macOS ClickFix-Kampagne: AppleScript-Stealer & Neue Terminal-Schutzmaßnahmen

Author Photo
SOC Prime Team linkedin icon Folgen
macOS ClickFix-Kampagne: AppleScript-Stealer & Neue Terminal-Schutzmaßnahmen
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

Die Netskope Threat Labs haben eine plattformübergreifende ClickFix-Kampagne identifiziert, die macOS-Benutzer mit einem auf AppleScript basierenden Infostealer ins Visier nimmt. Die Malware wird über eine täuschende Social-Engineering-Seite verbreitet, die die Opfer dazu verleitet, einen bösartigen Befehl in das Terminal zu kopieren und einzufügen. Nach der Ausführung sammelt das Skript Schlüsselbundinhalte, Browser-Cookies, Erweiterungsdaten und Kryptowährungs-Wallet-Dateien und sendet die gestohlenen Informationen über HTTP-POST-Anfragen. Die Kampagne verwendet auch persistente gefälschte Dialogfenster, um Benutzer dazu zu bringen, ihr Systempasswort einzugeben.

Untersuchung

Der Bericht erklärt, dass die bösartige Landingpage zunächst Besucher anhand des User Agents filtert, bevor ein speziell auf macOS-Systeme zugeschnittener AppleScript-Loader bereitgestellt wird. Nach der Ausführung erstellt die Malware ein temporäres Staging-Verzeichnis, sammelt Anmeldeinformationen und wallet-bezogene Daten, komprimiert die gesammelten Dateien mit dem ditto -Befehl und lädt das Archiv auf eine fest codierte Command-and-Control-Adresse hoch. Die Forscher dokumentierten auch den Missbrauch des macOS Directory Services, um das Passwort des Opfers in Echtzeit zu validieren, sowie die breite Palette der angezielten Browser und Kryptowährungs-Wallet-Anwendungen.

Schadensbegrenzung

Netskope empfiehlt, dass macOS-Benutzer auf die neuesten Versionen von macOS Tahoe 26.4 oder macOS Sequoia aktualisieren, die native Terminal-Warnungen für eingefügte Befehle einführen. Benutzer sollten außerdem vermeiden, Befehle von nicht vertrauenswürdigen Websites auszuführen, alle Anmeldeaufforderungen genau überprüfen und die Multi-Faktor-Authentifizierung, wo möglich, aktivieren. Organisationen wird geraten, nach verdächtigen AppleScript-gesteuerten Dialogen und ungewöhnlichem HTTP-POST-Verkehr zu unbekannter Infrastruktur zu überwachen.

Reaktion

Verteidiger sollten die Ausführung unbekannter AppleScript-Dateien erkennen und blockieren sowie die Erstellung des /tmp/xdivcmp/ -Staging-Verzeichnisses überwachen. Warnungen sollten auch für HTTP-POST-Aktivitäten von macOS-Systemen zu ungewöhnlichen Domains oder IP-Adressen konfiguriert werden. Jegliche wiederkehrenden Dialoge, die Systempasswörter anfordern, sollten als verdächtig behandelt werden, und betroffene Endpunkte sollten umgehend isoliert werden, um eine forensische Untersuchung durchzuführen.

"graph TB %% Klassendefinitionen classDef technique fill:#ffcc99 %% Knotendefinitionen t_phish["<b>Technik</b> – <b>T1566 Phishing</b><br/><b>Beschreibung</b>: Versenden von bösartigen E-Mails, die einen kopierbaren und einfügbaren Befehl enthalten, um das Opfer zu ködern."] class t_phish technique t_userexec["<b>Technik</b> – <b>T1204.004 Benutzer-Ausführung: Bösartiges Kopieren und Einfügen</b><br/><b>Beschreibung</b>: Das Opfer kopiert und fügt den bösartigen Befehl in eine Terminalsitzung ein."] class t_userexec technique t_unixshell["<b>Technik</b> – <b>T1059.004 Befehls- und Skriptinterpreter: Unix Shell</b><br/><b>Beschreibung</b>: Ausführung eines Shell-Befehls, der ein AppleScript-Payload herunterlädt und ausführt."] class t_unixshell technique t_obfusc["<b>Technik</b> – <b>T1027 Verschleierte Dateien oder Informationen</b><br/><b>Beschreibung</b>: Codieren des Shell-Befehls zur Verschleierung seiner bösartigen Absicht."] class t_obfusc technique t_inputcap["<b>Technik</b> – <b>T1056 Eingabefänger</b><br/><b>Beschreibung</b>: Persistenter AppleScript-Dialog fängt das macOS-Benutzerpasswort ab."] class t_inputcap technique t_oscred["<b>Technik</b> – <b>T1003 Betriebssystem-Anmeldeinformationen Abgreifen</b><br/><b>Beschreibung</b>: Verwenden des abgefangenen Passworts zum Entschlüsseln des macOS-Schlüsselbunds."] class t_oscred technique t_passmgr["<b>Technik</b> – <b>T1555.005 Anmeldeinformationen aus Passwortspeichern: Passwort-Manager</b><br/><b>Beschreibung</b>: Extrahieren von gespeicherten Tresordaten aus installierten Passwort-Managern."] class t_passmgr technique t_webbrowser["<b>Technik</b> – <b>T1555.003 Anmeldeinformationen aus Passwortspeichern: Webbrowser</b><br/><b>Beschreibung</b>: Diebstahl von gespeicherten Passwörtern und Autofill-Daten aus Browser-Speichern."] class t_webbrowser technique t_webcookie["<b>Technik</b> – <b>T1539 Web-Sitzungs-Cookie stehlen</b><br/><b>Beschreibung</b>: Ernte von Sitzungscookies aus zwölf Webbrowsern."] class t_webcookie technique t_altauth["<b>Technik</b> – <b>T1550.004 Verwendung alternativen Authentifizierungsmaterials: Web-Sitzungscookie</b><br/><b>Beschreibung</b>: Wiederverwenden gestohlener Cookies zum Umgehen der mehrstufigen Authentifizierung."] class t_altauth technique t_browserdisc["<b>Technik</b> – <b>T1217 Browser-Informationsentdeckung</b><br/><b>Beschreibung</b>: Auffinden von Browser-Profilverzeichnissen auf dem Host-System."] class t_browserdisc technique t_staging["<b>Technik</b> – <b>T1074.001 Daten gestaged: Lokale Datenbereitstellung</b><br/><b>Beschreibung</b>: Aggregieren gesammelter Daten in /tmp/xdivcmp."] class t_staging technique t_archive["<b>Technik</b> – <b>T1560 Archivierte gesammelte Daten</b><br/><b>Beschreibung</b>: Komprimieren der bereitgestellten Daten in eine Zip-Datei mit ditto."] class t_archive technique t_exfil["<b>Technik</b> – <b>T1041 Exfiltration über C2-Kanal</b><br/><b>Beschreibung</b>: Übertragen des Zip-Archivs über HTTP POST an einen Kommando-und-Kontrollserver."] class t_exfil technique t_filedel["<b>Technik</b> – <b>T1070.004 Indikatorenentfernung: Dateilöschung</b><br/><b>Beschreibung</b>: Löschen des Staging-Verzeichnisses nach erfolgreicher Exfiltration."] class t_filedel technique t_diskwipe["<b>Technik</b> – <b>T1561 Datenträgerlöschen</b><br/><b>Beschreibung</b>: Überschreiben von Datenträgersektoren, um forensische Spuren zu entfernen."] class t_diskwipe technique %% Verbindungen zeigen Fluss t_phish –>|führt zu| t_userexec t_userexec –>|führt zu| t_unixshell t_unixshell –>|verwendet| t_obfusc t_unixshell –>|verwendet| t_inputcap t_unixshell –>|verwendet| t_browserdisc t_inputcap –>|ermöglicht| t_oscred t_inputcap –>|ermöglicht| t_passmgr t_inputcap –>|ermöglicht| t_webbrowser t_inputcap –>|ermöglicht| t_webcookie t_webcookie –>|ermöglicht| t_altauth t_browserdisc –>|bietet| t_staging t_staging –>|erstellt| t_archive t_archive –>|exfiltriert| t_exfil t_exfil –>|löst aus| t_filedel t_filedel –>|löst aus| t_diskwipe "

Angriffsfluss

Simulation Ausführung

Voraussetzung: Der Telemetrie- und Baseline-Vorab-Check muss bestanden haben.

  • Angriffsverlauf & Befehle:

    1. Aufklärung: Der Angreifer führt zuerst den aktuellen Schlüsselbund des Benutzers auf, um gespeicherte Elemente zu identifizieren.
    2. Anmeldeinformation Dump: Verwendung von security dump-keychain, der Angreifer extrahiert die gesamte Schlüsselbund-Datenbank in eine temporäre Datei.
    3. Staging: Der Dump wird in ein verstecktes Staging-Verzeichnis kopiert /tmp/.xdivcmp/ (spiegelt den Pfad der Regel wider). /tmp/xdivcmp/ .
    4. Verschleierung: Das Staging-Verzeichnis wird als versteckt markiert (chflags hidden).
    5. Vorbereitung der Exfiltration: Dateien werden in payload.zip komprimiert, bereit für den ausgehenden Transfer.
  • Regressionstest-Skript:

    #!/bin/bash
    set -euo pipefail
    
    # 1. Erstelle verstecktes Staging-Verzeichnis (entspricht dem Regelpfad)
    STAGING_DIR="/tmp/.xdivcmp"
    mkdir -p "$STAGING_DIR"
    chflags hidden "$STAGING_DIR"
    
    # 2. Schlüsselbund dumpen (erfordert Benutzerinteraktion; simuliert durch eine Kopie der DB)
    KEYCHAIN_SRC="/Users/$(whoami)/Library/Keychains/login.keychain-db"
    KEYCHAIN_DUMP="${STAGING_DIR}/login.keychain-db.dump"
    
    # Simulieren des Dumps durch Kopieren der DB (echter Angreifer würde `security dump-keychain` verwenden)
    cp "$KEYCHAIN_SRC" "$KEYCHAIN_DUMP"
    
    # 3. Komprimieren zur Exfiltration
    zip -j "${STAGING_DIR}/payload.zip" "$KEYCHAIN_DUMP"
    
    echo "[+] ClickFix-Simulation abgeschlossen – Staging-Artefakte in $STAGING_DIR platziert"
  • Bereinigungsskripte:

    #!/bin/bash
    set -euo pipefail
    
    STAGING_DIR="/tmp/.xdivcmp"
    
    if [[ -d "$STAGING_DIR" ]]; then
        rm -rf "$STAGING_DIR"
        echo "[+] Staging-Verzeichnis bereinigt."
    else
        echo "[*] Kein Staging-Verzeichnis gefunden; nichts zu bereinigen."
    fi