كشف الباحث المعروف باسم cereblab أن أداة Grok Build CLI التابعة لـ xAI كانت تقوم برفع مستودعات Git كاملة، بما في ذلك سجل الالتزامات (commit history) إلى خادم تخزين سحابي في Google Cloud، وليس فقط الملفات التي يحتاجها النموذج لتنفيذ المهمة.
- في تجربة على مستودع حجمه 12 غيغابايت، بلغ حجم البيانات المرسلة إلى واجهة النموذج نحو 192 كيلوبايت فقط، بينما وصل حجم البيانات المرفوعة إلى التخزين إلى أكثر من 5.10 غيغابايت، أي بفارق يقارب 27,800 مرة.
- الملفات المرفوعة تضمنت حتى ملفات لم يقرأها النموذج مثل never_read_canary.txt، إضافة إلى كامل سجل الالتزامات.
مخاطر الخصوصية وتسرب البيانات
المشكلة لا تتعلق بالتدريب على البيانات، بل بعملية النقل والتخزين نفسها. فالمستودعات قد تحتوي على:
- شيفرات ملكية لشركات.
- بيانات داخلية وروابط حساسة.
- مفاتيح وصول وكلمات مرور حتى لو كانت محذوفة من الشجرة الحالية، لكنها تبقى محفوظة في سجل الالتزامات. كما أظهر الاختبار أن ملفات مثل .env التي تحتوي على بيانات اعتماد (API_KEY وDB_PASSWORD) تم رفعها دون أي إخفاء أو تنقيح.
رد xAI والإجراءات المتخذة
في 13 يوليو 2026، توقفت النسخة 0.2.93 عن إرسال طلبات التخزين، حيث أظهرت الإعدادات الجديدة أن خاصية disable_codebase_upload أصبحت مفعلة، وtrace_upload_enabled أُلغيت.
- هذا التغيير كان على مستوى الخادم وليس تحديثًا للعميل.
- حسابات أخرى أكدت نفس التغيير، ما يشير إلى أنه إجراء عام.
- مع ذلك، لم توضح xAI سبب رفع المستودعات كاملة، ولا مدة الاحتفاظ بها، ولا عدد المستخدمين المتأثرين.
توصيات للمطورين
- تفعيل خيار Zero Data Retention (ZDR) للمؤسسات، أو استخدام أمر /privacy في واجهة CLI لتعطيل الاحتفاظ بالبيانات وحذف ما تم رفعه سابقًا.
- تدوير بيانات الاعتماد التي ربما تم رفعها، بما في ذلك أي مفاتيح أو كلمات مرور موجودة في ملفات أو محفوظة في سجل الالتزامات.
- إدراك أن حذف ملف من المستودع لا يزيله من سجل الالتزامات، وبالتالي قد يبقى ضمن البيانات المرفوعة.
- مقارنة مع أدوات أخرى مثل Claude Code وCodex وGemini، فإن Grok Build كان الاستثناء الوحيد الذي رفع المستودعات كاملة.































