Grok Build Tüm Git Depolarını xAI Sunucularına Yüklüyor: Sadece Okunan Dosyalar Değil, Tüm Geçmiş de Gidiyor Yazılım

Grok Build Tüm Git Depolarını xAI Sunucularına Yüklüyor: Sadece Okunan Dosyalar Değil, Tüm Geçmiş de Gidiyor

xAI'nin Grok Build CLI aracı, kod yazma görevleri sırasında tüm Git deposunu ve geçmişini xAI'nin Google Cloud Storage'ına yüklüyor. Araştırmacı, okun

xAI'nin yapay zeka destekli kodlama asistanı Grok Build, kullanıcıların Git depolarının tamamını – tüm commit geçmişiyle birlikte – xAI'ye ait bir Google Cloud Storage bucket'ına yüklediği ortaya çıktı. Güvenlik araştırmacısı cereblab, Grok Build'in 0.2.93 sürümünü test ederken, aracın yalnızca kodlama görevi için gereken dosyaları değil, depodaki her şeyi gönderdiğini tespit etti. Araştırmacı, bu yüklemelerden birini yakalayarak Git paketini kurtardı ve araca açıkça 'okunmaması' söylenen bir dosyayı bile geri almayı başardı.

Yükleme, modelin kullandığı kanaldan ayrı bir kanal üzerinden gerçekleşiyor. Testlerde, modelin hiç okumadığı 12 GB'lık bir depoda, model trafiği yalnızca 192 KB iken, depolama kanalı 5.10 GiB veri taşıdı. Bu, modelin ihtiyaç duyduğu veri ile makineden çıkan veri arasında yaklaşık 27.800 kat fark anlamına geliyor. Yükleme, her biri yaklaşık 75 MB olan 73 parça halinde gerçekleşti ve her parça için HTTP 200 kodu alındı. Hedef bucket ise 'grok-code-session-traces' olarak adlandırılmıştı.

Cereblab, depoya 'src/_probe/never_read_canary.txt' adında, içinde benzersiz bir işaret bulunan bir dosya ekledi ve Grok Build'e bu dosyayı açmamasını söyledi. Buna rağmen, yakalanan Git paketi bu dosyayı ve deponun tüm commit geçmişini aynen içeriyordu. Aynı test başka bir depoda tekrarlandığında da benzer sonuçlar alındı. Bu, verinin iletildiğini, kabul edildiğini ve depolandığını kanıtlıyor. Araştırmacı, xAI'nin kodu eğitim için kullandığını iddia etmiyor, ancak verinin aktarımının gerçekleştiği açık.

Grok Build'in bir diğer sorunu da hassas verileri işleme şekli. Araç bir dosyayı okuduğunda, içeriği model trafiğine dahil ediyor. Testlerde, takip edilen bir .env dosyası, içindeki API_KEY ve DB_PASSWORD gibi sahte kimlik bilgileriyle birlikte hiçbir düzenlemeye uğramadan hem model trafiğine hem de oturum durumu arşivine eklendi. Araştırmacı, kullanılan kimlik bilgilerinin sahte olduğunu, bu nedenle gerçek bir sızıntı olmadığını ancak davranışın sorunlu olduğunu belirtiyor: Bir görev sırasında okunan bir kimlik bilgisi dosyası, herhangi bir düzenleme yapılmadan dışarı gönderildi ve depolandı.

Çoğu geliştiricinin kullanacağı 'Modeli iyileştir' ayarı burada işe yaramadı. Bu ayar kapalıyken bile Grok Build depoyu yüklemeye devam etti ve sunucunun /v1/settings yanıtı 'trace_upload_enabled: true' döndürmeye devam etti. Bu ayar, yalnızca verilerinizin model eğitiminde kullanılıp kullanılmayacağını kontrol ediyor; verilerin makinenizden çıkıp çıkmayacağını kontrol etmiyor. Bu iki farklı kontrol mekanizması ve yalnızca biri kullanıcıya sunulmuş durumda.

Her bulut tabanlı kodlama aracı, görevini yerine getirmek için bazı kaynak kodları uzak bir modele göndermek zorundadır. Ancak tüm depoyu ve geçmişini göndermek, yalnızca görev için gereken dosyaları göndermekten çok daha geniş bir sınırdır. Bir depo, tescilli kod, dahili URL'ler, müşteri verileri ve çalışma dizininden silinmiş ancak commit geçmişinde hala duran kimlik bilgileri içerebilir. Cereblab'ın karşılaştırmasında, Claude Code ve Codex hiçbir depo paketi göndermezken, Gemini boş bir testte hiçbir şey göndermedi. Grok Build bu konuda tek başına bir aykırılık oluşturuyor.

xAI, 13 Temmuz'da 0.2.93 sürümü için depolama isteklerini durdurdu. Cereblab altı kez test yaptı ve hiçbir /v1/storage yüklemesi görmedi; sunucu artık 'disable_codebase_upload: true' ve 'trace_upload_enabled: false' döndürüyor. Bu değişiklik sunucu tarafında yapıldı, yani bir güncelleme ile gelmedi. xAI konuyu bir güvenlik danışma belgesi yerine X üzerinden duyurdu. @SpaceXAI hesabı, sıfır veri saklama (ZDR) politikasına sahip kurumsal ekiplerin hiçbir zaman kod veya iz verisi depolamadığını belirtti. Elon Musk ise daha önce yüklenen tüm kullanıcı verilerinin 'tamamen ve tamamen silineceğini' söyledi.

Sonuç ve Değerlendirme

Kullanıcılar için en önemli adım, Grok Build'in göndermiş olabileceği tüm kimlik bilgilerini değiştirmektir: okuduğu her şey, takip edilen her dosya ve Git geçmişinde taşınan her şey, özellikle de daha önce commit'lenip sonra silinen bir sır. Gitignore dosyasında olduğu için hiç commit'lenmemiş bir dosya pakete dahil olmaz, ancak commit'lenmiş bir dosya geçmişte kalır ve sonradan silinmesi onu geri getirmez. 0.2.99 sürümünde yükleme kodunun hala binary'de bulunması, xAI'nin bir güncelleme olmadan bu özelliği tekrar etkinleştirebileceği anlamına geliyor. xAI hala neden tam depoların varsayılan olarak yüklendiğini, ne kadar süre saklandığını ve kaç kullanıcının etkilendiğini açıklamadı. Eğitim için devre dışı bırakma, kodunuzun yerinde kalacağı anlamına gelmez; makinenizden ne çıktığını kendiniz kontrol etmekte fayda var.

Kaynak: thehackernews.com

Paylaş: