Der September-Angriff auf npm hat gezeigt, dass das JavaScript-Ökosystem anfällig ist. Angreifer zielen zunehmend auf beliebte Pakete ab, da sie durch sie in Tausende von Projekten „hineinschleichen“ können. GitHub, als Eigentümer von npm, wartete nicht auf die nächste Krise und führte neue Schutzmechanismen ein.
Die bemerkenswertesten von ihnen sind trusted publishing und erweiterte Überprüfungen beim Veröffentlichen von Paketen.

Was ist Trusted Publishing?
Trusted Publishing ist ein neues Modell zum Veröffentlichen von Paketen in npm, das die Notwendigkeit beseitigt, geheime Token zu speichern und zu verwenden. Stattdessen können Pakete jetzt direkt veröffentlicht werden, indem man GitHub Actions oder einem anderen CI/CD-Anbieter vertraut.
Keine Token — nichts zu verlieren.
Verknüpfung der Veröffentlichung mit dem Repository, d.h. mit einem bestimmten Code.
Einfache Einrichtung: GitHub bestätigt die Urheberschaft und „signiert“ das Paket.
Neue Überprüfungen bei der Veröffentlichung
Überprüfung des Paketinhabers – Veröffentlichung nur durch bestätigte Teilnehmer möglich.
Verifizierung des Quellcodes - Die Verbindung zwischen den Quellen und dem Paket wird transparenter.
Protokollierung und Audit — Jetzt ist es einfacher zu verfolgen, wer genau die Veröffentlichung gestartet hat und welcher Code zugrunde lag.
Warum ist das für alle wichtig?
Es mag den Anschein haben, dass die Änderungen nur Maintainer großer Bibliotheken betreffen, aber das ist nicht der Fall.
Für Anwendungsentwickler: weniger Chancen, ein infiziertes Paket zu erhalten.
Für Autoren von Bibliotheken: Es ist nicht nötig, Token zu speichern, die gestohlen werden können.
Für Unternehmen: transparenter Auditprozess und mehr Vertrauen in die Sicherheit der Lieferkette.
Vergleich des alten und des neuen npm-Veröffentlichungsprozesses
Phase | Früher (vor trusted publishing) | Jetzt (mit trusted publishing) |
|---|---|---|
Authentifizierung | Geheime npm-Token, manuelle Speicherung oder in CI. | Keine Token erforderlich: GitHub Actions bestätigt die Urheberschaft. |
Sicherheit | Hohes Risiko eines Token-Lecks. | Keine Token — nichts zu verlieren, die Veröffentlichung ist an den Code gebunden. |
Transparenz | Es ist schwierig, die Version mit dem Code zu verknüpfen. | Automatische Verifizierung: Das Paket ist mit den Quellcodes verknüpft. |
Audit | Manuelle Prüfungen. | Detaillierte Veröffentlichungsprotokolle. |
Einstellung | Manuelle Erstellung und Speicherung von Token. | Einmalige Einrichtung von trusted publishing. |
Veröffentlichungsprozess mit Trusted Publishing
flowchart TD
A[Разработчик пушит код в GitHub] --> B[Запуск GitHub Actions workflow]
B --> C[Сборка и тесты проекта]
C --> D[GitHub подтверждает авторство и репозиторий]
D --> E[Trusted Publishing: передача данных в npm]
E --> F[npm получает пакет]
F --> G[Верификация пакета и исходников]
G --> H[Успешная публикация в npm Registry]

Was Entwickler jetzt tun sollten
Überprüfen Sie das Repository auf GitHub und Zugriff auf die Einstellungen.
Aktivieren Sie GitHub Actions, wenn Sie CI/CD noch nicht verwenden.
Konfigurieren Sie trusted publishing in npm: Verknüpfen Sie das Paket mit dem Repository.
Entfernen Sie alte Tokenum das Risiko von Lecks zu verringern.
Aktualisieren Sie die Dokumentation, mit dem Hinweis, dass die Veröffentlichung über trusted publishing erfolgt.
GitHub macht den richtigen Schritt: Die Schwachstellen des Ökosystems können nicht allein durch die „manuelle Disziplin“ der Entwickler behoben werden. Es wird ein automatischer und integrierter Schutz benötigt. Trusted Publishing und neue Überprüfungen sind nicht nur eine Annehmlichkeit, sondern ein grundlegender Schritt in Richtung eines sicheren und vertrauenswürdigen Ökosystems.
Kodik hilft sowohl Anfängern als auch erfahrenen Entwickler:innen, moderne Tools zu verstehen und sicherer zu arbeiten.
Abonnieren Sie unseren Blog und Telegram-Kanalum über neue Technologien auf dem Laufenden zu bleiben.
