Lunex Neuer Information Stealer nutzt BYOVD

Ein Gastbeitrag von Rhys Downing 5 min Lesedauer

Anbieter zum Thema

Ein neuer Information Stealer ist Teil einer vierstufigen Angriffskette der MaaS-Plattform Lunex. Das Ontinue Cyber Defence Centre hat die zugrunde liegenden Binärdateien analysiert. Besonders auffällig ist der Einsatz eines verwundbaren AMD-Treibers.

Lunex nutzt einen verwundbaren, signierten AMD-Treiber, um Sicherheits-Callbacks auszuschalten, und stiehlt danach Browser- und Wallet-Daten. Es handelt sich dabei um eine Malware-as-a-Service-Plattform, die andere Kriminelle mieten.(Bild:  KI-generiert / Dall-E)
Lunex nutzt einen verwundbaren, signierten AMD-Treiber, um Sicherheits-Callbacks auszuschalten, und stiehlt danach Browser- und Wallet-Daten. Es handelt sich dabei um eine Malware-as-a-Service-Plattform, die andere Kriminelle mieten.
(Bild: KI-generiert / Dall-E)

Das Ontinue Cyber Defence Centre hat einen neuen Info Stealer analysiert: Lunex. Die An­griffskette richtet sich gegen ukrainischsprachige Nutzer und beginnt mit einer gefälschten CAPTCHA-Seite. Diese fordert das Opfer auf, einen „msiexec“-Befehl auszuführen. Damit wird ein Windows-Installer im MSI-Format von der Infrastruktur der Angreifer geladen und unbemerkt installiert. Die MSI-Datei benötigt keine Administratorrechte und legt die An­wendung in einem Verzeichnis innerhalb von „%LOCALAPPDATA%“ ab. Anschließend startet sie automatisch die nächste Stufe.

Der Loader verschleiert seine Aktivitäten

Die vierstufige Lunex-Angriffskette führt von der gefälschten CAPTCHA-Seite über den Loader und den verwundbaren AMD-Treiber bis zum LunexStealer.(Bild:  Ontinue)
Die vierstufige Lunex-Angriffskette führt von der gefälschten CAPTCHA-Seite über den Loader und den verwundbaren AMD-Treiber bis zum LunexStealer.
(Bild: Ontinue)

Bei der zweiten Stufe handelt es sich um einen Loader. Die 2,3 MB große Binärdatei wird von der zuvor installierten MSI-Datei gestartet und übernimmt die Vorbereitung der weiteren An­griffsschritte. Zugleich ist sie darauf ausgelegt, ihre Aktivitäten möglichst schwer analysierbar zu machen. So sind die operativen Zeichenketten der Binärdatei verschlüsselt und werden erst zur Laufzeit entschlüsselt. Dazu gehören unter anderem API-Namen, Dateipfade, Registry-Schlüssel, WMI-Abfragen, C2-Adressen und Prozessnamen.

Der Loader prüft, ob das System in einer virtuellen Maschine oder Sandbox läuft, und un­ter­sucht laufende Prozesse und Kernel-Module. Dabei gleicht er die gefundenen Komponenten mit einer verschlüsselten Liste von 20 Treibern ab. Sie enthält Komponenten von Microsoft Defender, Kaspersky, Dr.Web, Eset, Elastic, Sysmon, Crowdstrike und Sentinelone. Auch der Windows Filter Manager steht auf der Liste.

Anschließend bereitet der Loader den Zugriff auf Kernel-Ebene vor. Dazu liest er die für die jeweilige Windows-Version passenden Debugging-Symbole des Kernels vom Microsoft Symbol Server. Diese enthalten Informationen über die Strukturen und Speicherpositionen des laufenden Kernels. So kann der Loader unter anderem die Position verschiedener Callback-Mechanismen bestimmen.

Ein legitimer Treiber wird zum Angriffswerkzeug

Für die dritte Stufe kommt Bring Your Own Vulnerable Driver (BYOVD) zum Einsatz. Dabei bringen Angreifer einen legitimen und digital signierten, aber verwundbaren Treiber auf das Zielsystem und nutzen dessen Schwachstelle, um Operationen mit Kernel-Rechten durchführen zu können.

