Abstrakte technische Illustration auf tiefblauem Grund: Links hängt eine leuchtende bernsteinfarbene Schlüsselsilhouette an einem einzelnen vertikalen Faden, und ein dünner horizontaler Faden verläuft von ihr nach rechts in eine perspektivisch zurückweichende Wand aus hohen Milchglasscheiben. Drei der Scheiben leuchten von hinten warm bernsteinfarben, die übrigen bleiben stahlblau. Ein feiner cyanfarbener Bogen mit kleinen Teilstrichen steigt von unten links über die Wand. Es sind keine Personen, Logos oder lesbaren Texte zu sehen. Das OrcaRouter-Logo befindet sich in einem weißen Streifen unten rechts.
AI Safety Incidents

CrowdSec verlor 170 private Repositories in neun Minuten durch eine Offboarding-Lücke

Autor

Elias Hawthorne

Veröffentlicht am

Neueste Modelle · 20Alle Modelle ansehen →
Benchmarks: Artificial Analysis · täglich aktualisiert
Zurück zu allen Beiträgen

Am 22. Mai 2026 nutzte jemand, der von einer IP-Adresse in Toronto, Kanada, aus arbeitete, zwischen 05:52:29 und 06:01:33 UTC das GitHub-Konto eines Entwicklers, der CrowdSec gerade verlassen hatte, um etwa 170 der privaten Repositories des französischen Sicherheitsunternehmens zu kopieren. CrowdSec veröffentlichte diese Chronologie in seinem eigenen Vorfallbericht am 18. September 2026 — dem Datum, das das AI Incident Archive diesem Datensatz zuweist — nachdem am 16. September ein Archiv seines Quellcodes auf dem Cybercrime-Marktplatz pwnforum aufgetaucht war. Das Konto funktionierte noch, weil das Unternehmen den GitHub-Zugang des Entwicklers bewusst offen gelassen hatte, damit er einige Arbeiten abschließen konnte. Der dahinterstehende Laptop war elf Tage zuvor von dem Wurm namens Mini Shai-Hulud infiziert worden, der Anmeldedaten stiehlt und den TeamPCP über die npm-Pakete von TanStack verbreitet hatte. Diese Darstellung stammt aus dem am 18. September 2026 eingereichten Datensatz, und der vollständige dokumentierte Vorfallbestand — jeder Eintrag mit eigenem Schweregrad, eigenem Konfidenzgrad, eigener Disputed-Kennzeichnung und eigenen Quellen — befindet sich in dem Orca AI Incident Archive, wo dieser Eintrag neben den anderen Supply-Chain-Fällen aus demselben Jahr gelesen werden kann.

Der Diebstahl blieb nicht auf Code beschränkt. Der Bericht von CrowdSec legte außerdem die E-Mail-Adressen von 83 Nutzern, die aus einer internen Data-Science-Monitoringliste stammen und überwiegend Gmail-Konten sind, sowie die Vor- und Nachnamen, E-Mail-Adressen und den Investmentkontext von 51 potenziellen Investoren aus dem Jahr 2020. Gemessen an rund 150.000 Nutzern sind 83 Adressen ein kleiner Bruchteil; null sind sie nicht. Seine persönliche Entschuldigung behielt Geschäftsführer Philippe Humeau den Investoren vor: „Dass Ihre Namen und E-Mail-Adressen durchgesickert sind, ist ein Thema, das wir direkt mit Ihnen und den zuständigen Behörden besprechen werden, und dafür entschuldige ich mich persönlich.“

Was neun Minuten tatsächlich erforderten

Dark navy HTML timeline card with a faint grid, kicked 'crowdsec · 22 may to 18 september 2026 · times as published' and headed 'The nine minutes, and the 117 days after'. Two columns of timestamped rows. Left, headed 'Upstream, then the copy': 11 May, 84 malicious versions across 42 TanStack npm packages ship the Mini Shai-Hulud credential harvester; 22 May 05:52:29, the copy window opens with a first fetch logged at 05:52:32.138 UTC; 22 May 06:01:33, the window closes with about 170 private repositories copied from an IP in Toronto, machine timezone UTC-4; 25 May, the former developer's account is removed from the GitHub organisation, three days after the copy. Right, headed 'Before disclosure, then discovery': 17 August, the exposed AWS SNS token is probed from 23.234.84.102 and reaches no further than a single topic; 16 September 17:45, an archive of CrowdSec source code is published on the pwnforum marketplace; 16 September 20:00, the Fuites Info team contacts CrowdSec and a crisis cell is stood up; 17 September, token rotation begins and GitHub support traces the token's lifecycle; 18 September, the full report discloses 83 user email addresses and the details of 51 potential investors from 2020. A highlighted band reads 'The account was left open on purpose so a departing developer could finish some work. It was revoked on 25 May, after the repositories were already gone.' A footer cites CrowdSec's analysis of 18 September 2026. The OrcaRouter logo sits in a white strip at the bottom right.

