npm Supply-Chain-Angriff: Red Hat durch Mini Shai-Hulud Kompromittiert

npm Supply-Chain-Angriff: Red Hat durch Mini Shai-Hulud Kompromittiert

lschvn

Am 1. Juni 2026 identifizierte Wiz Research eine neue Welle von npm-Supply-Chain-Kompromittierungen, die auf den npm-Namensraum @redhat-cloud-services abzielten. Die Kampagne, genannt Miasma, schleuste Credential-Diebstahl-Malware in mindestens 32 Paket-Releases ein, mit insgesamt rund 80.000 Weekly Downloads. Der bösartige Code wurde inzwischen größtenteils widerrufen, aber der Vorfall zeigt, wie weit Supply-Chain-Angreifer sich entwickelt haben.

Ein Vertrautes Werkzeugset mit Neuen Tricks

Die Payload stammt von der Mini-Shai-Hulud-Malware, die von der Bedrohungsgruppe TeamPCP Ende 2025 Open-Source gestellt wurde. Frühere Kampagnen mit diesem Toolkit zielten auf Tanstack und andere große npm-Pakete ab. Der Miasma-Variant nimmt kosmetische Änderungen vor — Dune-Referenzen werden durch griechische Mythologie ersetzt ("spartan") — aber das zugrunde liegende Vorgehen bleibt im Wesentlichen gleich.

Was sich in dieser Iteration geändert hat, ist der Zielumfang. Die Malware sammelt jetzt explizit GCP- und Azure-Identitäten und erfasst jede Cloud-Identität, auf die die infizierte Maschine Zugriff hat. Anstatt nur Secrets zu extrahieren, sind die Angreifer nun daran interessiert, direkten Zugang zu Cloud-Umgebungen selbst zu erhalten.

Die zweite bemerkenswerte Evolution ist Per-Infection-Verschlüsselung. Frühere Shai-Hulud-Varianten replizierten sich mit minimaler Variation, was Hash-basiertes IOC-Tracking ermöglichte. Miasma generiert eine einzigartig verschlüsselte Payload für jede Infektion, was bedeutet, dass ein Hash, der eine kompromittierte Maschine erkennt, eine andere nicht erkennen wird.

Wie der Angriff Funktionierte

Beweise deuten darauf hin, dass ein Red-Hat-Mitarbeiter-GitHub-Konto kompromittiert und用来 push bösartiger Orphan-Commits auf drei RedHatInsights-Repositories :

  • RedHatInsights/frontend-components
  • RedHatInsights/javascript-clients
  • RedHatInsights/platform-frontend-ai-toolkit

Diese Commits führten einen minimalen GitHub-Actions-Workflow ein, der bei jedem Push auf jeden Branch ausgelöst wurde. Der Workflow forderte ein GitHub-OIDC-Identitätstoken (id-token: write) an und führte eine obfuscated Payload _index.js aus, die Pakete direkt auf npm veröffentlichte — mit gültigen SLSA-Provenienz-Attestierungen.

SLSA-Provenienz soll verifizieren, dass ein Paket aus einem spezifischen Source-Commit von einem vertrauenswürdigen Builder gebaut wurde. Indem sie gültige Attestierungen generierten, machten die Angreifer die bösartigen Pakete als legitime Red-Hat-Releases erscheinen und unterminierten damit einen Schlüsselmechanismus der Supply-Chain-Sicherheit.

Umfang der Schäden

Der Angriff traf eine breite Palette von Red-Hat-Cloud-Services-JavaScript-Clients :

PaketKompromittierte Versionen
@redhat-cloud-services/topological-inventory-client3.0.10, 3.0.11, 3.0.13
@redhat-cloud-services/rbac-client9.0.3, 9.0.4, 9.0.6
@redhat-cloud-services/insights-client4.0.4, 4.0.5, 4.0.7
@redhat-cloud-services/frontend-components7.7.2, 7.7.3, 7.7.5
@redhat-cloud-services/notifications-client6.1.4, 6.1.5, 6.1.7

Eine zweite Welle erschien am 4. Juni und nutzte binding.gyp (eine native Node.js-Build-Konfigurationsdatei), um während der Paketinstallation bösartigen Code auszuführen, konsistent mit der Miasma-Kampagne.

