Im Zentrum der Architektur steht laut SentinelOne ein Kommando-und-Kontroll-Kanal über die Telegram-Bot-API. Die Malware arbeitet in einer Polling-Schleife, über die der Angreifer Befehle in einer interaktiven Shell ausführen und die Ergebnisse zurückerhalten kann. Wenn zwei Instanzen mit demselben Bot-Token gleichzeitig pollen, liefert der Dienst eine „Konflikt“-Antwort, worauf sich die zweite Kopie beendet.
Die Shell unterstützt sechs Hauptbefehle und verschafft damit einen dauerhaften Zugriff auf den kompromittierten Mac. SentinelOne entdeckte zudem Hinweise auf einen siebten Befehl mit dem Namen „focus“, dessen Funktion bislang unklar ist. Für die Persistenz verwendet Gaslight einen LaunchAgent, der in seiner .plist-Datei die Bezeichnung „com.apple.system.services.activity“ nutzt.
Zusätzlich ist in die Malware ein 6,6 Kilobyte großes, Base64-kodiertes Python-Skript eingebettet. Dieses Modul dient als Sammelwerkzeug für Informationen und greift laut SentinelOne Terminal-Befehlshistorien, Listen installierter Anwendungen, Schnappschüsse laufender Prozesse, Hardware- und Softwareprofile des Systems, die macOS-Keychain-Datenbank sowie Daten aus den Browsern Chrome, Brave, Firefox und Safari ab. Die gesammelten Daten werden anschließend in das ZIP-Archiv „temp/collected_data.zip“ gepackt und über Telegram hochgeladen.
Der Python-Stealer wird wiederum über einen separaten, 2 Kilobyte großen, Base64-kodierten Bash-Installer ausgebracht. Dieser legt einen Interpreter cpython-3.10.18 aus dem Projekt „astral-sh/python-build-standalone“ ab. SentinelOne zufolge deuten Emojis und ausführliche Kommentarblöcke darauf hin, dass dieser Teil wahrscheinlich mit Hilfe eines großen Sprachmodells erzeugt wurde.
Bemerkenswert ist nach Angaben von Phil Stokes auch, dass Bot-Token, Chat-ID „tg_room_id“ und weitere Betreiberkonfigurationen nicht fest in das Sample eingebaut sind, sondern erst zur Laufzeit übergeben werden. Hinzu kommt ein Mechanismus zur Selbstzensur: „Das Implantat schwärzt sein eigenes Telegram-Bot-Token in seiner Laufzeitausgabe selbst und entzieht es so jedem, der Protokolle oder Absturzartefakte erfasst“, erklärte Stokes.
Die auffälligste Abwehrmaßnahme richtet sich jedoch gegen KI-basierte Erkennung und Analyse. Gaslight enthält einen in Markdown eingerahmten Block mit 38 fingierten „System“-Meldungen. Diese sollen einen Sicherheitsagenten dazu verleiten, die Analyse abzubrechen, abzuschneiden oder ganz zu verweigern.
SentinelOne zufolge umfasst dieses Gerüst erfundene Systemhinweise zu abgelaufenen Tokens, wegen Speichermangels beendeten Prozessen, erschöpftem Speicherplatz und wiederholten Betriebsfehlern. Dazu kommen falsche Warnungen über Injektionsschwachstellen und Markierungen aus der statischen Analyse. Das Unternehmen wertet dies als „Versuch, die mit großen Sprachmodellen unterstützten Triage-Pipelines zu bewaffnen, die zunehmend Teil der Reverse-Engineering-Schleife sind“.