Die Git-Protokolle, die GitHub an CrowdSec zurückgab, beginnen am 05:52:32.138 UTC mit einem Fetch gegen eines der Repositories des Unternehmens, und die Aktivität endet um 06:01:33. Die im Archiv genannte Zahl von etwa 170 privaten Repositories stammt aus diesen Git-Daten. In seinem Bericht beschreibt Humeau die Offenlegung als „beschränkt auf den Quellcode von CrowdSecurity, darunter 130+ öffentliche Repositories und viele private“. DevOps.com, das am 24. September über den Vorfall berichtete, bezifferte die kombinierte Zahl öffentlicher und privater Repositories auf etwa 300 – eine höhere Zahl als die von CrowdSec selbst genannte Zahl privater Repositories und eine, die der Bericht des Unternehmens nicht nennt.

Der Inhalt bestand aus der üblichen Ausstattung eines schnell wachsenden SaaS-Unternehmens: dem Quellcode der Webkonsole, Deployment- und Automatisierungsskripten sowie den Data-Science-Skripten und -Modellen hinter seiner Analytik. Der sensibelste von CrowdSec genannte Punkt ist der „Konsensalgorithmus“, der entscheidet, welche IP-Adressen auf seine Blocklisten gelangen. Die Architektur des Algorithmus war bereits öffentlich, seine Diversitäts- und Erkennungsschwellen jedoch nicht – und diese sind nun bekannt. Humeau argumentiert, die Schwellen seien ein bewegliches Ziel und eine Steuerung des Konsenses würde weiterhin eine große, teure Serverflotte erfordern; das Unternehmen sagt, es könne sie anpassen und achte auf Abweichungen.

Die Zugangsdaten waren der Teil, der viel schlimmer hätte ausgehen können. „Wir waren sehr nahe daran, sauber zu sein“, schrieb Humeau. Das einzige nutzbare Geheimnis im Dump war ein AWS-Simple-Notification-Service-Token, beschränkt auf das Veröffentlichen in einem einzigen Topic. Jemand testete es am 17. August 2026 von IP 23.234.84.102 aus, rief GetCallerIdentity und ListTopics sowohl für das Dev- als auch für das Env-Topic auf und kam nicht weiter. Die meisten anderen Tokens und Secrets im Code waren vor dem Leak widerrufen oder rotiert worden. CrowdSec gibt an, dass nicht auf seine Infrastruktur und Datenbanken zugegriffen wurde und dass im Open-Source-Projekt, in dessen privatem Quellcode oder in dessen Build-Pipelines kein Code verändert wurde.

Dark navy HTML card headed 'What left the building', kicked 'the exposure, as crowdsec counted it'. Five tiles across the top. 170, private repositories copied in the nine-minute window per the Git activity GitHub returned, noted 22 May 2026 05:52 to 06:01 UTC. 130+, public repositories the CEO says were also in the leak alongside many private ones, with a note that DevOps.com puts the combined figure at about 300. 83, user email addresses mostly Gmail drawn from a data-science monitoring list, out of roughly 150,000 users. 51, potential investors from 2020 with names, addresses and investment context, described as the group the CEO apologised to personally. 1, usable credential in the dump, an AWS SNS token scoped to one topic, probed 17 August from 23.234.84.102. Four smaller tiles below read: console source, the SaaS web console not open-sourced and not intended to be; data-science scripts and models, of little use without the data that trains them; automation scripts, deployment, QA and Slack bots that the company calls no-risk; consensus thresholds, the diversity and detection limits that were not public before. A highlighted band reads 'No infrastructure, no databases, no code changes, CrowdSec's finding. The data-science scripts and models and the blocklist consensus thresholds went with the source.' A footer cites CrowdSec on 18 September 2026, Dark Reading on 22 September and DevOps.com on 24 September. The OrcaRouter logo sits in a white strip at the bottom right.

Warum das Konto noch funktionierte

Der Offboarding-Fehler ist klein und spezifisch. Als der Entwickler ging, hatte CrowdSec seine übrigen Zugriffsrechte bereits entfernt; das GitHub-Konto blieb laut Humeau aktiv, weil „wir uns im Guten von unserem Entwickler getrennt haben und er einige Arbeit abschließen wollte“. Das Konto wurde aus der GitHub-Organisation am 25. Mai, drei Tage nachdem die Repositories bereits kopiert worden waren, entfernt.

CrowdSec konnte den Diebstahl damals nicht sehen, und der Grund dafür sollte man genau benennen. Das OAuth-Token war weder im Audit-Log der Organisation noch im Audit-Log eines aktuellen Mitglieds vorhanden, und als jemand nachsah, existierte es nicht mehr: Es war erstellt, verwendet und abgelaufen, ohne eine für das Unternehmen lesbare Spur zu hinterlassen. GitHub bewahrt Git-Aktivitäten für Organisationen ohne Enterprise-Plan nur in einem fortlaufenden Sieben-Tage-Fenster auf, wie CrowdSec selbst anmerkt. Der Durchbruch kam vom Support-Team von GitHub, das den vollständigen Lebenszyklus des Tokens nachverfolgte und die Git-Aktivität für das Zwei-Stunden-Fenster rund um das Kopieren lieferte. So gelangte das Unternehmen zum Konto eines ausgeschiedenen Mitarbeiters. Die Verbindung zurück zu TanStack ergab sich aus derselben Untersuchung.

Das durchgesickerte Archiv enthielt seinen eigenen Beweis. Die darin befindliche .github/.git/config zeichnete eine Origin-URL der Form oauth2:gho_xxxxxxxxx@github.com auf, wies die Anmeldedaten als GitHub-OAuth-Token aus und entsprach TeamPCPs dokumentierter Methodik. CrowdSec gibt an, Entwicklerrechner auf schädliche Pakete geprüft und in seinen eigenen Repositories keine der mit Backdoor versehenen TanStack-Versionen gefunden zu haben – ein Ergebnis, das das Unternehmen als nicht aussagekräftig statt als entlastend bezeichnet.

Wer es getan hat und wie sicher die Zuschreibung ist

CrowdSec schreibt den Download „einem der Gründer von BreachForum und einem Mitglied, diencracked“ zu, wobei die Adresse des Mitglieds mit diencracked@cock.li angegeben wird und der Zugriff von einer IP aus Toronto erfolgte, während die Zeitzone der Maschine auf UTC-4 eingestellt war. Das Unternehmen fügt im selben Satz seine eigene Einschränkung hinzu: „Zumindest geht das aus den Git-Daten hervor.“ Der Bericht von Dark Reading vom 22. September enthält dieselbe Zuschreibung an den BreachForum-Gründer und den Handle diencracked.

Die Upstream-Kampagne ist besser dokumentiert als die Identitäten dahinter. Die Pakete von TanStack wurden am 11. Mai 2026 mit Backdoors versehen, als 84 bösartige Versionen in 42 Paketen veröffentlicht wurden; The Hacker News erfasst die Kompromittierung als CVE-2026-45321 und verweist auf TanStacks eigene Sicherheitsmeldung für die Payload zum Diebstahl von Zugangsdaten. CrowSecs Zeitlinie vermerkt, dass am 22. Mai, am selben Tag wie die Kopie des Repositorys, TeamPCP – von CrowdSec als UNC6780 geführt – die Verantwortung für die Kompromittierung von Repositorys übernahm, die Mistral AI gehören.

Was gilt als gesichert und was nicht

Dark navy HTML card headed 'Established, asserted, and simply absent', kicked 'crowdsec · what the record supports', subtitled 'The archive grades this record confidence A, disputed false, real harm true. That grade covers the event; it does not extend to every claim made about it.' Three columns. 'Established', green: about 170 private repositories copied on 22 May 2026 in a nine-minute window from GitHub's own Git activity records; the account belonged to a departed developer and was revoked 25 May, three days later; 83 user email addresses and the details of 51 potential investors from 2020 appeared in the published archive; no infrastructure or database access and no code altered, per CrowdSec's audit. 'Asserted, not proven', amber: that the laptop was infected through TanStack, since CrowdSec's dev machines came back clean and its repository scan was inconclusive; which poisoned package arrived and when, which CrowdSec says it did not establish; that the downloaders were a BreachForum founder and the member diencracked, offered as what the Git data shows. 'Missing from the record', grey: GitHub's own findings, since support traced the token but no GitHub statement appears in the report; any arrest, charge or court record tying a named person to the copy; any independent forensic examination of CrowdSec's systems. A highlighted band reads 'The strongest evidence in the case is a Git fetch log inside a two-hour window GitHub handed over on request. The weakest is an attribution hedged in the same sentence that makes it.' A footer cites CrowdSec on 18 September, The Hacker News on 19 September and Dark Reading on 22 September. The OrcaRouter logo sits in a white strip at the bottom right.

Festgestellt:Eine Kopie von etwa 170 privaten Repositories wurde am 22. Mai 2026 in einem neunminütigen Zeitfenster angefertigt, wobei das noch gültige GitHub-Konto eines ausgeschiedenen Entwicklers verwendet wurde – eine Abfolge, die aus GitHubs eigenen Git-Aktivitätsaufzeichnungen rekonstruiert und nicht lediglich abgeleitet wurde. Ebenfalls durch die eigene Darstellung des Unternehmens festgestellt: die Offenlegung von 83 Nutzer-E-Mail-Adressen und der Details von 51 potenziellen Investoren, der Widerruf am 25. Mai, das geprüfte SNS-Token und der Befund, dass kein Code verändert und weder Infrastruktur noch Datenbank erreicht wurde.

Nicht geklärt: welches vergiftete Paket den Laptop erreichte und wann. CrowdSec erklärt unmissverständlich, dass es weder das eine noch das andere identifiziert hat. Der Repository-Scan des Unternehmens blieb ergebnislos, und seine Entwickler-Rechner erwiesen sich als sauber, was in merkwürdigem Widerspruch zu einem Laptop steht, der nach eigener Aussage des Unternehmens kompromittiert war. Die Lücke wird eingeräumt, nicht geschlossen.

Nicht veröffentlicht: GitHubs Seite der Untersuchung. CrowdSec sagt, GitHubs Support-Team habe die TanStack-Herkunft bestätigt, doch The Hacker News merkt an, dass der Bericht des Unternehmens keine Erkenntnisse von GitHub selbst enthält und GitHub keine eigene Darstellung des Lebenszyklus des Tokens veröffentlicht hat.

Bestätigung:Dark Reading, The Hacker News und DevOps.com berichteten jeweils innerhalb einer Woche über den Vorfall, und alle drei bauen auf dem Bericht von CrowdSec und dem Advisory von TanStack auf statt auf einer unabhängigen forensischen Untersuchung der Systeme von CrowdSec. Dark Reading ergänzt Kommentare von externen Praktikern, darunter Denis Calderone von Suzu Labs, der den Revokationsfehler als „Zeug vom ersten Tag“ bezeichnete. Eine Research Note der Cloud Security Alliance vom 20. September wiederholt die Abfolge, doch das Dokument enthält den eigenen Hinweis, dass es mit KI-Unterstützung erstellt wurde und keiner offiziellen CSA-Prüfung unterzogen wurde – wissenswert, bevor es als zweiter unabhängiger Befund gezählt wird. Das Archiv bewertet die Datensatzkonfidenz mit A, „umstritten“ als falsch und „tatsächlicher Schaden“ als wahr.

Die erste Aussage und die Korrektur.

CrowdSecs erste öffentliche Stellungnahme am 17. September besagte, dass „keine Kundendaten, Login/Passwort, Name, Organisation oder sonst etwas geleakt wurde und CrowdSec keine personenbezogenen Daten oder Kundenprotokolle speichert; die Auswirkungen beschränken sich auf CrowdSec“. Sie brachte außerdem eine technische Hypothese ins Spiel: dass eine interne Komponente mit einer Backdoor versehen worden sei, um einen API-Schlüssel zu stehlen, der privaten Code lesen könne.

