PamStealer macOS-Malware nutzt Live-Schlüsselaustausch zur Umgehung statischer Analyse
KI-generiertes Bild

PamStealer macOS-Malware nutzt Live-Schlüsselaustausch zur Umgehung statischer Analyse

Forscher von Jamf Threat Labs berichten, dass PamStealer jetzt eine serverseitige Entschlüsselung mittels X25519-Schlüsselaustausch erfordert, wodurch eine statische Analyse ohne aktiven C2-Server unmöglich wird.

Cybersicherheitsforscher von Jamf Threat Labs haben eine bedeutende Weiterentwicklung in der auf macOS-Systeme abzielenden PamStealer-Malware-Familie identifiziert. Die neueste Variante führt einen raffinierten Auslieferungs- und Entschlüsselungsmechanismus ein, der grundlegend verändert, wie Analysten die Bedrohung untersuchen können. Bisher war die statische Analyse der Nutzlast möglich, weil das Schlüsselmaterial direkt in die bösartigen Skripte eingebettet war. In dieser neuen Version kann die Hauptnutzlast ohne aktive Zusammenarbeit mit dem Command-and-Control(C2)-Server des Angreifers nicht wiederhergestellt oder entschlüsselt werden.

Die Infektionskette beginnt mit einem trügerischen Köder. Die Opfer werden auf eine gefälschte Website namens 'wavel.app' gelockt, die einen nicht existierenden Kryptowährungs-Wallet-Dienst namens Wavel bewirbt. Dies stellt eine Abkehr von früheren Kampagnen dar, die legitime Zwischenablage-Manager wie Maccy, Scoppr und Nancy Clipboard imitierten. Wenn Nutzer auf den Download-Button dieser betrügerischen Seite klicken, erhalten sie eine Disk-Image-Datei mit dem Namen Wavel.dmg. In diesem Archiv befindet sich eine kompilierte AppleScript-Datei, die darauf ausgelegt ist, Nutzer zur Codeausführung zu verleiten.

Beim Öffnen der Datei wird Apples integrierter Skript-Editor gestartet, der Anweisungen anzeigt, die den Nutzer zur Ausführung auffordern. Dieser Schritt leitet einen JavaScript-for-Automation(JXA)-Dropper ein. Anders als in früheren Versionen, in denen das JXA-Skript selbst komplexe Entschlüsselungsaufgaben durchführte, verwendet die aktuelle Version JXA lediglich als Träger. Das Skript dekodiert einen Base64-String und leitet das Ergebnis an /bin/zsh weiter. Der JXA-Prozess beendet sich dann sofort, sodass ein im Hintergrund laufender zsh-Dropper die Infektion fortsetzt.

Dieses zsh-Skript orchestriert den zentralen technischen Durchbruch: die Live-Entschlüsselung der Nutzlast. Es lädt ein speziell entwickeltes Hilfsprogramm namens 'pkgunpack' von einem Server unter wavel.apple03cloudstore[.]com herunter. Anschließend führt das Skript einen X25519-Schlüsselaustausch mit dem Server des Angreifers durch. Da der zur Entpackung des Nutzlastpakets erforderliche Data Encryption Key (DEK) während dieses Live-Austauschs generiert und vom Server gehalten wird, bleibt die verschlüsselte Nutzlast offline unlesbar. Darüber hinaus erzeugt jede Ausführung ein neues, temporäres Schlüsselpaar, sodass ein abgefangener Schlüssel nicht zur Entschlüsselung zukünftiger Nutzlasten wiederverwendet werden kann. Dadurch ist die verschlüsselte Nutzlast für die statische Analyse ohne Zugriff auf eine aktive C2-Sitzung praktisch wertlos.

Über die Entschlüsselung hinaus etabliert die Malware robuste Persistenzmechanismen, um sicherzustellen, dass sie Neustarts und Systemprüfungen überlebt. Sie installiert vier redundante Methoden: einen LaunchAgent, einen Shell-Hook, der an ~/.zshrc angehängt wird, und ein Reparaturskript, das in ~/Library/Application Support/System/.githooks/ abgelegt wird. Die Git-Hooks-Konfiguration wird so verändert, dass jede git checkout- oder commit-Aktion das Reparaturskript stillschweigend aktiviert und die Nutzlast wiederherstellt, falls sie entfernt wurde. Außerdem unterdrückt die Malware macOS-Benachrichtigungen, die den Nutzer normalerweise auf neue Hintergrund-Anmeldeobjekte hinweisen würden.

