Angreifer haben Schadsoftware in 32 NPM-Pakete von Red Hat eingebaut.

Durch die Kompromittierung des Prozesses zur Erstellung von Releases basierend auf GitHub Actions in den Repositories RedHatInsights, die der Firma Red Hat gehören, konnten Angreifer 64 schadhafte Versionen in das NPM-Verzeichnis veröffentlichen, die 32 NPM-Pakete für die Plattform Red Hat Cloud Services betreffen. Für jedes der betroffenen NPM-Pakete wurden zwei schadhafte Versionen veröffentlicht, die Code für die Aktivierung einer neuen Variante des Wurms mini-shai-hulud integrierten, welcher Token und Anmeldedaten in der aktuellen Umgebung suchte.

Der Wurm war in der Datei index.js untergebracht und wurde über einen preinstall-Handler aktiviert, der beim Installieren des betroffenen Pakets aufgerufen wurde. Nach der Aktivierung suchte der Wurm im System nach Tokens für NPM (~/.npmrc), PyPI, CircleCI, AWS, GCP, Docker, Azure, HashiCorp und KubernetesK8s sowie nach privaten SSH-Schlüsseln. Die gefundenen Daten wurden an die Angreifer gesendet. Im Falle der Entdeckung eines Tokens für den Zugriff auf das NPM-Verzeichnis veröffentlichte der Wurm automatisch neue schadhafte Releases für die in der aktuellen Umgebung entwickelten Pakete und infizierte den Abhängigkeitsbaum.

Der Zugriff auf GitHub Actions wurde durch die Kompromittierung des Kontos eines Red Hat-Mitarbeiters erlangt, was es den Angreifern ermöglichte, direkt Commits in die Repositories javascript-clients, frontend-components und platform-frontend-ai-toolkit zu senden, ohne die Überprüfungsebene zu durchlaufen. Über die Commits wurde eine ci.yaml-Datei in das Continuous Integration-System eingespielt, die beim Start der Build-Arbeit über die Plattform bun das Skript _index.js aufrief. Das Skript nutzte die Berechtigung „id-token: write“, um von GitHub ein OIDC (OpenID Connect)-Token anzufordern, welches dann zur Authentifizierung in NPM über den Mechanismus „trusted publishing“ verwendet wurde.

NPM-Pakete, die schadhafter Code enthalten:

  • @redhat-cloud-services/chrome (2.3.1, 2.3.2)
  • @redhat-cloud-services/compliance-client (4.0.3, 4.0.4)
  • @redhat-cloud-services/config-manager-client (5.0.4, 5.0.5)
  • @redhat-cloud-services/entitlements-client (4.0.11, 4.0.12)
  • @redhat-cloud-services/eslint-config-redhat-cloud-services (3.2.1, 3.2.2)
  • @redhat-cloud-services/frontend-components (7.7.2, 7.7.3)
  • @redhat-cloud-services/frontend-components-advisor-components (3.8.2)
  • @redhat-cloud-services/frontend-components-config (6.11.3, 6.11.4)
  • @redhat-cloud-services/frontend-components-config-utilities (4.11.2, 4.11.3)
  • @redhat-cloud-services/frontend-components-notifications (6.9.2, 6.9.3)
  • @redhat-cloud-services/frontend-components-remediations (4.9.2, 4.9.3)
  • @redhat-cloud-services/frontend-components-testing (1.2.1, 1.2.2)
  • @redhat-cloud-services/frontend-components-translations (4.4.1, 4.4.2)
  • @redhat-cloud-services/frontend-components-utilities (7.4.1, 7.4.2)
  • @redhat-cloud-services/hcc-feo-mcp (0.3.1, 0.3.2)
  • @redhat-cloud-services/hcc-kessel-mcp (0.3.1, 0.3.2)
  • @redhat-cloud-services/hcc-pf-mcp (0.6.1, 0.6.2)
  • @redhat-cloud-services/host-inventory-client (5.0.3, 5.0.4)
  • @redhat-cloud-services/insights-client (4.0.4, 4.0.5)
  • @redhat-cloud-services/integrations-client (6.0.4, 6.0.5)
  • @redhat-cloud-services/javascript-clients-shared (2.0.8, 2.0.9)
  • @redhat-cloud-services/notifications-client (6.1.4, 6.1.5)
  • @redhat-cloud-services/patch-client (4.0.4, 4.0.5)
  • @redhat-cloud-services/quickstarts-client (4.0.11, 4.0.12)
  • @redhat-cloud-services/rbac-client (9.0.3, 9.0.4)
  • @redhat-cloud-services/remediations-client (4.0.4, 4.0.5)
  • @redhat-cloud-services/rule-components (4.7.2, 4.7.3)
  • @redhat-cloud-services/sources-client (3.0.10, 3.0.11)
  • @redhat-cloud-services/topological-inventory-client (3.0.10, 3.0.11)
  • @redhat-cloud-services/tsc-transform-imports (1.2.2)
  • @redhat-cloud-services/types (3.6.1, 3.6.2, 3.6.4)
  • @redhat-cloud-services/vulnerabilities-client (2.1.8, 2.1.9)

Quelle: opennet.ru

60GB SSD 8Gb DDR4