Sysdig analysierte den schwerwiegenden „Shai Hulud“-Lieferkettenvorfall und zeigt auf, wie die Malware Self-hosted GitHub Actions Runner als versteckte Backdoors nutzt. Mit dieser Methode erhält sie unentdeckt dauerhaften Zugriff auf Netzwerke.
Self-hosted GitHub Actions Runner eignen sich aufgrund ihrer Eigenschaften – wie der Fähigkeit, beliebigen Code auszuführen und persistenten Zugriff auf interne Netzwerke zu bieten – für Angreifer perfekt, um dort Backdoors zu verstecken.
(Bild: oz - stock.adobe.com)
Die Entdeckung von „Shai Hulud“, einer Malware im npm-Ökosystem, die sich selbst repliziert und schwer zu erkennen ist, hat die JavaScript Community erschüttert. Cybersicherheitsexpertinnen und -experten sind sich einig, das Shai Hulud erst der Anfang einer neuen Ära von Supply-Chain-Würmern ist. Aus diesem Grund hat sich das Forschungsteam von Sysdig genauer angesehen, wie solche Würmer als Backdoors eingesetzt werden.
Beim Einsatz solcher Supply-Chain-Würmer wie Shai Hulud ist das Ziel der Angreifer, sich dauerhaften Zugriff auf fremde Netzwerke zu verschaffen. Der Untersuchung von Sysdig zufolge, bleiben sie dabei von klassischen Network-Detection-Lösungen meist unentdeckt. Konkret hat der Hersteller untersucht, wie Bedrohungsakteure self-hosted GitHub Actions Runner missbrauchen, um persistenten Remote-Zugriff aufzubauen.
Da self-hosted Runner, als Programme oder Instanzen, die in der Continuous-Integration/Continuous-Deployment-Umgebungen (CI/CD) verwendet werden, um automatisierte Aufgaben auszuführen, auf der Infrastruktur der Organisation laufen, eignen sie sich den Forschern zufolge perfekt, um dort Backdoors zu platzieren. Denn die self-hosted Runner würden oft Zugriff auf interne Netze und potenziell gecachte Secrets oder Credentials bieten.
Zudem seien self-hosted Runners in der Regel so konzipiert, dass sie jeden Code ausführen können, der in den GitHub Actions Workflows definiert ist. Zwar hätten User so die vollständige Kontrolle darüber haben, welche Skripte und Kommandos auf diesen Runnern ausgeführt werden. Dies kann laut Sysdig jedoch auch zum Sicherheitsrisiko werden, wenn der Runner Opfer eines Cyberangriffs wird. Ein weiterer Grund, warum self-hosted Runners beliebte Ziele für Angreifer seien, liege daran, dass sich das Onboarding von
GitHub Actions sich auf einen sogenannten „low friction“-Prozess beziehe. Dies bedeute, dass das Onboarding absichtlich „low friction“ gestaltet wurde, sodass Nutzer mit nur dem Befehl „./config.sh“ und einem Registrierungstoken schnell einen neuen Runner einrichten könnten, was eine langfristige Verbindung zu GitHub ermögliche. Allerdings bestehe dabei auch die Gefahr, dass Sicherheitsvorkehrungen, insbesondere im Umgang mit Administrator-Rechten der Tokens, vernachlässigt würden, da solche Tokens auch über die GitHub-API generiert werden könnten.
Sysdig erläutert am Beispiel von Shai-Hulud wie dieser Wurm als Backdoor genutzt wurde. Nach der initialen Kompromittierung über npm-Pakete habe Shai-Hulud GitHub so ausgenutzt, dass ein kompromittiertes System praktisch „von innen heraus“ an die GitHub-Infrastruktur angebunden wurde. Dabei habe die Malware ein neues öffentliches Repository mit einem festen Marker in der Beschreibung angelegt und bewusst nur „Discussions“(ein Feature, das es Benutzern ermöglicht, Ideen, Fragen oder Vorschläge innerhalb eines Repositorys zu diskutieren) als späteren Kommunikationskanal aktiviert. Anschließend habe die Malware per GitHub-API ein Runner-Registration-Token beschafft, den offiziellen GitHub-Actions-Runner versteckt installiert, ihn persistent im Hintergrund gestartet und Schutzmechanismen ausgehebelt, indem der Runner die explizit Erlaubnis bekam, mit Root-Rechten laufen zu dürfen.
Der eigentliche „Backdoor-Mechanismus“ sei durch einen absichtlich verwundbaren Workflow entstanden, der den Text einer Discussion direkt in einen „run“-Befehl übernommen habe. Durch Shell-Metazeichen habe sich so eine Command Injection auslösen lassen. Dafür hätten die Angreifer eine Discussion posten müssen, wodurch der Runner die eingeschleusten Befehle ausgeführt habe.
Um kompromittierte GitHub Actions Runner zu erkennen, empfehlen die Sicherheitsforscher, gezielt nach entsprechenden Signalen zu suchen.
Ein besonders starkes Indiz sei die Variable „RUNNER_TRACKING_ID=0“, da diese typischerweise dazu diene, den üblichen Prozess-Cleanup nach Job-Ende zu umgehen.
Das Runner-Inventar sollte regelmäßig geprüft werden, wobei auch hinterfragt werden sollte, wann und von wem Runner registriert wurden. Solche Registrierungen lassen sich über Audit-Log-Events wie „repo.register_self_hosted_runner” nachvollziehen.
Zusätzliche Hinweise können von Runner-Prozessen kommen, die in versteckten Verzeichnissen, wie „~/.dev-env“, laufen, sowie von ungewöhnlichen Runner-Namen und unerwarteten Verbindungen zu unbekannten Repositories.
Auch Workflow-Dateien, in denen „untrusted“ Eingaben unsauber in Run-Befehle eingefügt werden, können Sysdig zufolge wichtige Informationen für die Entdeckung einer Kompromittierung liefern.
Zur Härtung und Eindämmung empfiehlt der Hersteller folgende präventive Maßnahmen:
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Self-Hosted-Runner nicht in öffentlichen Repositories einsetzen.
Wo es möglich ist, sind ephemere Runner sinnvoll, da sie nach jedem ausgeführten Job sofort zurückgesetzt werden, wodurch die Umgebung nicht länger vorhanden ist. Dies reduziere das Risiko, auch wenn es keine Garantie dafür gibt, dass sie nur für einen einzigen Job verwendet werden können. Dennoch erschwere dies es Angreifern deutlich, dauerhaften Zugriff zu erlangen.
Außerdem sollte der Einsatz über Runner Groups mit Repository-Restriktionen strikt segmentiert werden, sodass nur klar definierte Repositories bestimmte Runner nutzen dürfen.
Auf Runner-Systemen grundsätzlich keine sensiblen Daten wie Secrets, SSH-Schlüssel oder API-Token speichern, da Workflow-Auslöser im Zweifel Zugriff auf die Runner-Umgebung haben könnten.
Die Netzwerkzugriffe von Runnern stark begrenzen und insbesondere Zugriffe auf Metadaten-Services, Produktionsdatenbanken oder andere kritische interne Ziele verhindern.
Security-Learning: Self-hosted Runner sind eine unterschätzte Angriffsfläche. Sie führen per Design Workflow-Code aus, halten persistente Verbindungen zu GitHub und laufen häufig mit weitreichenden Berechtigungen. Der von Sysdig untersuchte Shai-Hulud-Fall zeigt, wie Angreifer diese Eigenschaften schnell nutzen können, um Backdoors zu etablieren, die im normalen CI/CD-Traffic untergehen. Die Sicherheit von Software-Lieferketten ist entscheidend, da Schwachstellen in einem Teil der Kette potenziell gesamte Systeme gefährden können.