Be en kodningsassistent att lösa ett problem och den rekommenderar ibland att du installerar ett paket: riktiga för vanliga uppgifter, och, mätbart ofta, paket som inte existerar alls. Den uppfann ett rimligt namn eftersom det omgivande kodmönstret krävde ett beroende där. Om du eller din kodningsagent ändå kör installationskommandot, är det som faktiskt är registrerat under det namnet på PyPI eller npm det som landar på din maskin. Säkerhetsforskaren Seth Larson, utvecklare vid Python Software Foundation, kallade den resulterande attacken "slopsquatting", och registrerade namnen som modeller hallucinerar, den AI-genererade motsvarigheten till typosquatting.
Hur ofta händer detta egentligen
Ett team från University of Texas i San Antonio, Virginia Tech och University of Oklahoma mätte det direkt: "Vi har ett paket för dig!", accepterat till USENIX Security 2025. Över 576 000 genererade kodprover från 16 populära modeller på två språk hittade de hallucinerade paket i "minst 5,2 procent för kommersiella modeller", för totalt 417% unika modeller med öppen källkod, 417 procent. hallucinerade paketnamn. Detta är inte ett sällsynt kantfall; för vissa modeller med öppen källkod är det ungefär en av fem föreslagna beroenden.
| Modellklass | Hallucinationsfrekvens (av paketrekommendationer) |
|---|---|
| Kommersiella modeller (genomsnitt) | minst 5,2 procent |
| Modeller med öppen källkod (genomsnitt) | minst 21,7 procent |
Varför detta är hukbar, inte bara fel
Ett enstaka påhittat namn skulle vara en olägenhet, inte en attackyta. Det som gör det exploaterbart är upprepning: som Registret rapporterade den 12 april 2025, när forskare körde samma uppmaning igen tio gånger, "43 procent av hallucinerade paket upprepas varje gång och 39 procent dök aldrig upp igen." Nära hälften av hallucinerade namn är inte slumpmässigt brus; de är samma gissning som modellen når tillförlitligt givet liknande kod. En angripare behöver inte gissa vad en specifik utvecklare kommer att skriva. De kan köra samma modeller mot vanliga uppmaningar, samla in namn som upprepas och registrera dem på det riktiga paketindexet i förväg.
pip install fast-json-normalizer # suggested by a coding assistant
Collecting fast-json-normalizer
Downloading fast-json-normalizer-0.3.1.tar.gz
Running setup.py install for fast-json-normalizer ... done
# Nothing here indicates whether this name was ever a real, reviewed project
# or was registered specifically because models keep suggesting it.Varför detta passar mönstret som OWASP redan spårar
Det här är en variant av vad OWASPs topp 10 för LLM-applikationer kallar en risk för leveranskedjan för AI-assisterad utveckling: förtroendegränsen som brukade ligga vid "valde en människa att lägga till detta beroende" flyttas till "valt en modells mönsterkomplettering det", och mönsterkomplettering har ingen idé om huruvida ett namn är verkligt.
Vad ska man göra åt det egentligen
- Behandla varje paketnamn som en kodningsagent föreslår som ett förslag för att verifiera, inte ett känd-bra beroende, på samma sätt som du skulle behandla ett namn som en yngre bidragsgivare skrivit från minnet.
- Kontrollera registreringsdatum och nedladdningshistorik innan du installerar något obekant; ett paket som dök upp nyligen och är misstänkt väl anpassat till ett vanligt AI-genererat promptmönster förtjänar en andra titt.
- Fäst beroenden och använd en låsfil, så ett hallucinerat namn som halkade in en gång inte tyst löses om senare.
- Se vad ett nyinstallerat paket faktiskt gör vid första körningen. Ett nyligen registrerat beroende som når ut till en server som det inte har någon kontakt med är en signal som en brandvägg kan fånga även när en kodgranskning missade namnet.
Var FireAI och HisnLabs kommer in
A squatted package that phones home still has to make a connection to do it, from a Python or Node process you just ran; FireAI shows you that connection, the process behind it and where it is going, before you decide whether it belongs there.
FireAI är HisnLabs eget verktyg: en AI-brandvägg som körs direkt på din Mac. Den visar varje anslutning dina appar gör, på klarspråk, och låter dig avgöra vad som lämnar din Mac — AI:n körs lokalt, så din trafik skickas aldrig till oss eller någon annan. HisnLabs säkerhetsforskningsteam är de som håller de bedömningarna tillförlitliga: de katalogiserar vilka domäner som är vanlig telemetri och vilka som är en riktig tjänst, spårar land och nätverk bakom en anslutning och tränar den lokala modellen (Autopilot-funktionen) på verkliga trafikmönster — utan att något av det lämnar din Mac.
Du kan läsa om de tekniska besluten bakom, eller prova FireAI i 17 dagar, på FireAI, från HisnLabs.
