xAI wrzuciło dziś na GitHuba pełny kod źródłowy Grok-Build, swojego terminalowego narzędzia do pracy z plikami i repozytoriami Git. Stało się to chwilę po tym, jak wybuchły kontrowersje wokół skali danych wysyłanych przez usługę na serwery firmy. Sam Grok-Build działa w sposób dobrze znany z innych asystentów do kodowania uruchamianych w terminalu.
- Z opublikowanego repozytorium na GitHubie wynika, że udostępniono pełny kod Grok-Build: 844 530 linii w Rustcie na licencji Apache 2.0.
- xAI podało, że po stronie serwera wyłączyło mechanizm wysyłania danych, więc nie trzeba było instalować poprawki, żeby zatrzymać dalszą transmisję.
- Elon Musk zapowiedział „całkowite i bezwzględne” usunięcie wcześniej zebranych danych użytkowników.
- xAI dodało komendę /privacy, dzięki której możesz wyłączyć retencję danych i usunąć wcześniej zsynchronizowane pliki.
- Firma przekazała też, że problem nie dotyczył klientów biznesowych objętych umowami bez retencji danych.
- xAI zapowiedziało również, że od 12 lipca przechowywanie danych ma być domyślnie wyłączone.
Sprawa wyszła na jaw po publikacjach badaczy, którzy pokazali, że Grok-Build potrafił po cichu wysyłać na serwery xAI dużo więcej danych, niż sugerował sposób działania usługi. Z ich ustaleń wynika, że program przesyłał dane do zasobnika Google Cloud Storage kontrolowanego przez xAI. Do chmury miały trafiać nie tylko pojedyncze pliki potrzebne do wykonania konkretnego zadania, ale też całe katalogi robocze, kompletne repozytoria Git razem z historią commitów i inne pliki, które wcale nie były potrzebne do realizacji polecenia.
A to już oznaczało realne ryzyko wycieku danych wrażliwych. Badacze wymieniali między innymi klucze SSH, bazy haseł, klucze API i inne poświadczenia zapisane lokalnie na komputerze. W praktyce nawet jedna sesja mogła objąć znacznie więcej, niż użytkownik zakładał.
W jednym z testów opisanych przez badaczy Grok-Build wysłał 5,1 GB danych do zadania, które wymagało zaledwie 192 KB. To około 27 800 razy więcej, niż było potrzebne. Zwracali oni też uwagę, że transmisja następowała nawet wtedy, gdy wyraźnie zaznaczałeś, żeby nie czytać określonych plików. Według ich analiz ustawienie dotyczące udostępniania danych w celu ulepszania usługi nie blokowało samego wysyłania danych.
To było sprzeczne z wcześniejszym przekazem marketingowym xAI, według którego podczas sesji na serwery firmy nie miało trafiać „nic z twojego repozytorium”.
Opublikowanie kodu daje ci możliwość sprawdzenia obecnego stanu narzędzia i ocenienia, jak działa po wprowadzonych zmianach. Open source poprawia przejrzystość na przyszłość, ale nie cofa skutków wcześniejszej ekspozycji danych. Na ten moment publicznie dostępny jest tylko pojedynczy zrzut repozytorium na GitHubie, a nie pełna historia prac.
W opublikowanej wersji, jak wynika z analiz badaczy, wciąż mają być widoczne ślady funkcji odpowiedzialnej za upload, choć sama opcja została wyłączona. Żeby skorzystać z nowego ustawienia prywatności, trzeba wpisać komendę /privacy. Jeśli używałeś Grok-Build w środowiskach zawierających poufne dane, zalecana pozostaje rotacja poświadczeń, przede wszystkim kluczy SSH, haseł i kluczy API.
Na tym sprawa się nie kończy, bo najważniejsze pytanie brzmi, ilu użytkowników zdążyło już wysłać do chmury firmowe repozytoria i poufne dane, zanim mechanizm został wyłączony. Wszyscy pozostali nadal muszą czekać na pełną publiczną historię zmian.