Schädliche Pakete in JavaScript-Registry Hackergruppe aus Nordkorea greift npm-Registry an

Von Thomas Joos 2 min Lesedauer

Anbieter zum Thema

Sicherheitsforscher bei Datadog Security Labs haben mehrere Pakete in der npm-Registry identifiziert, die durch die nordkoreanische Hackergruppe Moonstone Sleet eingeschleust wurden.

Die nordkoreanische Hackergruppe Moonstone Sleet schleuste schädliche JS-Pakete in npm ein.(Bild:  Александр Бердюгин - stock.adobe.com)
Die nordkoreanische Hackergruppe Moonstone Sleet schleuste schädliche JS-Pakete in npm ein.
(Bild: Александр Бердюгин - stock.adobe.com)

Die Forscher bei Datadog Security Labs haben die JavaScript-Pakete harthat-api und harthat-hash eindeutig der Hackergruppe Moonstone Sleet aus Nordkorea zugeordnet.

Am 7. Juli 2024 veröffentlichte der npm-Benutzer "nagasiren978" zwei schädliche Pakete in der npm-Registry auf npmjs.org. Diese Pakete, mit den Namen "harthat-hash" und "harthat-api", enthalten bösartigen Code, der zusätzliche schädliche Software von einem Command-and-Control (C2) Server installiert. Die Struktur dieser C2-Infrastruktur deutet auf einen gezielten Angriff auf Windows-Systeme hin, da hauptsächlich Batch-Skripte und eine DLL bereitgestellt wurden.

Die Taktiken, Techniken und Prozeduren stimmen mit den Aktivitäten überein, die Microsoft als "MOONSTONE SLEET" bezeichnet. Dieser Akteur wird mit Nordkorea n Verbindung gebracht. Intern wird diese Bedrohungsgruppe als "Stressed Pungsan" bezeichnet, wobei die Bezeichnung auf eine in Nordkorea heimische Hunderasse verweist.

Dabei fiel das Paket "harthat-hash" v1.3.3 auf, das um 16:19 UTC veröffentlicht wurde, sowie "harthat-api" v1.3.1, das um 15:59 UTC veröffentlicht wurde. Auffällige Verhaltensweisen in diesen Paketen wurden identifiziert: Zum einen nutzt das Paket eine "preinstall"-Skript im package.json, um eine .js-Datei auszuführen und anschließend zu löschen. Zum anderen wird durch das Paket eine verdächtige URL angefordert, von der ein Payload heruntergeladen wird. Schließlich lädt das Paket die heruntergeladene DLL in den Speicher, indem die vertrauenswürdige Anwendung rundll32.exe missbraucht wird.

Die beiden Pakete unterscheiden sich lediglich durch den Wert des ID-Parameters in der URL, was auf die gezielte Anpassung der Payload für verschiedene Opfer hindeutet. Obwohl der Name der Pakete auf das legitime npm-Paket "Hardhat" hinweist, gibt es keine Hinweise darauf, dass eine Typo-Squatting-Strategie verfolgt wurde. Stattdessen wurde Code aus einem bekannten GitHub-Repository namens "node-config" kopiert, das über 6.000 Sterne und 500 Forks verfügt.

Das im "preinstall"-Skript ausgeführte deference.js-Skript erstellt eine Batch-Datei, die eine DLL von einem externen Server herunterlädt und diese über rundll32.exe ausführt. Diese Technik, bekannt als "System Binary Proxy Execution", ermöglicht es dem Angreifer, den DLL-Code durch eine vertrauenswürdige Systemanwendung auszuführen und so Sicherheitsmechanismen zu umgehen. Nach der Ausführung des Payloads wird die .js-Datei gelöscht und die package.json-Datei mit einer unveränderten Version ersetzt, um die ursprüngliche Funktionalität wiederherzustellen.

Beide Pakete wurden vom gleichen Autor veröffentlicht und nach wenigen Stunden wieder entfernt, was darauf hindeutet, dass der Angreifer versuchte, die Veröffentlichung schnell durchzuführen, um eine Erkennung und Blockierung zu vermeiden. Diese Methode wird häufig von nordkoreanischen Bedrohungsakteuren angewendet.

(ID:50131986)

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