Wie (un-)sicher ist npm?

npm Sicherheit: Review für 2019 zeigt Rekord an Security Advisories
Keine Kommentare

npm soll sicherer werden. Aber wie erfolgreich ist das Unternehmen hinter dem JavaScript Package Manager in dieser Hinsicht? Die npm Security Review 2019 gibt Einblick in Erfolge und Hürden für die Sicherheit der Plattform: Viele Probleme konnten im letzten Jahr gefunden werden, andere aber nur gemeldet.

Auf npm veröffentlichte Packages sind ein zentraler Bestandteil vieler Webanwendungen. Das macht das Package Registry auch zu einer interessanten Plattform für verschiedene Arten von Angriffen und die Verbreitung von Malware. Nachdem in den vergangenen Jahren einige Sicherheitslücken offensichtlich geworden waren, hat npm Inc. wiederholt über ihre Bemühungen zur Absicherung der Plattform berichtet. So soll ein neues Behavioral Analysis API zu einer schnelleren Erkennung von Sicherheitslücken führen. Außerdem wurden verschiedene kostenpflichtige Angebote für den Enterprise-Einsatz vorgestellt, die zusätzliche Sicherheitsfeatures bieten. Die Security Review 2019 von Adam Baldwin, VP of Security von npm, zeigt nun auf, wo npm bereits Fortschritte gemacht hat und wo noch Schwächen liegen.

npm Security: Schutz gegen bereits geklaute Passwörter

Zu den bekannt gewordenen Vorfällen der vergangenen Jahre gehört, dass Malware über ein zu ESLint gehöriges Package ausgeliefert wurde. Ein offiziell am Projekt beteiligter Entwickler hatte zuvor dasselbe Passwort zum Zugriff auf einer anderen Website verwendete. Eine dortige Sicherheitslücke ermöglichte dann den Zugriff auf das ESLint Package. In Reaktion darauf prüft npm nun bei der Erstellung neuer Accounts, ob das gewünschte Passwort bereits in einem Breach enthalten war. Bei 13,37 Prozent der im vergangenen Jahr neu angelegten Accounts führte dies dazu, dass ein Passwort abgelehnt wurde. Auch die zur Veröffentlichung auf npm notwendigen Tokens können nun nicht mehr genutzt werden, wenn sie auf GitHub offen gelegt wurden. Findet sich ein Token im Code auf GitHub, wird das Token widerrufen. Das betraf im Jahr 2019 insgesamt 737 Tokens.

Mit dem neuen, noch nicht öffentlich verfügbaren Behavioral Analysis API wurden außerdem bereits 1,4 Millionen Reports über das Verhalten von Packages zur Laufzeit erzeugt. Das API wurde in einem dreiteiligen Blogpost ausführlich vorgestellt und soll in Zukunft dazu verwendet werden, auffälliges Verhalten von Packages früher zu erkennen, indem beispielsweise DNS Requests identifiziert werden. Diese Neuerung kann im Kontext des event-stream-Vorfalls verstanden werden. Malware, die in event-stream eingeschleust wurde, hatte über Monate hinweg Zugriffe auf ein Bitcoin-Wallet durchführen können, ohne bemerkt zu werden. Zu diesem langen Zeitraum trug bei, dass die verwendete Malware keinen Schaden in der Software anrichtete, in die sie eingeschleust worden war.

Rekordzahl an Security Advisories veröffentlicht

Einen Angriff auf ein Cryptocurrency-Wallet fand jedoch auch im vergangenen Jahr statt. Auch hier verging, wie dem Bericht im npm-Blog entnommen werden kann, einige Zeit, bevor der schädliche Code bemerkt wurde. Nachdem derartige Probleme auffallen, werden Nutzer per npm audit gewarnt, falls ihr Projekt betroffen ist. Bemerkenswert ist in diesem Kontext ist jedoch auch die ausgesprochen hohe Anzahl an Security Advisories, die im vergangenen Jahr erstellt wurden. Die Security Advisories wurden bereits 2015 eingerichtet. Von 1285 in der Datenbank vorhandenen Berichten sind allerdings 595 im Jahr 2019 erstellt worden. Ob diese Zahl auf eine größere Menge an Angriffen zurückzuführen ist oder nur die Quote der entdeckten Attacken erhöht werden konnte, bleibt in der Review von Adam Baldwin offen.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -