Aikido

Was ist Slopsquatting? Der AI-Paket-Halluzinationsangriff, der bereits stattfindet

Verfasst von
Dania Durnas

Typosquatting, also die Registrierung einer falsch geschriebenen Version eines beliebten Pakets und das Warten darauf, dass ein Entwickler versehentlich das falsche Paket eingibt und installiert, gibt es bei npm schon seit einem Jahrzehnt. Das ist nichts Neues – die Registrierungsstelle verfügt über Schutzmaßnahmen dagegen. 

Dann kam die KI und veränderte erneut alles. Slopsquatting ist die neue, KI-basierte Variante des Typosquatting. Anstatt auf menschliche Tippfehler zu setzen, setzen Angreifer auf KI-Halluzinationen, also auf Paketnamen, die von LLMs selbstbewusst empfohlen werden, aber in Wirklichkeit gar nicht existieren. Eine Zeit lang wurde dies als theoretisches Risiko betrachtet, aber das ist nun nicht mehr der Fall. KI-Halluzinationen sind Teil unserer Realität, ebenso wie Slopsquatter. 

In diesem Artikel schauen wir uns an, wie Slopsquatting funktioniert, was Forscher gerade in der Praxis herausfinden und was du dagegen tun kannst.

Was ist Slopsquatting?

Slopsquatting, auch Halluzinations-Squatting genannt, tritt auf, wenn ein Angreifer einen Paketnamen registriert, den KI-Modelle häufig halluzinieren, und dann darauf wartet, dass Entwickler ihn auf Empfehlung der KI installieren. Squatting-Angreifer verlassen sich darauf, dass KI-Assistenten selbstbewusst Paketnamen vorschlagen, die nicht existieren, und dass Entwickler ihnen vertrauen, dass es sich um ein echtes Paket handelt, das sie angefordert haben.

Wenn ein Entwickler die Installation dieses Pakets ausführt, erhält er das Paket des Angreifers. Das Paket führt in der Regel ein Post-Installationsskript aus, das alle in der Umgebung vorhandenen Anmeldedaten (API-Schlüssel, Cloud-Token, npm-Authentifizierungstoken) stiehlt und an den Angreifer weiterleitet.

Während einige Pakete den Angriff lediglich in einem Skript nach der Installation enthalten, verzichten ausgefeiltere Pakete gänzlich darauf, bösartigen Code in das Paket einzufügen, und nutzen stattdessen die Unterstützung von npm für URL-basierte Abhängigkeiten, um bei der Installation eine Nutzlast von einem externen Server abzurufen. Das Paket erscheint jedem naiven statischen Scanner als sauber, da es keinen offensichtlich bösartigen Code enthält.

Angenommen, Sie bitten Ihre KI, ein JavaScript-Linter-Paket zu installieren. Sie bietet Ihnen unbenutzte Importe und fragt, ob Sie es installieren möchten (wenn nicht, wird diese Frage einfach übersprungen). Das klingt nach dem Paket, das Sie zuvor verwendet haben, also installieren Sie es.

Claude möchte ausführen: npm install unused-imports
[y] Akzeptieren  [n] Ablehnen  [e] Bearbeiten  [Esc] Abbrechen

Das eigentliche Paket ist jedoch eslint-Plugin-unbenutzte-ImporteEs stellt sich heraus, dass unbenutzte Importe ist ein bösartiges Paket, und Überraschung! Sie haben gerade Malware installiert! (Dies ist eigentlich ein wirklich Übrigens handelt es sich um ein bösartiges Paket und möglicherweise um einen absichtlichen Slopsquatting-Angriff. Sie können es auf Aikido nachschlagen.. npm hat es derzeit unter Sicherheitsvorbehalt gestellt).

LLMs halluzinieren tatsächlich ziemlich oft Paketnamen. Mackenzie Jackson, Entwickelnde bei Aikido , beschrieb eine Halluzination, die ihm in einer Folge des Secure Disclosure-Podcasts begegnet ist. Er bat eine KI um Hilfe bei der Verbindung seines Node.js-Projekts mit einer OrientDB-Datenbank, einer technisch machbaren, aber ungewöhnlichen Kombination, für die es keine offensichtliche Paketlösung gibt. Anstatt zuzugeben, dass es ratlos war, erfand das Modell Paketnamen. Mackenzie sagt über den Denkprozess der KI: „Ich habe nichts für Sie, aber ich muss etwas für Sie haben, also hier ist, wie meiner Meinung nach die Pakete dafür heißen würden.“

Wie unterscheidet sich Slopsquatting von Typosquatting?

