Robocikowo>ROBOCIKOWO
Bezpieczeństwo

HalluSquatting

2026AktywnyOpublikowano: 10 lipca 2026Aktualizacja: 13 lipca 2026Opublikowany
Atak typu 'adversarial hallucination squatting' — atakujący rejestruje pakiety/repozytoria pod fałszywymi nazwami, które modele LLM halucynują (do 100% przypadków przy instalacji skilli), a asystenci kodujący pobierają je i wykonują payload w terminalu użytkownika.
Kluczowa innowacja
Uzbraja tendencję LLM do halucynowania nazw pakietów i repozytoriów — atakujący pre-rejestruje sfabrykowane nazwy i czeka, aż asystent AI je 'wymyśli' i wykona za użytkownika.
Kategoria
Bezpieczeństwo
Poziom abstrakcji
Wzorzec
Poziom operacji
ToolingInferencjaŚrodowisko agentowe
Zastosowania
Tworzenie agentowych botnetów (attacker use case)Dystrybucja malware bez znanych podatnościKompromitacja maszyn deweloperskichModel threat dla firm oceniających ryzyko asystentów AI (defender use case)Red-teaming asystentów kodującychAudyt supply chain security AI tooli

Jak działa

1. Rekonesans: atakujący masowo odpytuje LLM (np. GPT-5.1, Claude, Gemini) prosząc o rekomendacje pakietów, klonowanie repo, instalacje pluginów. Zbiera listę hallucynowanych, nieistniejących nazw. Wskaźnik halucynacji sięga 85% dla klonowania repo i 100% dla instalacji skilli. 2. Weryfikacja transferu: atakujący sprawdza, że te same nazwy halucynują różne modele fundamentalne — jeden squat = wielu asystentów. 3. Squatting: atakujący rejestruje te nazwy w PyPI, npm, GitHubie itd. z złośliwym ładunkiem (skrypt instalacyjny, backdoor, downloader). 4. Pułapka: gdy ktoś prosi asystenta AI o 'popularną bibliotekę do X', asystent halucynuje nazwę pułapki i wywołuje pip install / git clone / plugin install w wbudowanym terminalu. 5. Wykonanie: ładunek uruchamia się z uprawnieniami użytkownika lub agenta. Może zainstalować malware, dodać hosta do botnetu 'agentowego', eksfiltrować dane, ustanowić persistence. 6. Skalowanie: każde niezależne zapytanie użytkownika = niezależne zdarzenie infekcji. Botnet rośnie proporcjonalnie do liczby użytkowników danego asystenta.

Rozwiązany problem

HalluSquatting NIE rozwiązuje problemu — jest atakiem. Rozwiązuje jednak problem ATAKUJĄCEGO: jak dostać się do maszyn deweloperów bez znanych podatności, bez lateralnego ruchu i bez bezpośredniego kanału komunikacji z ofiarą. Odpowiedź: pozwól LLM samemu zaprowadzić ofiarę do złośliwego pakietu.

Komponenty

Hallucination discoveryRekonesans

Systematyczne odpytywanie modelu i logowanie zwracanych, nieistniejących nazw pakietów/repo/skilli. Zwykle w skalowanym pipeline z tysiącami wariantów promptu.

Oficjalna

Transfer probingAmplifikacja skali

Weryfikacja że te same halucynowane nazwy powtarzają się dla różnych rodzin foundation models (GPT, Claude, Gemini, Llama itd.). Determinuje 'zwrot z inwestycji' w squat.

Oficjalna

Name registrationSquatting / pułapka

Publikacja pakietów/repo pod halucynowanymi nazwami w publicznych rejestrach (PyPI, npm, GitHub, Hugging Face). Ładunek zwykle zawarty w post-install script lub README z instrukcjami do wykonania.

Malicious payloadEgzekucja

Kod uruchamiany po ściągnięciu przez asystenta: backdoor, downloader dodatkowego malware, kod dołączający hosta do botnetu, skrypty eksfiltracyjne. Może wykorzystywać uprawnienia terminala asystenta.

Oficjalna

Agentic terminal executionKanał wykonania

Wektor faktycznej infekcji: asystent AI (Cursor, Windsurf, GitHub Copilot, Cline, Gemini CLI, OpenClaw, Claude Code) uruchamia pobrany pakiet w swoim built-in terminalu jako część normalnego workflow developera.

