SchwachstellenHackerangriffeCyberkriminalität

npm verschärft Sicherheit: 2FA-Gating und Installationskontrolle gegen Supply-Chain-Attacken

npm verschärft Sicherheit: 2FA-Gating und Installationskontrolle gegen Supply-Chain-Attacken
Zusammenfassung

npm, das zentrale Paketmanagement-System für JavaScript und Node.js, erhält bedeutende Sicherheitsverbesserungen im Kampf gegen Supply-Chain-Attacken. Microsoft hat über GitHub zwei neue Funktionen eingeführt: Ein „Staged Publishing"-System, das ein zweites Authentifizierungsfaktor (2FA) für jede Paketveröffentlichung durch einen menschlichen Maintainer erfordert, sowie neue Install-Source-Flags für granulare Kontrolle über Paketquellen. Diese Maßnahmen adressieren eine dramatisch gestiegene Zahl von Angriffen auf Open-Source-Ökosysteme, bei denen Cyberkriminelle beliebte Pakete kompromittieren und mit Malware versehen. Für deutsche Entwickler und Unternehmen ist dies hochrelevant, da JavaScript- und Node.js-Projekte weltweit verbreitet sind und viele deutsche IT-Organisationen auf npm-Pakete angewiesen sind. Die neuen Kontrollmechanismen bieten eine zusätzliche Schutzebene gegen automatisierte Attacken und kompromittierte CI/CD-Pipelines. Besonders für deutsche Unternehmen in sicherheitskritischen Branchen wie Finanzwesen, Gesundheit und kritischer Infrastruktur könnte die Implementierung dieser Funktionen entscheidend sein, um Softwarezulieferketten abzusichern und regulatorische Anforderungen zu erfüllen.

Die Maßnahme kommt zu einem kritischen Zeitpunkt. In den vergangenen Monaten hat sich die Zahl der Angriffe auf Open-Source-Ökosysteme dramatisch verschärft. Die Cyberkriminellen-Gruppe TeamPCP hat dabei Schlagzeilen gemacht, indem sie beliebte Pakete in großem Umfang durch einen selbstverstärkenden Kompromisskomplex vergiftet hat.

Wie funktioniert Staged Publishing?

Statt eine Paketversion direkt zu veröffentlichen und sofort verfügbar zu machen, wird das vorkompilierte Tarball zunächst in eine Staging-Queue hochgeladen. Ein Paketmaintainer muss dieses Release explizit freigeben, bevor es installierbar wird. GitHub betont, dass dieser Prozess auch für automatisierte CI/CD-Workflows und vertrauenswürdige Veröffentlichungen mit OpenID Connect (OIDC) Authentifizierung “Proof of Presence” bietet — also den Nachweis, dass ein menschlicher Akteur bei jedem Publish-Vorgang beteiligt war.

Anforderungen und Implementierung

Paketmaintainer müssen bestimmte Voraussetzungen erfüllen, um Staged Publishing nutzen zu können. Der Befehl “npm stage publish” wird aus dem Root-Verzeichnis des Pakets ausgeführt. Dafür ist ein Update auf npm CLI Version 11.15.0 oder neuer erforderlich. GitHub empfiehlt dringend, Staged Publishing mit Trusted Publishing via OIDC zu kombinieren, um maximalen Schutz zu bieten.

Neue Install-Source-Flags

Zusätzlich zu Staged Publishing führt npm drei neue Install-Source-Flags ein, die das bestehende “-allow-git”-Flag ergänzen. Diese ermöglichen Entwicklern, einen expliziten Allowlist-Ansatz auf alle nicht-Registry-Installationsquellen anzuwenden — ein wichtiger Schritt zur Minimierung von Risiken durch unautentifizierte oder manipulierte Paketquellen.

Relevanz für deutsche Entwickler

Diese Sicherheitsverbesserungen sind für die deutsche Softwareindustrie bedeutsam. Viele deutsche Unternehmen und Entwickler nutzen npm-Pakete intensiv in ihren Projekten. Die neuen Kontrollen reduzieren das Risiko von Lieferkettenkompromissen erheblich und helfen bei der Einhaltung von Datenschutz- und Sicherheitsanforderungen nach DSGVO und den Empfehlungen des BSI. Organisations- und Paketmaintainer sollten diese Features zeitnah evaluieren und implementieren.