Typosquatting liegt vor, wenn ein Angreifer ein bösartiges Paket mit einem Namen registriert, der einem beliebten Paket so ähnlich ist, dass ein Benutzer sich durch einen Tippfehler dorthin verirrt. Angreifer suchen sich ein häufig heruntergeladenes Paket mit einem Namen, der leicht falsch geschrieben werden kann, lassen einen Bindestrich weg, tauschen zwei Buchstaben aus, fügen ein zusätzliches Zeichen hinzu und „besetzen” das falsch geschriebene Paket, bevor es jemand anderes tut. Typosquatting ist seit mindestens 2017 ein fester Bestandteil von npm, als ein Angreifer crossenv, eine Besetzung des beliebten cross-env Paket. npm verfügt nun über Schutzmaßnahmen gegen dieses Problem, indem es die Registrierung von Paketnamen verhindert, die zu sehr denen bereits vorhandener Pakete ähneln.

Slopsquatting ist Typosquatting, aber anstatt auf die ungeschickten Finger eines Menschen zu setzen, setzen Angreifer darauf, dass eine KI sich sicher irrt. (Ja, so zuverlässig wird KI derzeit eingeschätzt). Der Hauptunterschied zwischen Slopsquatting und Typosquatting, wie wir es bisher kannten, besteht darin, dass die Varianten völlig unterschiedlich aussehen und dass Angreifer bei Slopsquatting aus einer größeren Anzahl von Namen wählen können.

Beispielsweise erwiesen sich 8,7 % der von KI halluzinierten Python-Paketnamen als gültige JavaScript-Pakete. In diesem Fall stellt das Modell die richtige Verbindung zu einer realen Sache her, nur im falschen Ökosystem. Ein fruchtbarer Boden für Angreifer, um Paketnamen aus anderen Ökosystemen zu registrieren.

Forscher auf der USENIX Security 2025 haben getestet 16 Modelle in 576.000 Code-Beispielen und stellten fest, dass Halluzinationen vorhersehbaren Mustern folgen: 38 % sind Vermischungen wie Express-Mongoose, wobei das Modell zwei reale Begriffe miteinander kombiniert, sind 13 % Tippfehlervarianten und 51 % reine Erfindungen. Das ist eine viel größere Auswahl an Namen, die sich für Squatting eignen, als Typosquatting jemals bieten konnte, und im Gegensatz zu Typosquatting gibt es für keinen dieser neuen Namen etwas, dem er im Schutzsystem von npm „ähnelt”.

Findet Slopsquatting gerade statt?

Wir glauben schon. Wir sehen Malware-Pakete, deren Namen mit dem Slopsquatting-Muster übereinstimmen, aber wir können nicht beweisen, was die Angreifer mit den Namen bezwecken. Nehmen Sie unbenutzte Importe, das bestätigte schädliche Paket, über das wir zuvor gesprochen haben. Anfang Februar wurde es immer noch 233 Mal pro Woche heruntergeladen. Diese Entwickler folgen entweder KI-Empfehlungen, die immer noch auf diesen Namen verweisen, haben ihn irgendwo in ihrem Abhängigkeitsbaum und installieren ihn neu oder haben ihn in den Dokumenten oder Stack Overflow gefunden, die nicht aktualisiert wurden.

Forscher finden und belegen jedoch definitiv die ersten Vorläufer des Slopsquatting im realen Leben. Anfang 2024 Bar Lanyado von Lasso Security bemerkte, dass KI-Modelle wiederholt Halluzinationen über ein Python-Paket hatten. genannt huggingface-cli. Das eigentliche Tool wird anders installiert, als pip install -U "huggingface_hub[cli]", aber die Modelle schlugen immer wieder die kürzere, nicht vorhandene Version vor. Lanyado lud ein leeres Paket unter diesem Namen auf PyPI hoch, um zu sehen, was passieren würde. 

huggingface-cli hatte in drei Monaten mehr als 30.000 authentische Downloads. Alibaba hatte den halluzinierten Installationsbefehl in die README-Datei eines ihrer öffentlichen Repositorys kopiert. Das Paket war harmlos, aber Lanyado bewies, dass diese Strategie funktioniert. Alibaba kann sich glücklich schätzen, dass Lanyado dies herausgefunden hat, bevor es ein Angreifer tat.

Eine KI-Paket-Halluzination, die sich von selbst verbreitete

Charlie Eriksen, Sicherheitsforscher bei Aikido etwas noch Wilderes gefunden– ein halluzinierter Paketname, der sich über eine echte KI-Infrastruktur verbreitet, mit echten Agenten, die versuchen, ihn auszuführen, und den niemand absichtlich platziert hat. Im Januar 2026 behauptete Charlie, dieses npm-Paket namens react-codeshift. Das Paket war nicht echt, hatte keinen Absender und war definitiv noch nie zuvor registriert worden. Der Name ist ein klassisch Halluzination durch Zusammenführung. Es gibt zwei echte Pakete mit ähnlichen Namen, jscodeshift und react-codemod, den ein LLM zusammengemischt hat, um den Namen zu erfinden react-codeshift