Implementacja

Pułapki implementacyjne
Ślepa wiara w rekomendacje asystentaKrytyczna

Deweloper akceptuje 'pip install' lub 'git clone' zasugerowany przez asystenta bez weryfikacji istnienia i reputacji pakietu w oficjalnym rejestrze.

Rozwiązanie:Wymuszaj policy 'human approval' dla install/clone w asystencie. Auto-check listy allowlisted pakietów lub scan reputacji przed wykonaniem.
Terminale asystentów z pełnymi uprawnieniami użytkownikaWysoka

Wbudowany terminal Cursor/Windsurf/OpenClaw domyślnie uruchamia komendy jako bieżący user, z dostępem do sekretów, kluczy SSH, tokenów CI. Kompromitacja = kompromitacja developera.

Rozwiązanie:Uruchamiaj agenta w kontenerze/sandboxie z ograniczonymi uprawnieniami. Trzymaj sekrety w zewnętrznym vaulcie (nie w env vars).
Brak allowlist pakietów w organizacjiWysoka

Bez wewnętrznego rejestru zatwierdzonych pakietów (proxy PyPI, GitHub private registry) asystent może pobrać dowolny publiczny pakiet.

Rozwiązanie:Wprowadź proxy dla PyPI/npm z whitelistą; blokuj bezpośredni dostęp do publicznych rejestrów z maszyn deweloperskich.
Ślepa transferability między modelamiŚrednia

Zmiana modelu (np. GPT-5.1 → Claude) NIE chroni — te same halucynowane nazwy występują u różnych vendorów.

Rozwiązanie:Traktuj podatność jako systemową, nie vendor-specific. Nie polegaj na 'zmianie modelu' jako mitigacji.

Ewolucja

Oryginalny paper · 2026 · Publikacja online (research site) + relacja SecurityWeek, 10 lipca 2026 · Zespół badawczy: Tel Aviv University, Technion, Intuit
Agentic Botnets via HalluSquatting: Weaponizing LLM Hallucinations Across AI Coding Assistants
Zespół badawczy: Tel Aviv University, Technion, Intuit
2024
Odkrycie systematycznej halucynacji nazw pakietów przez LLM

Badacze (m.in. Lasso Security, Vulcan) dokumentują że popularne LLM regularnie wymyślają nieistniejące nazwy pakietów w rekomendacjach kodu. Wczesne prace ostrzegają o możliwym typosquatting-analogicznym ryzyku.

2026
Formalizacja i weaponizacja: HalluSquatting
Punkt przełomowy

Zespół Tel Aviv University + Technion + Intuit publikuje 10 lipca 2026 pełny fram­ework 'adversarial hallucination squatting'. Wskaźniki halucynacji: 85% (klonowanie repo), 100% (instalacja skilli). Kluczowe odkrycie: transferability między różnymi foundation models. Cel: agentic botnets. Vendorzy powiadomieni przed publikacją, exploit details wstrzymane.

Hiperparametry (konfigurowalne osie)

Liczba promptów rekonesansowychWysoka

Ile różnych promptów atakujący wysyła by odkryć halucynowane nazwy. Większa liczba → większy 'hallucination corpus' → więcej squatów.

1 000 – 10 000Typowa skala rekonesansu w publikacji.
Docelowe rejestry pakietówKrytyczna

Które publiczne rejestry są celem squatingu (PyPI, npm, GitHub, Hugging Face, VS Code Marketplace, MCP servers). Rozszerzenie zakresu zwiększa powierzchnię ataku.

PyPI + npm + GitHubTrzy najpopularniejsze rejestry pokrywają większość asystentów kodujących.
Etap wykonania ładunkuWysoka

Kiedy złośliwy kod się aktywuje: post-install script (natychmiast po instalacji), import time (przy pierwszym imporcie), scheduled (opóźniony trigger by uniknąć wykrycia w piaskownicy).

post-installNajprostsze i najczęstsze — pip / npm uruchamia post-install natychmiast.

Wymagania sprzętowe

Podstawowe

HalluSquatting jest atakiem software'owym na warstwie orkiestracji AI tooli. Nie zależy od konkretnego procesora ani akceleratora.