Was das für das npm-Ökosystem Bedeutet

Der Miasma-Angriff demonstriert eine beunruhigende Progression im npm-Supply-Chain-Krieg. Drei Kernpunkte :

Vertrauenswürdige Publisher sind das schwache Glied. SLSA-Provenienz, OIDC-Tokens und "verifizierter Herausgeber"-Badges wurden hier alle untergraben. Das Sicherheitsmodell nimmt an, dass die GitHub- und npm-Konten eines Herausgebers sicher sind. Beide wurden kompromittiert.

Open-Source-Malware senkt die Einstiegshürde. TeamPCP hat den Mini-Shai-Hulud-Code öffentlich veröffentlicht. Miasma wird nicht mit Sicherheit TeamPCP zugeschrieben — die Ähnlichkeiten könnten auf Copycat-Akteure hinweisen, die dasselbe öffentlich verfügbare Toolkit nutzen.

Erkennung wird schwieriger, nicht einfacher. Per-Infection-Verschlüsselung, SLSA-Attestierungsmissbrauch und Living-off-the-Land-Techniken bedeuten, dass traditionelle Verteidigungen (Paket-Scanning, Hash-basierte IOCs) zunehmend unzureichend sind.

Empfohlene Maßnahmen

Organisationen, die Red-Hat-JavaScript-Clients verwenden, sollten :

  1. Systeme auf betroffene Paketversionen prüfen und auf gepatchte Releases aktualisieren
  2. Alle Secrets erneuern, die von Entwickler-Workstations aus zugänglich sind — GitHub-Tokens, Cloud-Credentials, CI/CD-Secrets
  3. GitHub-Aktivität überprüfen auf nicht autorisierte Repositories, neue Zugriffstokens oder verdächtige Workflow-Ausführungen
  4. Dependency-Allowlisting implementieren und über .npmrc oder Unternehmensrichtlinie durchsetzen
  5. SBOMs für alle Produktionsabhängigkeiten generieren, um schnellere Incident-Response zu ermöglichen

Das npm-Ökosystem bleibt ein Hochwert-Ziel. Miasma ist kein isolierter Vorfall — es ist die letzte Iteration einer eskalierenden Kampagne.

Häufig gestellte Fragen

Verwandte Artikel

Weitere Berichterstattung zu ähnlichen Themen und Tags.

State of Web Dev AI 2026: KI-generierter Code Steigt auf 54%, Claude dominiert bei Bezahl-Nutzung
TypeScript

State of Web Dev AI 2026: KI-generierter Code Steigt auf 54%, Claude dominiert bei Bezahl-Nutzung

Der State of Web Dev AI 2026 zeigt: 54% des Codes werden von KI generiert (vs. 28% 2025), Coding-Agents steigen auf, und 60% der Befragten sehen eine KI-Blase.
Node.js 26.3.0: Buffer-Pool verdoppelt, permission.drop() Methode,macOS Intel-Binary vor dem Aus
TypeScript

Node.js 26.3.0: Buffer-Pool verdoppelt, permission.drop() Methode,macOS Intel-Binary vor dem Aus

Node.js 26.3.0 bringt einen standardmäßigen Buffer.poolSize von 64 KiB, die neue Methode permission.drop() zur feingranularen Abgabe von Berechtigungen, eine Warnung zu macOS Universal-Binaries und gehärtetes WebCrypto. npm wird auf 11.16.0 aktualisiert.
Oxc v0.134: oxlint v1.68 Bringt Vue-Linter-Regeln und TypeScript-Accessor-Prüfungen
JavaScript

Oxc v0.134: oxlint v1.68 Bringt Vue-Linter-Regeln und TypeScript-Accessor-Prüfungen

Oxc's Juni-Release liefert oxlint v1.68.0 mit zwei neuen Vue-Regeln, einer method-signature-style TypeScript-Regel und Parser-Verbesserungen, die Ambient-Context-Missbrauch ablehnen.

Kommentare

Anmelden Melden Sie sich an, um an der Diskussion teilzunehmen.

Noch keine Kommentare. Seien Sie der Erste, der seine Gedanken teilt.