Die Repositories setzen auf überzeugend gestaltete README-Dateien mit einem Download-Button, der auf ein ZIP-Archiv mit der Erstinfektion SmartLoader verweist.

Nach einem Bericht der Software-Supply-Chain-Sicherheitsplattform Apiiro nahm FakeGit am 4. Oktober den Betrieb wieder auf und nutzt inzwischen 17.610 Repositories auf GitHub. Innerhalb von nur 34 Stunden brachte die Operation mehr als 13.000 Repos in Umlauf, in der Spitze 2.999 pro Stunde. „In den von uns untersuchten Commits betrafen 97 Prozent ausschließlich die README-Datei, und 88 Prozent richteten den ‚Download‘-Button auf ein ZIP-Archiv, das SmartLoader installiert“, so Apiiro. „Niemand musste ein einziges neues Repo anlegen. Die Flotte war bereits vorhanden. Sie wurde lediglich neu ausgerichtet“, ergänzten die Forscher.

Vergleichbare Aktivitäten mit wechselnden Nutzlasten werden mindestens seit Januar beobachtet. Der Begriff FakeGit wurde im Juli mit der Operation verknüpft, als Forscher der Enterprise-Browser-Plattform Island einen Bericht über 7.600 gefälschte GitHub-Repositories veröffentlichten, die SmartLoader verbreiteten. Island wies damals darauf hin, dass sich 800 der Repositories als KI-Skills oder MCP-Server ausgaben und in öffentlichen KI-Registries und -Katalogen auftauchten.

Als Grund für die Langlebigkeit der Kampagne nennen die Forscher die Löschpraxis: Das Entfernen von Repositories stützt sich auf Listen, die nur einen Bruchteil der schädlichen Repos abdecken. Zudem bleiben blockierte Nutzlasten und Sicherungskopien erreichbar, sodass die Angreifer lediglich die Download-Links austauschen müssen, während dieselben Repositories aktiv bleiben. „71 Prozent der Flotte fehlten vor unserem Bericht bei URLhaus, und eine DNS-Blockliste auf Domain-Ebene kann eine einzelne Datei auf GitHub nicht sperren, ohne GitHub insgesamt zu sperren“, erklärt Apiiro.

Schädliche Archive fanden die Forscher in Forks, älteren Dateien, Release-Assets, Anhängen von Issues sowie in separaten Repositories, die allein dem Hosten von Downloads dienen. Das macht das Löschen einzelner Links wirkungslos: „Löscht man eine Datei, kann der Betreiber den Köder einfach auf eine Ersatzkopie richten – einen Fork, ein älteres ZIP, ein Release-Asset oder einen Issue-Anhang“, so die Forscher.

Apiiro empfiehlt Nutzern, den Eigentümer eines Repositories zu überprüfen. KI-Skills und MCP-Server sollten ausschließlich aus offiziellen Registries oder Hersteller-Repositories installiert werden. Besteht der Verdacht, dass SmartLoader ausgeführt wurde, sollte der Vorfall als mögliche Kompromittierung des GitHub-Kontos behandelt werden: aktive Sitzungen und Zugriffstoken widerrufen und auf Passkeys umsteigen.