Das Paket tauchte erstmals in einem einzigen Commit mit 47 LLM-generierten Agent Skills auf. Wir können vermuten, dass eine KI gebeten wurde, eine Reihe von Anweisungen für den Coding-Agenten zu generieren, und dabei Paketnamen halluzinierte, die sie zur Ausführung dieser Aufgaben benötigen würde. Kein Mensch hat die Ausgabe überprüft (oder zumindest nicht getestet), sodass diese KI-Halluzination über GitHub verewigt wurde.

Als Charlie es als Teil von seine Forschung zu nicht abgeholten PaketenDer Name dieses nicht existierenden Pakets hatte sich durch Forks auf 237 Repositorys verbreitet und wurde ins Japanische übersetzt. Nachdem Charlie es beansprucht hatte, react-codeshift erhielt täglich mehrere Downloads. Dabei handelt es sich um KI-Agenten, die Anweisungen befolgen und npx-Installationen in realen Umgebungen auslösen. Hätte ein Angreifer dies zuvor registriert, hätte es zu einem größeren Slopsquatting-Angriff kommen können, der sich organisch ausgebreitet hätte.

Wie man sich vor Slopsquatting-Angriffen schützt

Überprüfen Sie den Herausgeber, nicht nur den Namen.

Die offensichtliche Antwort lautet, die Paketnamen vor der Installation zu überprüfen, aber so einfach ist es nicht. Die Anzahl der Downloads ist kein verlässlicher Indikator (wir haben festgestellt, dass bösartige Pakete immer noch regelmäßig täglich heruntergeladen werden). Was wirklich zählt, ist der Herausgeber: Wer hat dieses Paket registriert, wann und entspricht dies Ihren Erwartungen an einen seriösen Betreuer? Ein Paket, das behauptet, ein eslint Ein Plugin ohne Angaben zum Entwickler und mit einem Registrierungsdatum vom letzten Dienstag ist ein Warnsignal, unabhängig von seiner Download-Zahl.

Behandeln Sie die Installation autonomer Pakete als privilegierten Vorgang.

Wenn Sie KI-Agenten einsetzen, die Pakete ohne Bestätigung installieren können, Claude Code im Bypass-Modus, eine agentenbasierte Codierungskonfiguration oder CI-Pipelines mit umfassenden npm-Berechtigungen, entfällt der Verifizierungsschritt, den Sie normalerweise als Mensch durchführen würden. Der Agent fährt einfach fort, wenn er über die entsprechenden Berechtigungen verfügt. Das ist das Bedrohungsmodell, auf dem Slopsquatting basiert. Legen Sie daher den Umfang dieser Berechtigungen entsprechend fest.

Scannen Sie Ihren gesamten Abhängigkeitsbaum

Einige halluzinierte Paketnamen landen als verschachtelte Abhängigkeiten statt als direkte Installationen, was bedeutet, dass sie nicht in Ihrer package.json auftauchen. Ein Software-Kompositionsanalyse SCA)-Scanner untersucht Ihren gesamten Abhängigkeitsbaum, um versteckte, verschachtelte bösartige Pakete aufzuspüren.

Verwenden Sie SafeChain für Schutz auf npm-Ebene.

Aikido ist ein Open-Source-Wrapper für npm, npx, Garn, und pnpm das Paketinstallationsbefehle abfängt und sie gegen Aikido Intel bevor irgendetwas auf Ihren Rechner gelangt.

Fazit

Nicht beanspruchte Paketnamen waren schon immer beanspruchbar, aber jetzt haben wir KI, die uns zuverlässig gefälschte Paketnamen zur Installation liefert, und KI-Agenten, die die Namen über Repositorys verbreiten.

Da Vibe-Coding zur Norm wird und immer mehr KI-Agenten mit Hummer-Thematik ohne menschliche Aufsicht programmieren (lesen Sie dazu unseren Artikel „Warum der Versuch, OpenClaw zu sichern, lächerlich ist“), wird es für Menschen immer schwieriger, einen schlechten Paketnamen zu erkennen, bevor er ausgeführt wird. Wir haben festgestellt, dass die Namen, die die LLMs halluzinieren, konsistent und wiederholbar sind, und Angreifer haben dies erkannt.

Überprüfen Sie Ihre Abhängigkeitsbäume. Überprüfen Sie die Herausgeber. Und verwenden Sie ein Tool, das zwischen Ihrem Paketmanager und der Registrierung sitzt und die Überprüfung für Sie übernimmt. 

Teilen:

https://www.aikido.dev/blog/slopsquatting-ai-package-hallucination-attacks

Abonnieren Sie Bedrohungs-News.

Starten Sie noch heute, kostenlos.

Kostenlos starten
Ohne Kreditkarte

Sicherheit jetzt implementieren

Sichern Sie Ihren Code, Ihre Cloud und Ihre Laufzeit in einem zentralen System.
Finden und beheben Sie Schwachstellen schnell und automatisch.

Keine Kreditkarte erforderlich | Scan-Ergebnisse in 32 Sek.