Bezpieczeństwo
Co naprawdę wychodzi z twojego katalogu, kiedy pracuje agent
Niezależny badacz publikujący jako cereblab podpiął Grok Build pod własne proxy i zobaczył, że terminalowe narzędzie xAI samo z siebie pakuje całe repozytorium razem z historią gita i wysyła je do chmury, a podłożone w pliku .env fałszywe hasło idzie tą samą drogą. Na repozytorium o rozmiarze 12 GB rozmową z modelem poszły 192 KB, a osobnym połączeniem 5,1 GB, czyli także pliki, których agent nigdy nie otworzył. Przełącznik "Improve the model" nic nie zmieniał, bo serwer xAI przy starcie sesji i tak odsyłał zgodę na wysyłkę, przez co poprawka przyszła od xAI, a nie z twojego dysku.
Napisała AI, żeby oszczędzić Ci czytania setek źródeł. · Jak to działa
Bezpieczeństwo · 4 min ·
Niezależny badacz publikujący jako cereblab podłożył w pliku .env fałszywe hasło jako przynętę, podpiął pod własne proxy Grok Build, terminalowe narzędzie xAI do pisania kodu, i wpisał polecenie "odpowiedz OK, nie czytaj żadnych plików". Agent grzecznie odpisał OK. Sam z siebie, bez pytania, spakował przy tym całe repozytorium razem z historią gita i wysłał je do magazynu w chmurze Google, a badacz sklonował potem przechwyconą paczkę i znalazł w niej plik-znacznik, którego agent miał w ogóle nie otwierać, z nietkniętą zawartością, a podłożone w .env hasło poszło osobno, przepisane co do znaku, i kanałem rozmowy z modelem, i tą samą drogą do magazynu.
To nie był wyciek przy okazji czytania kodu. W osobnym teście, na repozytorium o rozmiarze 12 GB wypełnionym plikami, których agent nigdy nie otworzył, połączeniem, którym płynie rozmowa z modelem, poszły 192 KB, czyli mniej więcej sama wymiana zdań. Drugim, zupełnie osobnym połączeniem, prosto do magazynu plików w chmurze, do katalogu grok-code-session-traces, poszło 5,1 GB, czyli około 27 800 razy więcej, niż wymagało zadanie, więc na zewnątrz wychodziło całe repozytorium, a nie to, co agent przeczytał.
Grok Build ma przełącznik "Improve the model" i wyłączenie go nie zmieniło nic. Wyłączałeś go w przekonaniu, że twój kod przestaje wychodzić na zewnątrz, a serwer xAI przy starcie każdej sesji i tak odsyłał do narzędzia zgodę na wysyłkę, trace_upload_enabled: true, więc paczki szły swoim torem. Ten przełącznik decyduje o zgodzie na trenowanie modelu, a nie o tym, czy kod opuszcza twój dysk.
Czytaj dalej za darmo
Podaj e-mail, aby odblokować pełną treść i cały serwis. Zapiszemy Cię do newslettera.