Die Analyse des AMD-Treibers „PDFWKRNL.sys“ zeigt die für Lunex relevanten IOCTL-Schnittstellen für Lese- und Schreibzugriffe auf den Kernel-Speicher (Bild:  Ontinue)
Die Analyse des AMD-Treibers „PDFWKRNL.sys“ zeigt die für Lunex relevanten IOCTL-Schnittstellen für Lese- und Schreibzugriffe auf den Kernel-Speicher
(Bild: Ontinue)

Lunex setzt dafür „PDFWKRNL.sys“ ein, einen AMD-Treiber für ein USB-C-Power-Delivery-Firmware-Update. Der Loader manipuliert zunächst Prozessinformationen, sodass er wie eine vertrauenswürdige Windows-Binärdatei erscheint. Anschließend nutzt er eine Windows-Komponente, um ohne UAC-Abfrage Administratorrechte zu erlangen. Danach aktiviert er das Privileg zum Laden von Kernel-Treibern, extrahiert „PDFWKRNL.sys“ aus seinem ver­schlüsselten Datenbereich, installiert den Treiber auf dem Zielsystem und lädt ihn.

Die Treiberdatei wird nach ihrer Signierung verändert. Da die Zertifikatskette weiterhin gültig ist und der Signaturzeitstempel innerhalb der Gültigkeitsdauer des Zertifikats liegt, lässt Windows den Treiber dennoch laden. Auch die Hypervisor-Protected Code Integrity (HVCI) und die Microsoft-Sperrliste für verwundbare Treiber verhindern das Laden dieser konkreten Variante nicht.

Der Treiber enthält eine Schwachstelle, die als CVE-2023-20598 bekannt ist. Er stellt zwölf sogenannte IOCTL-Schnittstellen bereit, führt dabei aber keine Zugriffskontrollen durch. Dadurch kann ein Prozess aus dem Benutzerkontext über den Treiber unter anderem auf Speicherbereiche des Kernels zugreifen. AMD hat die Schwachstelle in aktualisierten Treiberversionen bereits behoben.

Zwei der zwölf IOCTL-Schnittstellen sind für die Lunex-Angriffskette entscheidend: Eine liest Einträge aus den Kernel-Callback-Tabellen aus, die andere kann Daten in den Kernel-Speicher schreiben. Der Loader nutzt die erste Schnittstelle, um die Callback-Einträge den jeweiligen Kernel-Modulen zuzuordnen. Stimmen sie mit einem der 20 in der Liste erfassten Treiber überein, werden die entsprechenden Einträge über die Schreibfunktion auf null gesetzt.

Damit werden bestimmte Kernel-basierte Überwachungsmechanismen der zuvor identifizierten Sicherheitslösungen beeinträchtigt. Die Software selbst muss dafür nicht beendet werden. Genau darin liegt eine Besonderheit der Angriffskette: Der BYOVD-Schritt findet vor der Ausführung des eigentlichen Information Stealers statt. Der Stealer kann dadurch in einer Umgebung laufen, in der bestimmte Sicherheits-Callbacks bereits manipuliert wurden.

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zur IT-Sicherheit

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung. Die Einwilligungserklärung bezieht sich u. a. auf die Zusendung von redaktionellen Newslettern per E-Mail und auf den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern (z. B. LinkedIn, Google, Meta).

Aufklappen für Details zu Ihrer Einwilligung

LunexStealer übernimmt den Datendiebstahl

Erst nach diesem Schritt wird der eigentliche LunexStealer geladen. Die rund 275 KB große Binärdatei übernimmt zugleich die Funktion eines Command-and-Control-Agenten. Sie registriert das kompromittierte System bei der Lunex-Infrastruktur, empfängt Kon­fi­gurationsdaten und kann weitere Aufgaben abrufen.

Zu den wichtigsten Funktionen des Stealers gehört der Diebstahl von Zugangsdaten und anderen Daten aus sieben Chromium-basierten Browsern: Google Chrome, Microsoft Edge, Brave, Yandex Browser, Opera, Opera GX und Vivaldi. Erfasst werden unter anderem gespeicherte Zugangsdaten, Cookies, Kreditkartendaten und automatisch ausgefüllte Formulardaten.

Auch Daten aus Kryptowährungs-Wallets gehören zu den Zielen. Der Stealer durchsucht fünf Desktop-Wallets, darunter Bitcoin Core, Litecoin, Exodus, Atomic Wallet und Electrum, sowie vier Wallets in Form von Browser-Erweiterungen: MetaMask, MetaMask Legacy, OKX Wallet und SafePal.

