105 Sekunden, um Ihre Pipeline zu stoppen: die Fragilität der Software-Versorgungskette

Autor: Veröffentlicht 4 min de lectura 143 Lesen

Die Bilder in diesem Artikel wurden mit künstlicher Intelligenz erstellt. So veröffentlichen wir

Am 5. Juni, Microsoft vorübergehend deaktivieren 73 Repositories, die unter mehreren offiziellen Organisationen in GitHub gehostet wurden, eine Aktion, die kontinuierliche Integration Pipelines unoperiert und verursachte Verwirrung zwischen Entwicklern, die von öffentlichen Aktionen wie Azure / Funktion-Action zur Bereitstellung von Cloud-Funktionen abhängig sind.

Obwohl die Entfernung kurz war - Microsoft sagt, dass die Inzidenz um 105 Sekunden enthalten war - und die Repositories wurden restauriert, die Folge ersetzt zwei Realitäten im Vordergrund: die Geschwindigkeit, mit der ein Eingriff auf der Plattform kritische Workflows brechen kann und die Fragilität der Software-Lieferkette, in der Akteure wie die angebliche Gruppe, die mit den Kampagnen Miasma / Shai-Hulud verbunden ist, die Fähigkeit gezeigt haben, zwischen Ökosystemen (npm, PyPI und Repositories in GitHub) zu schwenken und sowohl Pakete als auch Repositories und Workflows zu begehen. Für technische Lesungen über Forschung und Umfang siehe die Analyse von Cloudsmith auf Miasma in GitHub https: / / Cloud und die OpenSourceMalware Zusammenfassung von Vorfällen in Azure Repositories https: / / opensourcemalware.com / blog / miasma-reaches-azure.

105 Sekunden, um Ihre Pipeline zu stoppen: die Fragilität der Software-Versorgungskette
Bild generiert mit IA.

Microsoft erklärte, dass der Rücktritt durch die Untersuchung von "potentiell schädlichen Inhalten" motiviert war und dass es direkt eine kleine Gruppe von Kunden, die betroffene Inhalte heruntergeladen haben könnten, informierte. Andere Berichte weisen jedoch darauf hin, dass schädliche Versionen des dauerhaften Pakets in PyPI im Mai veröffentlicht wurden, was darauf hindeutet, dass die vorherige Reinigung unvollständig gewesen sein könnte und dass der Angreifer Artefakte wieder einführte. Diese Art von Wiedererscheinung ist typisch für Würmer, die gültige Zugriffe nutzen und die Ausbreitung durch Entwicklungswerkzeuge und CI automatisieren.

Die unmittelbare Wirkung dieser Vorfälle ist nicht nur technisch, sondern funktionsfähig: wenn ein Repository, das als Referenz für eine GitHub Aktion fungiert, verschwindet, scheitern die Workflows, die es ohne eine sichere Verankerung (z.B. mit einem SHA-Befehl oder einer signierten Version) verweisen. Die praktische Lehre ist, dass viele öffentliche Integrationen als risikoreiche externe Einheiten behandelt werden sollten, und konstruiert mit Ausfalltoleranz, Eindämmung und schnelle Austauschkapazität.

Für Entwicklungs- und Betriebsteams sollte das Risikomanagement spezifische Aktionen umfassen: Pinch- oder Verankerungsaktionen und Pakete an spezifische / SHAs-Versionen; manuelle Überprüfungs- und Genehmigungsverfahren für Workflow-Änderungen in kritischen Repositorien; Auditing von Protokollen und Token mit Priorität nach einem verdächtigen Ereignis; und die Freigabe von zumindest privilegierten Kontrollen für OIDC- und CI-Token. Darüber hinaus wird empfohlen, Verzögerungsfenster für die automatische Übernahme neuer Einheiten zu integrieren und neue Versionen für isolierte Tests einzureichen, bevor sie in produktive Umgebungen zu fördern.

105 Sekunden, um Ihre Pipeline zu stoppen: die Fragilität der Software-Versorgungskette
Bild generiert mit IA.

Aus einer Governance- und Reaktionsperspektive lohnt es sich, klare Kanäle mit Lieferanten und Plattformen (Microsoft, GitHub) zu halten, um direkte Meldungen im Falle von Verpflichtungen zu erhalten und Spielbücher zu haben, um wiederhergestellte Artefakte zu validieren. Eine Restaurierung, die als "rein" erklärt wird, ersetzt keine interne Überprüfung: Sie müssen Unterschriften, Hashes und die Rückverfolgbarkeit von Verpflichtungen überprüfen und Sicherheitsscans in rekonstruierten Pipelines durchführen.

Der Vorfall revidiert auch die Diskussion über Gemeinschafts- und Plattformmaßnahmen: GitHub und Lieferanten sollten dünnere Mechanismen zur Deaktivierung von defekten Geräten bereitstellen, ohne öffentliche Referenzen zu brechen, Unterschriften zu unterstützen und die Verifikation standardmäßig zu unterstützen und eine bessere vorläufige Berichterstattung und retrospektive Fähigkeiten zu bieten. Inzwischen können sich Entwickler auf GitHub Actions Sicherheitsführer und gute Abhängigkeitspraktiken verlassen, wie sie in GitHub Actions offizielle Dokumentation und Supply Chain Security veröffentlicht werden. https: / / docs.github.com / en / Aktionen / Sicherheitshinweise.

Letztlich zeigen Ereignisse im Zusammenhang mit Miasma / Shai-Hulud - auf verschiedenen Fronten berichtet, einschließlich npm und PyPI -, dass der Gegner auf die gleichen Hebel zeigt: Entwicklerkonten, unberücksichtigte Workflows und IA-gestützte Codierungswerkzeuge. Die Verteidigung erfordert eine Kombination von Geheimhygiene, CI / CD-Kontrollen, Unit Management Policy und kontinuierliche Überwachung. Auf diesen Schichten zu handeln, verringert sich die Wahrscheinlichkeit, eines der Projekte zu sein, die beim nächsten Mal der Angreifer seine Kampagne beschleunigt.

Deckung

Verwandte Artikel

Weitere Neuigkeiten zum selben Thema.