# Slopsquatting: gdy Twój asystent kodowania AI wymyśla pakiet, a ktoś inny go rejestruje

> Modele generujące kod halucynują nazwy pakietów w mierzalnym, czasem przewidywalnym tempie. Atakujący rejestrują te nazwy naprawdę. Co wykazały badania i dlaczego ma to znaczenie w momencie uruchomienia `pip install`.

HisnLabs Security & Research Team · Published 2026-09-25
Canonical: https://hisnlabs.com/pl/blog/slopsquatting-hallucinated-packages-coding-agents

Poproś asystenta kodowania o rozwiązanie problemu, a czasami zaleci instalację pakietu: prawdziwego do typowych zadań i, wymiernie często, pakietów, które w ogóle nie istnieją. Wymyślił wiarygodną nazwę, ponieważ otaczający wzorzec kodu wymagał tam zależności. Jeśli ty lub twój agent kodujący i tak uruchomicie polecenie install, wszystko, co faktycznie jest zarejestrowane pod tą nazwą w PyPI lub npm, wyląduje na twoim komputerze. Badacz bezpieczeństwa Seth Larson, programista-rezydent w Python Software Foundation, nazwał wynikający z tego atak „slopsquatting”, odnotowując nazwy halucynacje modeli, czyli generowany przez sztuczną inteligencję odpowiednik typosquattingu.

## Jak często to się faktycznie zdarza

Zespół z Uniwersytetu Teksasu w San Antonio w stanie Virginia Tech i Uniwersytetu w Oklahomie zmierzył to bezpośrednio: [„Mamy dla Ciebie pakiet!”](https://arxiv.org/abs/2406.10279) został przyjęty do USENIX Security 2025. W 576 000 wygenerowanych próbek kodu z 16 popularnych modeli w dwóch językach znaleziono pakiety halucynacyjne w „co najmniej 5,2% w przypadku modeli komercyjnych i 21,7% w przypadku modeli typu open source”, co daje w sumie 205 474 unikalnych nazw pakietów halucynacyjnych. Nie jest to rzadki przypadek Edge; w przypadku niektórych modeli typu open source jest to mniej więcej jedna na pięć sugerowanych zależności.

| Klasa modelu | Wskaźnik halucynacji (zaleceń pakietu) |
| --- | --- |
| Modele komercyjne (średnie) | co najmniej 5,2 proc |
| Modele typu open source (średnio) | co najmniej 21,7 proc |

*Spracklen i in., USENIX Security 2025, arXiv:2406.10279. Średnie dla 16 testowanych modeli; poszczególne modele były zróżnicowane.*

## Dlaczego to jest nie do przyjęcia, a nie tylko błędne

Jednorazowa wymyślona nazwa byłaby uciążliwością, a nie powierzchnią ataku. To, co sprawia, że ​​można go wykorzystać, to powtarzanie: jak [Jak poinformował „Rejestr”.](https://www.theregister.com/2025/04/12/ai_code_suggestions_sabotage_supply_chain/) z 12 kwietnia 2025 r., kiedy badacze powtórzyli ten sam komunikat dziesięć razy, „43 procent pakietów halucynacji powtarza się za każdym razem, a 39 procent nigdy się nie pojawia”. Prawie połowa imion zawierających halucynacje nie jest przypadkowym dźwiękiem; są to te same przypuszczenia, do których model sięga po niezawodnie podobny kod. Osoba atakująca nie musi zgadywać, co napisze konkretny programista. Mogą uruchamiać te same modele w oparciu o typowe podpowiedzi, zbierać powtarzające się nazwy i rejestrować je z wyprzedzeniem w rzeczywistym indeksie pakietów.

*Przykład: moment ryzyka*

```console
$ 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.
```

## Dlaczego to pasuje do wzorca, który OWASP już śledzi

Jest to odmiana tego, co [Top 10 aplikacji OWASP dla aplikacji LLM](https://owasp.org/www-project-top-10-for-large-language-model-applications/) nazywa ryzykiem łańcucha dostaw w przypadku rozwoju wspomaganego sztuczną inteligencją: granica zaufania, która wcześniej znajdowała się na poziomie „czy człowiek zdecydował się dodać tę zależność”, przesuwa się do „czy wybrało to uzupełnianie wzorca modelu”, a uzupełnianie wzorca nie ma pojęcia, czy nazwa jest prawdziwa.

## Co właściwie z tym zrobić

- Traktuj każdą nazwę pakietu, którą sugeruje agent kodujący, jako sugestię do sprawdzenia, a nie jako znaną dobrą zależność, w ten sam sposób, w jaki traktowałbyś nazwę wpisaną przez młodszego współautora z pamięci.
- Sprawdź datę rejestracji i historię pobierania przed zainstalowaniem czegokolwiek nieznanego; pakiet, który pojawił się niedawno i jest podejrzanie dobrze dopasowany do popularnego wzorca podpowiedzi generowanego przez sztuczną inteligencję, zasługuje na drugie spojrzenie.
- Przypnij zależności i użyj pliku blokującego, aby halucynacyjna nazwa, która wkradła się raz, nie została później po cichu rozwiązana.
- Zobacz, co faktycznie robi świeżo zainstalowany pakiet przy pierwszym uruchomieniu. Nowo zarejestrowana zależność docierająca do serwera, z którym nie ma kontaktu biznesowego, jest sygnałem, który zapora może przechwycić, nawet jeśli podczas przeglądu kodu nie pominięto nazwy.

## Jaką rolę odgrywają FireAI i HisnLabs

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 to własny produkt HisnLabs: zapora sieciowa z AI działająca bezpośrednio na Macu. Pokazuje prostym językiem każde połączenie nawiązywane przez twoje aplikacje i pozwala ci decydować, co opuszcza twojego Maca — jej AI działa lokalnie, więc twój ruch nigdy nie jest wysyłany do nas ani do nikogo innego. Zespół badań nad bezpieczeństwem HisnLabs dba o to, by te decyzje pozostały trafne: kataloguje, które domeny to zwykła telemetria, a które prawdziwa usługa, śledzi kraj i sieć stojące za połączeniem oraz trenuje lokalny model (funkcję FireAI Pilot) na rzeczywistych wzorcach ruchu — a nic z tego nie opuszcza twojego Maca.

Możesz przeczytać o decyzjach technicznych, które za tym stoją, albo wypróbować FireAI przez 17 dni na [FireAI od HisnLabs](https://hisnlabs.com/fireai/pl/download).

## Sources

- [Spracklen et al., “We Have a Package for You!” (USENIX Security 2025 / arXiv:2406.10279)](https://arxiv.org/abs/2406.10279)
- [The Register: AI code suggestions sabotage software supply chain](https://www.theregister.com/2025/04/12/ai_code_suggestions_sabotage_supply_chain/)
- [OWASP: Top 10 for Large Language Model Applications](https://owasp.org/www-project-top-10-for-large-language-model-applications/)
