Angreifer haben mit gestohlenen Zugangsschlüsseln von Entwicklern Schadcode in Zehntausende Repositories auf der Plattform Github eingeschleust. Das Skript sammelt Geheimnisse aus automatisierten Build-Abläufen und Cloud-Konten ein, nach Angaben des Sicherheitsunternehmens Safedep auch Krypto-Wallets. Ihre Spuren verwischten die Täter meist kurz nach dem Angriff.
Github-Angriff: Datendieb sucht auch nach Krypto-Wallets

Das Wichtigste auf einen Blick
- Angreifer haben mit gestohlenen Github-Zugangsschlüsseln ein Skript in Zehntausende Repositories eingeschleust, das Zugangsdaten abgreift, laut Safedep auch Krypto-Wallets.
- Laut Aikido Security übernahmen sie 4.837 Konten und erreichten 61.764 Repositories, in mehr als 1.800 davon lief der Schadcode und schickte Daten ab.
- Die Sicherheitsforscher raten, alle für die Workflows erreichbaren Geheimnisse auszutauschen und Rechner nach einem npm install auf betroffenem Code als kompromittiert anzusehen.
Was der Datendieb einsammelt
Die Kampagne trägt den Namen wfx, nach dem Kürzel, das der Schadcode für seine Dateien, Branches und Cloud-Objekte verwendet. Laut der Analyse von Safedep durchsucht das Skript neben Github-Geheimnissen und Zugangsdaten für Cloud-Dienste auch SSH- und GPG-Verzeichnisse, Zugangstoken für Paketverzeichnisse, Dateien wie .env, die Befehlshistorie der Kommandozeile sowie Krypto-Wallets und Konfigurationen von KI-Werkzeugen. Welche Wallets es erkennt, nennt Safedep nicht.
Das Sicherheitsunternehmen Aikido, das die Kampagne wfx-loot nennt, zählt in seinem Bericht über die übernommenen Github-Konten weitere Ziele auf. Dazu gehören Umgebungsvariablen, deren Namen Begriffe wie token, secret, pass oder stripe enthalten, Zugangsdateien für AWS, Azure, Google Cloud, Docker, Kubernetes, npm und Pypi sowie Schlüssel von KI-Anbietern wie Openai und Anthropic. Auch Dateien mit den Endungen .pem, .p12 und .kdbx, in denen meist Zertifikate, private Schlüssel oder Passwort-Datenbanken liegen, stehen auf der Liste. Token liest das Skript zudem direkt aus dem Arbeitsspeicher laufender Prozesse.
Gestohlene Schreibrechte statt Sicherheitslücke
Eine Schwachstelle in Github Actions, dem Automatisierungsdienst der Plattform, brauchten die Angreifer nicht. Sie nutzten die Schreibrechte der gestohlenen Token. Zunächst öffneten sie einen Test-Pull-Request mit dem Titel „docs: dependency audit notes“, um zu prüfen, ob sie Code ändern dürfen. Danach schleusten sie das Skript auf einem von drei Wegen ein: in einen bestehenden Workflow, als eigene Workflow-Datei auf einem kurzlebigen Branch oder als Befehl, der bei jedem npm install startet.
Anschließend machten die Angreifer die Änderung rückgängig und löschten den Workflow-Lauf samt Protokollen. Oft verrät nur noch eine Lücke in der Nummerierung der Läufe, dass etwas passiert ist. Nach Angaben von Aikido kann das Skript außerdem Schutzregeln für Branches aushebeln, indem es gefälschte Meldungen über erfolgreiche Prüfungen setzt.
In Cloud-Konten richtet der Schadcode Hintertüren ein. Bei AWS ändert er die Vertrauensrichtlinien von Rollen so, dass jedes beliebige AWS-Konto sie übernehmen kann, bei Azure fügt er zusätzliche Anmeldewege mit dem Präfix wfx-ci- hinzu. Diese Hintertüren überstehen laut Safedep auch einen Austausch der Geheimnisse. Abgeflossen sind die Daten über HTTP-Anfragen an Rechner der Täter. Bei etwa einem Fünftel der von Safedep untersuchten Varianten landeten sie dagegen nur in einem Telegram-Chat.
Tausende Konten, Zehntausende Repositories
Die ersten Test-Pull-Requests tauchten laut Aikido am 10. November gegen 13:45 Uhr MEZ auf. Bis zum Folgetag öffneten 4.837 übernommene Konten solche Anfragen in 61.764 Repositories. In 10.431 Fällen gehörte das Repository gar nicht dem gekaperten Konto, die Angreifer erreichten es über Rechte als Mitwirkende oder in Organisationen. In mehr als 1.800 Repositories lief der Schadcode und schickte Zugangsdaten ab.
Safedep fand Schadcode-Commits aus der Zeit vom 10. bis 12. November in 8.093 öffentlichen Repositories. Eine eigene Abfrage des IT-Portals heise online ergab über 66.000 Treffer für die Test-Anfragen der Angreifer, etwa 4.300 entstanden am Tag der Suche. Konkrete Opfer aus Deutschland, Österreich oder der Schweiz nennt keine der Quellen.
Die Herkunft der gestohlenen Schlüssel ist erst zum Teil bekannt. Eine Quelle nannte der Cloud-Anbieter Fly.io am 12. November: Missbraucht worden seien Zugangsschlüssel, die Github für die App des Unternehmens ausgestellt hatte. Demnach hatte der Bereitstellungsprozess bei Apps, die aus Github heraus veröffentlicht wurden, einen Zugangsschlüssel in der Datei .git/config hinterlassen, und einige Apps lieferten diese Datei öffentlich aus. Fly.io widerruft die Token, der Vorgang stockte am 13. November jedoch, Github prüfe das, so Fly.io.
Github als Umweg zu Kryptowerten
Für Krypto-Diebe ist Github kein neues Terrain. Im Februar 2025 berichteten Forscher, die nordkoreanische Lazarus-Gruppe habe Github-Projekte und npm-Pakete mit Malware präpariert, die gezielt nach Wallets wie Metamask, Exodus und Atomic suchte. Ziel waren Entwickler, die solche Pakete in ihre Projekte einbinden. Kurz darauf enttarnte Kaspersky Hunderte gefälschte Github-Repositories, deren Schadcode Daten aus Krypto-Wallets stahl und kopierte Wallet-Adressen gegen die der Angreifer austauschte.
Was Betroffene jetzt tun sollten
Hinweise auf einen Befall sind ein Branch namens wfx-docs, der genannte Pull-Request-Titel, Commits wie „ci: refresh build cache“ sowie kurzlebige Branches nach dem Muster chore/ mit acht zufälligen Zeichen. Betroffen sind zudem einzelne Pakete, darunter die Version 3.14.3 von neuronai-studio auf Packagist und mehrere Versionen der Go-Module docker-env und redock.
Taucht eines dieser Merkmale auf, gilt das betroffene Konto laut Safedep als übernommen. Dann sei alles zu entziehen, was Zugriff gewährt, also Zugangstoken, SSH-Schlüssel, aktive Sitzungen und über OAuth erteilte Berechtigungen, zudem sollte die Zwei-Faktor-Anmeldung aktiviert werden. Lief der Schadcode, seien alle Geheimnisse und Cloud-Rollen, auf die die Workflows zugreifen konnten, als kompromittiert anzusehen, schreibt Aikido. Dasselbe gilt laut Safedep für jeden Entwicklerrechner, der den manipulierten Stand per npm install eingespielt hat, dort sollten sämtliche Schlüssel erneuert werden. Bei einer Krypto-Wallet bedeutet ein solcher Austausch, die Guthaben in eine neu angelegte Wallet mit neuer Wiederherstellungsphrase zu übertragen.
Über den Autor
GESCHRIEBEN VONKonstantin Kaiser
Konstantin Kaiser ist News- und Lokalisierungsmanager für Deutschland bei Bitcoin.com News sowie Finanzmarktanalyst.
















