Dependabot ist GitHubs Dienst zur Verwaltung von Abhängigkeiten. Er liest Dateien mit Informationen zu neuen Paketversionen und erstellt Pull Requests, um Software-Verantwortliche über verfügbare Updates zu informieren. Künftig verzögert das Werkzeug den Update-Prozess standardmäßig um 72 Stunden, damit neu veröffentlichte Pakete nicht sofort automatisch übernommen werden.

GitHub begründet den Schritt damit, dass in vielen jüngeren Fällen schädliche npm-Pakete zwar innerhalb weniger Minuten nach ihrer Veröffentlichung von Sicherheitswerkzeugen erkannt und markiert wurden. Die schnelle Erkennung allein beseitige die Gefahr aber nicht: Repository-Verantwortliche und Anbieter müssten die Pakete erst noch entfernen. In diesem Zeitfenster könnten Entwickler und Projekte den schädlichen Code weiterhin herunterladen und einbinden.

Die Frist von drei Tagen sei als Ausgleich gewählt worden zwischen dem Vermeiden riskanter Releases und dem zeitnahen Einspielen neuer Versionen, erklärte GitHub. Nutzer können die Verzögerung über die Dependabot-Konfigurationsoption „cooldown“ allerdings auch kürzer oder länger einstellen.

Zugleich weist GitHub auf Grenzen des Mechanismus hin. Gegen längerfristige Kompromittierungen reiche die Abkühlphase allein nicht aus. Das Unternehmen empfiehlt deshalb zusätzlich Lockfiles zum Festschreiben von Abhängigkeiten, Token mit eingeschränktem Geltungsbereich sowie das Deaktivieren nicht benötigter Installationsskripte in CI-Umgebungen.

Auch PyPI führt eine neue zeitliche Hürde ein. Die Plattform blockiert Maintainer nun dabei, neue Dateien zu einer Paketveröffentlichung hinzuzufügen, wenn seit der Veröffentlichung mehr als 14 Tage vergangen sind. Damit soll verhindert werden, dass Angreifer nach einer Kompromittierung von Publishing-Token oder Workflows ältere, bereits vertrauenswürdige Releases nachträglich manipulieren.

Nach Angaben von PyPI lädt nur ein sehr kleiner Teil der Projekte legitimerweise noch mehr als zwei Wochen nach der Veröffentlichung zusätzliche Dateien hoch. Die Plattform betont zugleich, dass bei keinen bekannten früheren Angriffen auf PyPI bestätigt wurde, dass genau diese nun unterbundene Technik des „Release Poisoning“ eingesetzt wurde. Die Maßnahme sei in diesem Fall ausdrücklich vorbeugend gedacht, um eine gefährliche Möglichkeit zu blockieren.

Auslöser für die Verschärfungen ist eine Serie prominenter Vorfälle in den beiden Ökosystemen im vergangenen Jahr. Genannt werden die Angriffe auf „chalk“ und „debug“, die Operation „s1ngularity“, die Kampagne Shai-Hulud und der Supply-Chain-Angriff GhostAction. Die neuen zeitbasierten Barrieren sollen deren Auswirkungen begrenzen und bestimmte Angriffswege unattraktiver machen.