PamStealer macOS-Malware nutzt Live-Schlüsselaustausch zur Umgehung statischer Analyse
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.