Die letzte Phase umfasst eine in Swift geschriebene Stealer-Komponente, was eine Abkehr von der in Vorgängerversionen verwendeten Rust-Implementierung darstellt. Diese Komponente erfasst Systempasswörter über einen gefälschten Absturzdialog, der die Eingabe mithilfe eines PAM-basierten Ansatzes validiert. Sie listet Schlüsselbundeinträge auf, stiehlt Anmeldeinformationen aus einer Vielzahl von Chromium- und Firefox-basierten Browsern, darunter Google Chrome, Microsoft Edge, Mozilla Firefox, Brave, Vivaldi, Opera, Arc, Zen, Waterfox, LibreWolf, Yandex Browser und Cốc Cốc. Sie erstellt außerdem einen Fingerabdruck des Systems, sammelt Metadaten, erfasst benutzerbezogene Dateien wie .zsh_history und .gitconfig und listet laufende Prozesse auf.

Thijs Xhaflaire, der Sicherheitsforscher, der diese Artefakte analysierte, merkte an, dass die Einbeziehung weniger verbreiteter Browser wie Arc und Zen die Zielliste über typische Standard-Stealer hinaus erweitert. Er betonte, dass diese Variante eine bewusste Investition in die Auslieferungsinfrastruktur widerspiegelt und die operative Kontrolle auf den Serverbetreiber verlagert, indem die Entschlüsselung an die Serververfügbarkeit gekoppelt wird. Für Website-Betreiber und IT-Teams unterstreicht dies die Bedeutung der Überwachung auf ungewöhnliche Netzwerkverbindungen zu unbekannten Domains sowie der zeitnahen Installation von Software-Updates und Sicherheitspatches, um solchen fortgeschrittenen Bedrohungen entgegenzuwirken.

AEU Hosting bietet verwaltetes WordPress-Hosting mit durchgängiger Sicherheit, das Website-Betreibern hilft, eine sichere Umgebung gegen verschiedene digitale Bedrohungen aufrechtzuerhalten, indem es ihre Infrastruktur stets aktualisiert und schützt.

So schützen Sie sich

  1. Laden Sie Software nur von offiziellen Entwickler-Websites oder vertrauenswürdigen App-Stores herunter und vermeiden Sie Links aus Suchergebnissen oder Social-Media-Beiträgen.
  2. Überprüfen Sie die URL vor dem Herunterladen sorgfältig; achten Sie auf Rechtschreibfehler oder unbekannte Domainnamen wie 'wavel.app' anstelle von bekannten Marken-Websites.
  3. Öffnen Sie keine Disk-Images (.dmg-Dateien) aus nicht verifizierten Quellen, da sie versteckte Skripte enthalten können, die beim Öffnen automatisch ausgeführt werden.
  4. Aktivieren Sie Gatekeeper und andere integrierte Sicherheitsfunktionen von macOS, um Anwendungen von nicht identifizierten Entwicklern zu blockieren.
  5. Aktualisieren Sie regelmäßig Ihr Betriebssystem und Ihre Browser, um Schwachstellen zu schließen, die Malware ausnutzen könnte.

Begriffe Erklärt

  • Command-and-Control (C2) Ein Server, der von Angreifern verwendet wird, um infizierte Computer aus der Ferne zu verwalten und mit ihnen zu kommunizieren.
  • X25519 Ein kryptografisches Verfahren, das verwendet wird, um Verschlüsselungsschlüssel sicher zwischen zwei Parteien über eine unsichere Verbindung auszutauschen.
  • Ephemeral Key Ein Verschlüsselungsschlüssel, der für eine einzelne Sitzung generiert und sofort nach der Verwendung verworfen wird, wodurch eine Wiederverwendung durch Angreifer verhindert wird.
  • LaunchAgent Eine macOS-Funktion, die es Programmen ermöglicht, automatisch ausgeführt zu werden, wenn sich ein Benutzer anmeldet, und die oft von Malware für die Persistenz missbraucht wird.
  • JXA JavaScript for Automation, ein Werkzeug in macOS, das Skripten die Steuerung von Anwendungen ermöglicht und von Malware ausgenutzt wird, um Code auszuführen.
  • Base64 Ein Kodierungsschema, das Binärdaten in ein Textformat umwandelt und oft von Malware verwendet wird, um Code vor einfacher Erkennung zu verbergen.

Verwandte AEU-Dienste

  • AEU-I IT- und Sicherheitsberatung