شرکت xAI کد منبع ابزار Grok Build خود را در ۱۵ ژوئیه ۲۰۲۶ منتشر کرد؛ یعنی تنها دو روز پس از آنکه محققان ثابت کردند این نرمافزار بهطور مخفیانه مخازن کامل git، دایرکتوریهای خانگی (home directories) و فایلهای حساس را به Google Cloud Storage آپلود میکند.
حادثهای که منجر به این انتشار شد
در ۱۳ ژوئیه، یک محقق امنیتی نشان داد که Grok Build کنترلهای حریم خصوصی تبلیغشده خود را نادیده میگیرد. وقتی کاربر کلید «توقف آپلود» (stop uploads) را فعال میکرد، ابزار همچنان در حال ارسال دادهها به یک باکت ابری (cloud bucket) بود. این آپلودها تمام فایلهای موجود در دایرکتوری کاری را برمیداشتند و در حداقل یک مورد، کل پوشه home را جارو کرده و کلیدهای SSH و پایگاههای داده رمز عبور را فاش کردند.
xAI یک پرچم (flag) سمت سرور را پشت چکباکس کاربر پنهان کرده بود. دو روز بعد، این شرکت اعلام کرد که Grok Build تحت لایسنس Apache 2.0 بهصورت متنباز منتشر میشود و این اقدام را راهی برای گسترش دسترسی توسعهدهندگان توصیف کرد.
آنچه مخزن (repository) هنوز در خود دارد
نگاهی گذرا به مخزن جدید نشان میدهد که روتین استخراج داده (exfiltration routine) هنوز آنجاست. این بخش درون یک شرط (conditional) قرار دارد که پرچم پنهان را بررسی میکند؛ این پرچم هنوز وجود دارد، اما فقط غیرفعال شده است. کد همچنین شامل بلوکهایی است که بدون ذکر منبع از OpenAI و OpenCode کپی شدهاند و دستورالعملهایی را برای زیر-عاملها (sub-agents) جهت پنهان کردن وجودشان در خود جای داده است؛ تکنیکی که تحلیلهای جرمشناسی دیجیتال (forensic analysis) را دشوار میکند.
چرا باقی ماندن این کد اهمیت دارد
توسعهدهندگانی که اکنون از Grok Build استفاده میکنند، باید به xAI اعتماد کنند تا در هر وصله (patch)، وضعیت یک پرچم واحد را درست نگه دارد. این اعتماد به سه دلیل شکننده است:
- مسیر کنترل پنهان – این پرچم در سمت سرور قرار دارد و برای کاربران نهایی قابل مشاهده نیست. یک پیکربندی اشتباه یا یک فرد داخلی بدخواه میتواند بدون هیچ ردپای حسابرسی (audit trail)، آن را تغییر دهد.
- استفاده مجدد از کد بدون ذکر منبع – عدم شفافیت در منشأ لایسنس میتواند در صورت ناسازگاری شرایط کد قرض گرفته شده، کاربران را در معرض ریسکهای قانونی قرار دهد.
- دستورالعملهای پنهانسازی (Obfuscation) – مکانیسمهای پنهانسازی داخلی، تشخیص فعالیتهای مخرب احتمالی ابزار توسط ابزارهای امنیتی را دشوارتر میکند.
برچسب متنباز (open-source) بهطور خودکار باعث بازبینی توسط جامعه کاربری نمیشود. مخزن xAI درخواستهای Pull Request خارجی را نمیپذیرد، بنابراین با وجود اینکه کدها بهصورت عمومی قابل خواندن هستند، پایگاه کد در یک حلقه بسته تکامل خواهد یافت.
مقایسه Grok Build با جایگزینها
| ابزار | لایسنس | مشارکتهای جامعه کاربری | وابستگی به فروشنده (Vendor lock-in) |
|---|---|---|---|
| Grok Build | Apache 2.0 | خیر (xAI درخواستهای PR را مسدود میکند) | پایین (از مدلهای متعدد پشتیبانی میکند) |
| Codex CLI | Apache 2.0 | خیر (محدود به OpenAI است) | بالا (فقط OpenAI) |
| OpenCode | MIT | بله (مشارکتهای جامعه را میپذیرد) | پایین (چند ارائهدهنده) |
| Claude Code | Proprietary | خیر | بالا (فقط Claude) |
تنها مزیت آشکار Grok Build توانایی آن در اتصال به مدلهای محلی یا سایر ارائهدهندگان است که وابستگی به یک ارائهدهنده واحد را کاهش میدهد. سایر موارد — از جمله شفافیت لایسنس، مدل مشارکت و منشأ کد — یا با گزینههای موجود برابر هستند و یا از آنها بدترند.
توسعهدهندگان همین حالا باید چه کنند
- حسابرسی مسیر آپلود – کد شبکه مخزن را بررسی کنید و مطمئن شوید که هیچ اتصال خروجی به نقاط پایانی (endpoints) ناشناخته باقی نمانده است.
- بازنشانی اسرار (Rotate secrets) – هرگونه کلید SSH، توکن API یا ذخیرهساز رمز عبوری که قبل از ۱۳ ژوئیه در نزدیکی Grok Build قرار داشت را مجدداً تولید کنید.
- اجرا در محیط ایزوله – ابزار را درون یک Sandbox یا کانتینر که به فایلهای حساس یا اعتبارنامهها دسترسی ندارد، مستقر کنید.
- نظارت بر وضعیت پرچم – اگر نمونه (instance) خود را میزبانی میکنید، بررسی کنید که پرچم پنهان پس از هر بهروزرسانی، غیرفعال باقی بماند.
این اقدامات ریسک تغییرات آتی از سوی xAI را از بین نمیبرند، اما احتمال بازگشت مخفیانه منطق استخراج دادههای موجود را کاهش میدهند.
خلاصه کلام
متنباز کردن Grok Build پس از رسوایی استخراج داده، آسیبپذیری زیربنایی را از بین نمیبرد. مخزن همچنان حاوی روتین آپلود پنهان است و تنها راه محافظت، پرچمی است که شرکت آن را کنترل میکند. تا زمانی که این منطق از کد حذف نشود یا وضعیت پرچم قابل حسابرسی شود، توسعهدهندگان باید با Grok Build بهعنوان یک مؤلفه پرخطر برخورد کنند و استفاده از آن را به محیطهایی که فاقد دادههای حساس هستند، محدود نمایند.
