AI halucinuje názvy softwarových balíčků – útočníci je registrují a plní malwarem
Akademický výzkum potvrdil, že přibližně pětina softwarových balíčků navrhovaných AI modely při generování kódu vůbec neexistuje. Útočníci tuto slabinu systematicky zneužívají: halucinované názvy registrují v balíčkových registrech a plní je škodlivým kódem čekajícím na vývojáře, kteří AI návrhy přijímají bez ověření.
Jev dostal jméno slopsquatting – slovní hříčka spojující termíny „AI slop" (nekvalitní AI výstup) a „typosquatting" (registrace záměrně chybně napsaných názvů). Termín v dubnu 2025 zavedl Seth Larson z Python Software Foundation. Na rozdíl od typosquattingu, kde útočník spoléhá na lidský překlep, nebo od dependency confusion, kde parazituje na shodě interního a veřejného názvosloví, slopsquatting využívá chybu samotného jazykového modelu: ten generuje věrohodně znějící názvy balíčků bez ověření, zda takové balíčky v registru skutečně existují.
Rozsah problému potvrdil akademický výzkum „We Have a Package for You!" z University of Texas at San Antonio, Virginia Tech a University of Oklahoma, přijatý na konferenci USENIX Security 2025. Autoři otestovali šestnáct modelů na 576 000 vzorcích kódu v Pythonu a JavaScriptu. V průměru 19,7 procenta navrhovaných balíčků neexistovalo, celkem šlo o 205 474 unikátních halucinovaných názvů. Otevřené modely halucinovaly výrazně více – 21,7 procenta – zatímco komerční modely dosáhly 5,2 procenta. Nejhůře dopadly varianty CodeLlama s mírou halucinací přes třetinu; GPT-4 Turbo se držel na 3,6 procentech.
Zásadní zjištění studie se týká opakovatelnosti. Při opakování téhož dotazu se 43 procent halucinovaných názvů vracelo pokaždé, ve všech deseti testech. Celkem 58 procent se opakovalo alespoň dvakrát. Pouze 39 procent halucinací bylo jednorázových. Tato konzistentnost je pro útočníky zásadní: nemusí sledovat soukromé dotazy vývojářů. Stačí generovat typické vývojářské otázky, identifikovat opakující se fiktivní názvy a zaregistrovat je. Firma Socket k tomu v analýze halucinačních vzorců poznamenala, že „tato konzistentnost dělá ze slopsquattingu životaschopnější hrozbu, než by se čekalo".

Jak vypadají halucinované názvy? Firma Aikido Security ve své analýze shrnuje výsledky studie USENIX: 38 procent halucinací jsou názvy vzniklé spojením dvou skutečných balíčků – například jscodeshift a react-codemod se sloučí v react-codeshift. Třináct procent připomíná překlepy existujících knihoven a 51 procent jsou čistě vymyšlené názvy. Z pohledu balíčkového registru takový název nevypadá jako napodobenina. Vypadá jako další drobná knihovna v ekosystému, který jich produkuje tisíce denně, a tedy nepřitahuje automatickou pozornost antivirových nebo bezpečnostních filtrů.
Konkrétní dopad ukázal bezpečnostní výzkumník Bar Lanyado z Lasso Security v experimentu z března 2024: na PyPI zveřejnil prázdný balíček huggingface-cli – název, který AI modely opakovaně halucinovaly místo správného huggingface_hub. Za tři měsíce zaznamenal přes 30 000 stažení. Alibaba halucinovaný příkaz dokonce přejala do dokumentace vlastního repozitáře. Experiment neobsahoval škodlivý kód – právě to ho dělá analyticky cenným, protože odděluje otázku dosažitelnosti od otázky záměru.
Na podzim 2025 firma Koi Security popsala první rozsáhlou kampaň aktivně využívající tento vzorec: PhantomRaven. Od srpna 2025 zveřejnila na npm 126 škodlivých balíčků se jmény odpovídajícími vzorcům AI halucinací – například unused-imports místo existujícího eslint-plugin-unused-imports. Balíčky celkem nasbíraly přes 86 000 instalací. Po instalaci spouštěly skript kradoucí npm tokeny, přihlašovací údaje ke GitHubu a tajemství z CI/CD pipeline. Vývojářské prostředí je pro útočníky přitažlivým cílem: build server obvykle podepisuje artefakty, publikuje balíčky nebo čte tajemství pro nasazení – přístup, který běžná produkční aplikace nemá.
PhantomRaven kombinoval slopsquatting s technikou vzdálených dynamických závislostí. Samotné balíčky na npm vypadaly čistě; škodlivý kód stáhl npm při instalaci z externího serveru, protože package.json odkazoval závislost přes HTTP URL. Statické skenery analyzující pouze obsah registru hrozbu nezachytily. Koi Security poznamenala, že žádný bezpečnostní nástroj na npm takové URL závislosti nenásleduje a neanalyzuje. Endor Labs v březnu 2026 identifikoval další tři vlny PhantomRaven s 88 novými balíčky, přičemž jádro škodlivého kódu zůstalo prakticky totožné – 257 z 259 řádků beze změny.
Riziko slopsquattingu roste ruku v ruce s rozšiřováním agentického vývoje. Sonatype ve Zprávě o stavu dodavatelského řetězce softwaru 2026 uvádí, že výzkum IDC dokumentuje průměrné přijetí 39 procent AI-generovaného kódu vývojáři bez jakékoliv úpravy. Případ zachycený výzkumníkem Charliem Eriksenem z Aikido Security v lednu 2026 ilustruje, kam tato praxe vede: název balíčku react-codeshift, který žádný člověk nevymyslel a nikdo na npm nezaregistroval, se rozšířil do 237 repozitářů prostřednictvím agentických skriptů automaticky přebírajících závislosti z jiných AI-generovaných souborů. Celý řetězec od halucinace přes šíření po potenciální instalaci proběhl bez lidského zásahu.
Tradiční nástroje jako npm audit nebo pip-audit slopsquatting neřeší – audit prověřuje zranitelnosti evidované v databázích, nikoli to, zda vůbec má být daná závislost v projektu. Praktická obrana začíná politikou pro přidávání nových závislostí: každý balíček navržený AI projde stejnou kontrolou jako balíček přidaný ručně – ověření existence v registru, kontrola historie vydání a instalačních skriptů. Aikido Security vydala open-source nástroj SafeChain, lokální proxy ověřující balíčky oproti databázi známého malwaru před stažením. Sonatype nabízí komerční Nexus Repository Firewall, který v prvním čtvrtletí 2025 zablokoval přes 20 900 pokusů o instalaci škodlivých balíčků.
Další články

EU se chystá udělit Googlu rekordní pokutu podle DMA za zvýhodňování vlastních produktů ve vyhledávání

Španělský dozorový úřad rozhodl: ministerstvo školství porušilo GDPR tím, že žákům poskytovalo vzdělávací cloud Microsoftu

