Malware in weit verbreiteter JavaScript-Bibliothek UAParser.js entdeckt

Das NPM-Paket namens UAParser.js, das auf Hundertausenden Computern rund um den Globus installiert ist, wurde mit einem Passwortdieb und einem Krypto-Miner infiziert. So handeln Sie richtig.

Unbekannte Angreifer haben mehrere Versionen der weitverbreiteten JavaScript-Bibliothek UAParser.js kompromittiert, indem Schadcode eingeschleust wurde. Laut der Statistik auf der Website der Entwickler, wird diese Bibliothek in vielen Projekten verwendet und verzeichnet wöchentlich von 6 bis 8 Millionen Downloads.

Die Bedrohungsakteure kompromittierten drei Versionen der Bibliothek: 0.7.29, 0.8.0 und 1.0.0. Alle Benutzer und Administratoren sollten umgehend die Bibliotheken auf die neuen Versionen 0.7.30, 0.8.1 beziehungsweise 1.0.1 aktualisieren.

Was ist UAParser.js und warum ist es so beliebt?

JavaScript-Entwickler verwenden die Bibliothek UAParser.js für das Parsen (maschinenlesbare Daten analysieren, segmentieren und codieren) der User-Agent-Daten, die von den Browsern gesendet werden. UAParser.js wird auf vielen Websites implementiert und in den Software-Entwicklungsprozessen von diversen Unternehmen verwendet, darunter Facebook, Apple, Amazon, Microsoft, Slack, IBM, HPE, Dell, Oracle und Mozilla. Darüber hinaus verwenden manche Entwickler Drittanbieter-Tools, wie Karma-Framework für Code-Testing, die auch von dieser Bibliothek abhängen, wodurch der Reichweite des Angriffs vergrößert wird, da dies ein weiteres Kettenglied der Lieferkette darstellt.

Einschleusen von Schadcode

Die Angreifer betteten das schädliche Skript in die Bibliothek ein, das daraufhin Schadcode auf dem Computer des Opfers herunterlädt und ausführt – sowohl auf Linux als auch auf Windows. Der Zweck einer der Module besteht darin Kryptowährung zu schürfen. Ein weiteres Modul (nur für Windows) ist dazu in der Lage vertrauliche Informationen zu stehlen, wie zum Beispiel Browser-Cookies, Zugangsdaten für das Betriebssystem und andere Passwörter.

Möglicherweise ist das aber längst noch nicht alles: Laut einer Warnung der US-amerikanischen Sicherheitsbehörde Cybersecurity & Infrastructure Security Agency (CISA), könnte die Installierung von kompromittierten Bibliotheken den Angreifern ermöglichen, die Kontrolle über die infizierten Systeme zu übernehmen.

Nach GitHub-Benutzern, erstellt die Malware folgende Binärdateien: jsextension (in Linux) und jsextension.exe (in Windows). Die Präsenz dieser Dateien ist ein klares Anzeichen dafür, dass das System kompromittiert wurde.

Wie der Schadcode in die JavaScript-Bibliothek UAParser.js eingeschleust wurde

Faisal Salman, der Entwickler des UAParser.js-Projekts erklärte, dass ein nicht identifizierter Angreifer Zugriff auf sein Konto im NPM-Repository erhalten hatte und drei schädliche Versionen der UAParser.js-Bibliothek veröffentlichte. Der Entwickler fügte den drei kompromittierten Versionen sofort eine Warnung hinzu und kontaktierte den NPM-Support, der die gefährlichen Versionen schnell entfernte. Trotz des schnellen Handelns wurden in der Zeit, in der die infizierten Pakete noch online verfügbar waren, eine beträchtliche Anzahl heruntergeladen.

Anscheinend waren die NPM-Pakete mit Schadcode am 22. Oktober ca. 4 Stunden online: Von 14:15 bis 18:23 Uhr CET. Am Nachmittag desselben Tages bemerkte der Entwickler ungewöhnliche Spam-Aktivitäten in seinem Posteingang – die ihn vermuten ließ, dass etwas nicht mit rechten Dingen zugeht – und entdeckte den Hauptgrund des Problems.

Was kann ich tun, wenn ich eine infizierte Bibliothek heruntergeladen habe?

Führen Sie zuerst einen Malware-Scan auf allen betroffenen Computern durch. Alle Komponente der Malware, die für diesen Angriff verwendet wird, werden erfolgreich von unseren Produkten erkannt.

Aktualisieren Sie danach die Bibliotheken auf die gepatchte Version: 0.7.30, 0.8.1 und 1.0.1. Diese Maßnahmen sind allerdings unzureichend: Auf der GitHub Advisory Database wird angegeben, dass jeder Computer, auf dem eine infizierte Version der Bibliothek installiert oder ausgeführt wurde, als vollkommen kompromittiert betrachtet werden sollte. Aus diesem Grund wird Benutzern und Administratoren empfohlen auch alle Zugangsdaten zu ändern, die auf diesen Computern verwendet wurden.

Im Allgemeinen sind Entwicklungs- oder Build-Umgebungen beliebte Angriffsziele von Internetverbrechern, um Lieferkettenangriffe durchzuführen. Folglich brauchen besonders solche Umgebungen einen effektiven Malware-Schutz.

Tipps