Der ausführlichere Bericht einen Tag später ersetzte diese Hypothese durch die Darstellung des ausgeschiedenen Mitarbeiters und legte die 83 Adressen und die 51 Investoren offen. Hacker News beschreibt dies als Korrektur der früheren Behauptung. CrowdSecs eigene Darstellung ist enger gefasst: Die 83 Adressen stammten aus einer Monitoring-Liste aus dem Data-Science-Bereich und nicht aus Kundendaten, und die Investorendetails stammten aus dem Jahr 2020. Beide Beschreibungen können gleichzeitig zutreffen – die Adressen waren keine Kundenkonten, und sie waren dennoch personenbezogene Daten in einem Dump, der auf einem Kriminalitätsforum veröffentlicht wurde. Das Unternehmen sagt, es werde die betroffenen Nutzer und Investoren benachrichtigen und den Leak den Behörden melden.

Was hat sich danach geändert?

• Zugangsdaten und Token, die im Archiv gefunden wurden, wurden in der Nacht des 16. September sowie im Verlauf des 17. September rotiert, wobei die verbleibende Rotation am folgenden Morgen abgeschlossen wurde.

• Endpoint Detection and Response ist jetzt auf den Workstations und Laptops der Personen ausgerollt, die an der Codebasis oder Infrastruktur von CrowdSec arbeiten; das Unternehmen gibt {{1}}Aikido Security{{/1}} als Produkt an. Humeau räumt ein, dass es schon früher hätte im Einsatz sein sollen, und räumt außerdem ein, dass es unwahrscheinlich ist, dass es auf dem Rechner eines ehemaligen Mitarbeiters lief.

• Die durch das Leck offengelegten Schwellenwerte des Konsensalgorithmus werden angepasst, begleitet von einer strengeren Überwachung statistischer Abweichungen im gesamten Blocklist-Netzwerk.

• Das Unternehmen hat sich zum Ziel gesetzt, dieselbe Reaktion – Bestandsaufnahme, Rotation, Forensik und Offenlegung – von 48 Stunden auf unter 24 zu verkürzen.

• Betroffene Nutzer und Investoren werden direkt kontaktiert, und das Leck wird nach Angaben des Unternehmens den Behörden gemeldet.

Warum dies in einem KI-Vorfallarchiv liegt

Die Beteiligung von KI ist hier infrastruktureller Natur, und es lohnt sich, genau zu bestimmen, was das bedeutet. In der Darstellung von CrowdSec beschreibt nichts ein KI-System, das während des Eindringens eine Entscheidung trifft; bei dem Akteur handelte es sich um eine Person oder mehrere Personen, die ein gestohlenes Token verwendeten. Was den Fall zu einem Incident der KI-Branche macht, ist der Schadensradius. Die Bibliotheken von TanStack bilden die Schnittstellen eines Großteils moderner Software, der Wurm, der das Token erbeutet hat, ist darauf ausgelegt, Cloud-, SSH- und Modellanbieter-Zugangsdaten in einem Durchgang abzugreifen, und das aus CrowdSec kopierte Material umfasste Data-Science-Skripte und Modelle statt nur Anwendungscode.

Dieselbe Kampagne erreichte KI-Unternehmen direkt. Die Zeitlinie von CrowdSec verzeichnet, dass TeamPCP am 22. Mai Mistral-AI-Repositories beanspruchte, und The Hacker News berichtet, dass zwei Geräte von OpenAI-Mitarbeitenden betroffen waren, wobei unbefugt auf eine begrenzte Anzahl interner Code-Repositories zugegriffen wurde. Das Archiv verzeichnet den CrowdSec-Fall als zweites nachgelagertes Opfer der TanStack-Kompromittierung im Mai, nach diesen Geräten von OpenAI-Mitarbeitenden.

Der Abstand zwischen der Kopie und ihrer Entdeckung ist der Teil, der reisen sollte. Die Repositories wurden am 22. Mai abgegriffen; CrowdSec erfuhr am 16. September von dem Leck, als das Team von Fuites Info das Unternehmen auf den pwnforum-Beitrag ansprach – 117 Tage später und nicht durch seine eigene Überwachung. Der Mechanismus, der die Verzögerung möglich machte, war nicht exotisch: ein Konto, das seinen Zweck um drei Tage überlebte, ein Token, das in den Protokollen, die das Unternehmen lesen konnte, keine Spur hinterließ, und Entwickler-Laptops ohne Endpoint Detection. CrowdSec, ein Unternehmen, das Bedrohungserkennung verkauft, hatte alle drei.