Der Zugriff bleibt auch nach der Löschung bestehen

Darüber hinaus verfügt der LunexStealer über mehrere Mechanismen, um auch nach einem Neustart des Systems aktiv zu bleiben. Dazu gehören ein Registry-Run-Key und eine geplante Aufgabe. Besonders weitreichend ist ein dritter Mechanismus über die Native-Messaging-Funktion von Chrome und Edge.

Native Messaging ermöglicht normalerweise die Kommunikation zwischen Browser-Erweiterungen und Anwendungen auf dem lokalen Rechner. Lunex registriert dafür einen eigenen Native Messaging Host. Dahinter steht ein PowerShell-Skript, das unter anderem Laufwerke und Verzeichnisse auflisten, Dateien lesen und schreiben, Dateien herunterladen und Programme ausführen kann.

Der Mechanismus bleibt auch nach der Löschung der eigentlichen Stealer-Datei bestehen und überlebt sowohl einen Systemneustart als auch einen Neustart des Browsers. Wer lediglich die Stealer-Binärdatei entfernt, ohne die Native-Messaging-Registrierungen zu überprüfen, kann deshalb einen weiterhin bestehenden Zugriff über den Browser zurücklassen.

Zusätzlich manipuliert Lunex die Chrome-Konfiguration und installiert eine bösartige Browser-Erweiterung. Diese erhält umfangreiche Berechtigungen für Cookies, Browserverlauf, Tabs, Speicher und den Zugriff auf Webseiten.

Eine Plattform für mehrere Betreiber

Login-Seite eines C2-Panels der Lunex-Plattform(Bild:  Ontinue)
Login-Seite eines C2-Panels der Lunex-Plattform
(Bild: Ontinue)

Im Zuge der Analyse des LunexStealers zeigte sich, dass die zugehörige Infrastruktur deutlich größer ist als bislang dokumentiert. Bereits im Juni 2026 hatte Luke Wilkinson von Blue­TeamCoolTeam im Rahmen von OSINT-Recherchen sechs aktive Lunex-Panels in fünf Ländern dokumentiert. Im Zuge der aktuellen Analyse identifizierte Ontinue nun 28 Lunex-Panels in 13 Ländern.

Die Analyse der Panel-Software zeigt mehr als 150 russischsprachige Benutzer­ober­flächen­elemente. Russisch ist als Standardsprache hinterlegt. Zudem kommunizieren mehrere unterschiedliche Stealer-Codebasen mit derselben Panel-Architektur. Das spricht dafür, dass Lunex nicht als einzelne Malware, sondern als Plattform für mehrere unabhängige Betreiber eingesetzt wird.

Was Verteidiger beachten sollten

Die technische Besonderheit der Angriffskette liegt weniger in einer völlig neuen Angriffstechnik als in der Kombination bekannter Methoden: Der Loader nutzt den verwundbaren AMD-Treiber, um Kernel-Callbacks mehrerer Sicherheitslösungen zu manipulieren. Erst danach wird der Information Stealer geladen.

Für die Abwehr bedeutet das, dass die Erkennung möglichst früh ansetzen muss, bevor der Loader die Überwachungsmechanismen der Sicherheitslösungen beeinträchtigt. Hinweise liefern unter anderem PDB-Downloads durch Prozesse, die nicht aus Entwicklungsumgebungen stammen, das Ablegen von Treibern in temporären Verzeichnissen sowie das Anlegen von Diensten für Treiber aus ungewöhnlichen Pfaden.

Ist die Überwachung bereits beeinträchtigt, ist „NativeMessagingHosts\com.lunex.explorer“ ein entscheidender Hinweis auf eine Kompromittierung. Bei der Bereinigung sollten neben der Stealer-Binärdatei auch die zugehörige geplante Aufgabe, der Registry-Run-Key und die Native-Messaging-Registrierung berücksichtigt werden.

Über den Autor: Rhys Downing ist Threat Researcher bei Ontinue. Seine berufliche Laufbahn begann er in der IT als Techniker, wo er die Welt der Cybersicherheit kennenlernte. Schließlich entschied er sich für ein Studium im Bereich Cybersicherheit und arbeitete ab 2021 erstmals als SOC-Analyst. Besonders interessiert Downing an der IT-Sicherheit das Thema Malware.

(ID:50997353)