Vier Schadpakete in npm-Repository

Neue Kampagne macht über infizierte npm-Pakete Jagd auf Discord-Tokens und Kreditkarteninformationen.

Open-Source-Code ist ein Segen für die IT-Branche, da er Programmierern dabei hilft, Zeit zu sparen und Produkte schneller und effizienter zu entwickeln. Um diesen Wissensaustausch zu erleichtern, gibt es sogenannte Repositories, bei denen es sich um offene Plattformen handelt, auf denen Entwickler ihre eigenen Pakete inklusive Code veröffentlichen können, um den Entwicklungsprozess für andere zu beschleunigen.

Solche Repositorien erfüllen zahllose Bedürfnisse der IT-Community und werden bei der Entwicklung so gut wie jeder modernen Software eingesetzt: Webanwendungen, mobile Anwendungen, intelligente Geräte, Roboter uvm. Die beliebtesten Pakete werden dabei wöchentlich millionenfach heruntergeladen und bilden die Grundlage vieler Anwendungen, von kleinen Projekten bis hin zu bekannten Tech-Startups.

Schätzungen zufolge stammen 97 % des Codes in modernen Webanwendungen aus npm-Modulen. Ihre Popularität und Offenheit beim Hochladen beliebiger Pakete zieht jedoch auch unweigerlich Cyberkriminelle an. Auf diese Weise kompromittierten unbekannte Angreifer im Jahr 2021 mehrere Versionen einer beliebten JavaScript-Bibliothek, UAParser.js, indem sie Schadcode einschleusten. Die Bibliothek wurde zu diesem Zeitpunkt wöchentlich 6 bis 8 Millionen Mal heruntergeladen. Mithilfe der Infizierung waren Cyberkriminelle dazu in der Lage, Kryptowährung zu schürfen und vertrauliche Informationen wie Browser-Cookies, Kennwörter und Betriebssystem-Anmeldeinformationen von infizierten Geräten zu entwenden.

Hier aber ein noch aktuelleres Beispiel: Am 26. Juli 2022 entdeckten unsere Forscher eine neue Bedrohung, die im Open-Source-Repository npm auftauchte und die sie als LofyLife tauften.

 

Was ist LofyLife?

Indem sie ein internes, automatisiertes System zur Überwachung von Open-Source-Repositories nutzten, konnten unsere Forscher die bösartige Kampagne LofyLife identifizieren. Die Kampagne setzt vier Schadpakete ein, die die Malware Volt Stealer und Lofy Stealer im npm-Repository verbreiten, um Informationen wie Discord-Tokens und verknüpfte Kreditkarteninformationen der Opfer zu sammeln und Letztere über einen längeren Zeitraum auszuspionieren.

 

Die identifizierten Schadpakete scheinen für gewöhnliche Aufgaben wie die Formatierung von Überschriften oder bestimmte Spielfunktionen genutzt zu werden. Die Beschreibungen der Pakete sind unvollständig und vermitteln einen eher unseriösen Eindruck. Das Paket zum Formatieren von Überschriften war mit dem Hashtag „#brazil“ versehen und in brasilianischem Portugiesisch verfasst, was darauf hindeutet, dass es die Angreifer höchstwahrscheinlich auf Nutzer in Brasilien abgesehen haben. Andere Pakete hingegen wurden auf Englisch präsentiert, und zielen daher vermutlich auf Nutzer aus anderen Ländern ab.

 

[lofylife-malicious-packages-in-npm-repository-proc-title]

[Alt/title: Beschreibung des infizierten Pakets namens „proc-title“]

[Caption: Beschreibung eines der infizierten Pakete namens „proc-title“ (Übersetzung aus dem Portugiesischen: Mit diesem Paket wird die korrekte Groß- und Kleinschreibung in Überschriften gemäß dem Chicago Manual of Style gewährleistet.)

Diese Pakete enthielten jedoch stark verschleierten JavaScript- und Python-Schadcode, was ihre Analyse nach dem Upload ins Repository deutlich schwieriger machte. Die bösartige Nutzlast bestand aus in Python geschriebener Malware namens Volt Stealer – einem schädlichen Open-Source-Skript – sowie der JavaScript-Malware Lofy Stealer, die zahlreiche Funktionen aufweist.

Volt Stealer wurde verwendet, um Discord-Tokens von den infizierten Computern zusammen mit der IP-Adresse des Opfers zu stehlen und diese dann über HTTP hochzuladen. Der Lofy Stealer, eine neu entwickelte Malware der Angreifer, ist in der Lage, Discord-Clientdateien zu infizieren und die Handlungen des Opfers zu überwachen – so erkennt Lofy Stealer beispielsweise, wenn sich ein Nutzer anmeldet, die registrierte E-Mail oder das Passwort ändert, die Multi-Faktor-Authentifizierung aktiviert oder deaktiviert und neue Zahlungsmethoden hinzufügt (in diesem Fall stiehlt die Malware die vollständigen Kreditkartendaten).

 

So schützen Sie sich vor Schadpaketen

Open-Source-Repositorien ermöglichen die willkürliche Veröffentlichung von Paketen, von denen nicht alle zu 100 % sicher sind. So können Angreifer beliebte npm-Pakete beispielsweise imitieren, indem sie einen oder zwei Buchstaben im Namen ändern, um dem Nutzer vorzugaukeln, er würde das echte Paket herunterladen. Wir empfehlen daher, solche Pakete grundsätzlich nie als vertrauenswürdig zu behandeln.

Im Allgemeinen sind Entwicklungs- oder Build-Umgebungen beliebte Ziele für Angreifer, die versuchen, Supply-Chain-Angriffe zu organisieren. Das bedeutet, dass solche Umgebungen dringend einen starken Anti-Malware-Schutz wie Kaspersky Hybrid Cloud Security benötigen. Unsere Produkte identifizieren einen Angriff mit LofyLife folgendermaßen: HEUR:Trojan.Script.Lofy.gen and Trojan.Python.Lofy.a.

Wenn Sie von Kampagnen wie dieser, die sich über Open-Source-Code verbreiten, als Erste/r erfahren möchten, sollten Sie Feeds und Berichte abonnieren, die beispielsweise über das Threat Intelligence Portal bereitgestellt werden.

 

Tipps