Original-URL des Artikels: https://www.golem.de/news/google-entwickler-npm-malware-koennte-sich-als-wurm-verbreiten-1603-120011.html    Veröffentlicht: 29.03.2016 15:04    Kurz-URL: https://glm.io/120011

Google-Entwickler

NPM-Malware könnte sich als Wurm verbreiten

Wegen einiger Design-Prinzipien der Node-Paktverwaltung NPM könne sich ein schadhaftes Modul wie ein Wurm im gesamten System verbreiten, warnt ein Google-Entwickler. Gegen die Sicherheitslücke hilft vorerst nur Handarbeit.

Der vom Google-Entwickler Sam Saccone als "NPM Hydra Worm" beschriebene Angriff auf die Paketverwaltung für Node.js nutzt einige Schwäche im Design von NPM. Dadurch könnte sich ein schadhaftes Paket als Wurm in dem NPM-Archiv verbreiten. An wirksamen Gegenmaßnahmen arbeitet das Unternehmen NPM noch, bis diese umgesetzt sind, helfen nur Workarounds und manuelles Eingreifen.

Ein Wurm im Paket-Skript

Saccone kombiniert für seinen bereits Anfang Januar an NPM gemeldeten, theoretischen Angriff prinzipielle Arbeitsweisen der Paketverwaltung. So sind Pakete und ihre Abhängigkeiten nicht standardmäßig auf klar definierte Versionsnummern festgelegt, sondern akzeptieren auch größere Versionsbereiche, sofern dies nicht mit Shrinkwrap unterbunden wird.

Darüber hinaus bleiben Nutzer von NPM dauerhaft in dem Dienst angemeldet und müssen sich durch Eingabe eines Kommandos explizit abmelden. Gelingt es, ein schadhaftes Paket als Teil einer Update-Version zu verteilen, könnten sehr viele weitere Pakete dieses einspielen. Während einer Installation können die Pakete zudem eigene Skripte ausführen.

Ein solches Skript mit Schadcode könnte sich wiederum leicht weiterverteilen. Dazu reicht es aus, dass ein Paketbetreuer noch angemeldet ist und das Paket mit Schadcode als Abhängigkeit installiert. Die Malware könnte dann als Teil eines weiteren Pakets im NPM-Archiv publiziert werden, schließlich ist der Nutzer noch angemeldet. Da NPM ein zentrales Verzeichnis als Paketarchiv pflegt, ließe sich der Schadcode so sehr schnell verbreiten, vermutet Saccone.

NPM will Angriffsvektor schwächen

Als Gegenmaßnahme empfiehlt NPM hauptsächlich das Ausführen der Skripte entweder global oder auch nur zum Installationszeitpunkt abzuschalten. Außerdem erklärt NPM, dass es einen derartigen Wurm vermutlich durch eine wesentlich erhöhte Publikationshäufigkeit von Paketen entdecken könnte und dann eine weitere Verbreitung verhindern würde.

Das Unternehmen arbeite zurzeit daran, eine Zwei-Faktor-Authentifizierung für die Veröffentlichung von Paketen einzuführen. Die Schadsoftware könnte sich dann nicht mehr einfach selbst weiterverteilen. Letztlich könne NPM aber nicht sämtlichen Code scannen und hält es daher für möglich, dass in einer großangelegten Aktion Schadcode als Paket verteilt werden könnte. Der Dienst sei damit abhängig davon, dass die Community für sichere Pakete sorge.  (sg)


Verwandte Artikel:
Node.js: Hälfte der NPM-Pakete durch schwache Passwörter verwundbar   
(23.06.2017, https://glm.io/128552 )
Javascript-Server: Node 8 bringt neue V8-Compiler und neue API   
(31.05.2017, https://glm.io/128126 )
Open Source: Node.js-Foundation könnte Projektführung ändern   
(25.08.2017, https://glm.io/129683 )
Google: Chrome will nervige Werbe-Umleitungen blockieren   
(10.11.2017, https://glm.io/131090 )
IETF: TLS 1.3 ist zu sicher für Ciscos Sicherheitsboxen   
(02.11.2017, https://glm.io/130938 )

© 1997–2019 Golem.de, https://www.golem.de/