Sicherheitsforscher von SentinelOne haben jüngst die Kryptominer-Kampagne macOS.OSAMiner entdeckt, die seit mindestens fünf Jahren ihr Unwesen treibt. Hinter der Malware verbirgt sich eine komplexe Architektur, die ein Run-Only AppleScript in ein anderes einbettet und weitere Stufen abruft, die in den Quellcode von öffentlich zugänglichen Webseiten eingebettet sind.
Entdeckt wurde sie durch die Kombination eines öffentlichen AppleScript-Disassemblers mit dem AEVT-Decompiler-Tool des Herstellers. Dadurch gelang es die erste Ausführung des Run-Only-AppleScripts zurückzuverfolgen und bisher unbekannte Details über die Kampagne und die Architektur der Malware aufzudecken.
Aktiv scheint diese Kampagne vor allem in Asien zu sein und sich über gefälschte Spielesoftware und Betriebssysteme wie League of Legends oder Microsoft Office für MAC OS zu verbreiten.
Hintergrund:
Wird das Decompiler-Tool auf das Miner-Setup-Skript angewendet, zeigt sich, dass es als Downloader und Konfiguration für eine Instanz der Open-Source-Software XMR-STAK-RX - Free Monero RandomX Miner fungiert. Den Sicherheitsforschern lagen eine Reihe von Samples von 2018 bis 2020 vor, sie zeigten wie die macos.OSAMiner-Kampagne funktioniert.
Das übergeordnete Skript prüft zunächst die Festplattenkapazität des Rechners des Opfers über Systemereignisse und beendet sich, wenn nicht genügend freier Speicherplatz vorhanden ist. Als Nächstes schreibt es das eingebettete AppleScript über einen do shell script-Befehl nach ~/Library/k.plist und führt dann das eingebettete Skript mit osascript aus, wobei es wiederum über do shell script ausgeführt wird.
Die Hauptfunktion dieses eingebetteten Skripts besteht darin, Umgehungs-Aufgaben zu übernehmen. Nach dem Schreiben des eingebetteten Skripts wird das übergeordnete Skript weiter ausgeführt, das einen Persistenzagenten einrichtet und die erste Stufe des Miners herunterlädt, indem es eine in eine öffentliche Webseite eingebettete URL abruft.
Diese URL wird an das Dienstprogramm curl übergeben, um eine entfernte Datei herunterzuladen. Trotz der .png-Erweiterung handelt es sich dabei um ein weiteres Run-Only-AppleScript, dass nun nach ~/Library/11.png auf dem infizierten Gerät ausgeschrieben und an Offset 00387 ausgeführt wird. Die Malware verfügt dann über vier Komponenten, die ausgeführt werden (die Pfadnamen können je nach Muster variieren):
- ein Persistenz-Agent für das übergeordnete Skript unter ~/Library/LaunchAgents/com.apple.FY9.plist
- das übergeordnete Skript, das von ~/Library/LaunchAgents/com.apple.4V.plist ausgeführt wird
- das eingebettete Umgehungs-/Anti-Analyse AppleScript, das von ~/Library/k.plist ausgeführt wird
- das Miner-Setup-Skript, das von ~/Library/11.png ausgeführt wird
Das betroffene Opfer bemerkt die Malware nicht, lediglich anhand der CPU-Leistung könnte sich durch die schlechtere Performance und höhere Auslastung ein Unterschied auftun. Das macht die Cryptominer letztendlich so erfolgreich, sie sind gut versteckt und arbeiten im Verborgenen.
Fazit:
Reine AppleScripts sind in der macOS-Malware-Welt überraschend selten. Sowohl die Langlebigkeit der macOS.OSAMiner-Kampagne zeigt, wie mächtig reine AppleScripts für die Umgehung und Analyse sein können. In diesem Fall konnten die Sicherheitsforscher nicht feststellen, dass der Malware-Entwickler eine der leistungsfähigeren Funktionen von AppleScript verwendet.
Dennoch bleiben diese Scripts Angriffsvektoren, auf die viele Verteidigungswerkzeuge nicht ausgelegt sind. SentinelOne stellt das verwendete AEVT-Decompiler-Tool als Open Source allen Interessierten zur Verfügung, die nach bösartigen Run-Only-AppleScripts suchen möchten.