Paket-Halluzination durch KI

Paket-Halluzination durch KI

Der Assistent hat ein Paket genannt. Niemand hat geprüft, ob es echt ist.

Was ist Paket-Halluzination durch KI?

Ein KI-Coding-Assistent kann ein Paket nennen, hinter dem keine echte Bibliothek steht, und jeder kann diesen Namen registrieren und ein Installationsskript daran hängen. Sie nehmen den selbstsicheren Diff des Assistenten an, installieren das genannte Paket und sehen zu, wie ein Postinstall-Skript läuft, bevor Sie eine Zeile davon gelesen haben. Danach lesen Sie die Paketseite in der Registry, die Sie übersprungen haben, widerrufen das dabei exponierte Token, leiten Installationen über eine Allowlist und wechseln zu einer geprüften Bibliothek. Am Ende können Sie eine Abhängigkeit prüfen, bevor Sie ihr vertrauen.

Was Sie lernen in Paket-Halluzination durch KI

Paket-Halluzination durch KI — Trainingsschritte

  1. Den Namen besetzen

    Bob besetzt die Paketnamen, die KI-Assistenten erfinden. Er sammelt plausibel klingende Bibliotheksnamen, die ein Assistent wahrscheinlich vorschlagen wird, registriert sie in der öffentlichen pkghaus-Registry, bevor jemand danach fragt, und wartet, bis jemand eines der Pakete installiert. Vor sechs Tagen hat er ratelimit-guard registriert und mit einem Postinstall-Skript versehen. Prüfen Sie, ob die Falle noch scharf ist.

  2. Drosselung bis Freitag

    An Ihrem Schreibtisch finden Sie ein Issue, das Ihre Teamleiterin in Jotvane, dem Issue-Tracker des Teams, für Sie angelegt hat: Die Login-Route braucht vor dem Release am Freitag Rate Limiting.

  3. Das Projekt öffnen

    Der Editor lädt die Login-Route, das Manifest und die .npmrc des Projekts. In der Route steht ein Platzhalter an der Stelle, an die das Rate Limiting gehört, und die .npmrc verweist npm auf die pkghaus-Registry.

  4. Rate Limiting anfordern

    Öffnen Sie den Assistenten und bitten Sie ihn: „Füge der Login-Route Rate Limiting hinzu“.

  5. Ein Paket taucht auf

    Claude liest die Route und das Manifest und schlägt dann einen Diff vor, der ein Paket namens ratelimit-guard importiert und auf die Route anwendet. Die Antwort klingt selbstsicher und liefert gleich den einzeiligen Installationsbefehl.

  6. Den Diff annehmen

    Wenn Sie den Diff annehmen, landen die Zeilen des Assistenten in der Datei. Die Randleiste markiert sie violett als ungeprüft: von Claude geschrieben, noch von keinem Menschen gelesen.

  7. Das Paket installieren

    Sie führen den Installationsbefehl des Assistenten aus. npm gibt die Zeilen des Postinstall-Skripts aus und meldet, dass das Paket hinzugefügt wurde. Auf der Kontextkarte leuchtet eine neue Datei unter node_modules auf, die die Installation gerade auf diesen Laptop gebracht hat.

  8. Veröffentlichung unter Galtmeres Namen

    Bei Alices Installation hat das Postinstall-Skript unbemerkt genau eine Sache erledigt: Es hat ihr npm-Publish-Token aus ~/.npmrc gelesen und an Bobs Sammelserver geschickt. Mit diesem Token lässt sich jedes Paket im Scope @galtmere veröffentlichen. Jetzt löst Bob es ein. Er veröffentlicht einen manipulierten Patch von Galtmeres eigenem Paket @galtmere/session-kit direkt in der Registry.

  9. Eine Meldung zu Ihrem Token

    Der Leiter der IT-Sicherheit hat ein Issue zu einer Meldung der Registry angelegt: Mit Ihrem npm-Token wurde etwas unter Galtmeres Namen veröffentlicht, und zwar von einer Adresse, die nicht Ihre ist.

  10. Das Paket nachschlagen

    Vor der Installation haben Sie die Seite des Pakets nie geöffnet. Öffnen Sie sie jetzt über den Link im Diff, den Claude vorgeschlagen hat.

Abdeckung der Sicherheits-Frameworks

OWASP Top 10

  • A03:2025 Software Supply Chain Failures

CWE

  • CWE-1357 Reliance on Insufficiently Trustworthy Component
  • CWE-829 Inclusion of Functionality from Untrusted Control Sphere

MITRE ATT&CK

  • T1195.001 Supply Chain Compromise: Compromise Software Dependencies and Development Tools

CIS Controls

  • CIS 16 Application Software Security
  • CIS 2 Inventory and Control of Software Assets

NIST CSF

  • PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
  • PR.PS Platform Security
  • ID.AM Asset Management