Im NPM-Paket-Repository wurde ein Sicherheitsproblem entdeckt, das es dem Paketinhaber ermöglicht, jeden Benutzer ohne dessen Zustimmung und ohne Informierung über die durchgeführte Handlung zu einem Maintainer hinzuzufügen. Das Problem wird dadurch verschärft, dass der ursprüngliche Autor des Pakets sich selbst aus der Liste der Maintainer entfernen konnte, nachdem er einen fremden Benutzer hinzugefügt hatte, wodurch dieser fremde Benutzer als das einzige verantwortliche Mitglied für das Paket blieb.
Angreifer könnten diese Schwachstelle ausgenutzt haben, um bösartige Pakete in die Liste bekannter Entwickler oder großer Unternehmen aufzunehmen. Dies soll das Vertrauen der Benutzer erhöhen und den Anschein erwecken, dass angesehene Entwickler für das Paket verantwortlich sind, obwohl sie tatsächlich nichts damit zu tun haben und nicht einmal von dessen Existenz wissen. Beispielsweise könnte ein Angreifer ein bösartiges Paket veröffentlicht, den Begleiter gewechselt und Benutzer eingeladen haben, eine neue Entwicklung eines großen Unternehmens zu testen. Diese Schwachstelle könnte auch genutzt worden sein, um den Ruf bestimmter Entwickler zu schädigen, indem sie als Verursacher fragwürdiger Aktionen und böswilliger Handlungen dargestellt werden.
Das Unternehmen GitHub wurde am 10. Februar über das Problem informiert und hat es am 26. April über npmjs.com behoben, indem es eine obligatorische Bestätigung der Benutzer einführte, um sich einem anderen Projekt anzuschließen. Entwicklern einer großen Anzahl von NPM-Paketen wird empfohlen, zu überprüfen, ob in den von ihnen verwalteten Paketen Bindungen hinzugefügt wurden, für die sie nicht ihre Zustimmung gegeben haben.
Quelle: opennet.ru
