فرار از سندباکس Codex با دو باگ تازه
خلاصهٔ کاملتر
به گزارش BleepingComputer، اورن یومتوف از شرکت Accomplish AI دو راه فرار از سندباکس Codex پیدا کرده. Codex ایجنت برنامهنویسی OpenAI هست که هم نسخهی خط فرمان داره هم اپ دسکتاپ. سندباکس (یعنی محیط ایزولهای که کارهای مدل توش اجرا میشه) قراره نذاره کد نامطمئن به بقیهی سیستم دست بزنه. هر دو باگ ۱۲ آگوست گزارش شدن و OpenAI ظرف هشت روز درستشون کرد.
باگ جدیتر اسمش Heapjack هست. هدفش یه کامپوننت به اسم node_repl هست که Codex Desktop موقع نصب، بدون اینکه ازت بپرسه، توی فایل سراسری ~/.codex/config.toml ثبتش میکنه. چون این تنظیم مشترکه، کاربرای Codex CLI هم ناخواسته همین ابزار رو به ارث میبرن و تنظیمی هم برای خاموش کردنش وجود نداره.
node_repl یه پروسهی Node.js هست با دو context جاوااسکریپتی جدا: یکی مطمئن که کد خود OpenAI توشه، یکی نامطمئن که کد ایجنت رو اجرا میکنه. context مطمئن با یه توکن تصادفی که هر بار تازه ساخته میشه هویتش رو ثابت میکنه. مشکل اینجاست که هر دو تو یه heap حافظهی مشترک زندگی میکنن. کد نامطمئن با v8.getHeapSnapshot() از حافظه عکس میگیره، همهی رشتههای شبیه UUID رو امتحان میکنه و از روی نوع پیغام خطا میفهمه کدوم توکن درسته.
با توکن درست، کد نامطمئن درخواست خودش رو روی همون کانالی میفرسته که به یه پروسهی والد بدون سندباکس وصله، و اون پروسه هم اجراش میکنه. از این راه به هر Unix socket، مثلاً سوکت Docker، و ابزار ویرایش فایل تنظیمات سراسری هم دسترسی داره. همهی اینا تو حالت read-only، یعنی سختترین حالت سندباکس، و بدون هیچ پنجرهی تأیید اتفاق میافته. یعنی باز کردن ریپوی یه نفر دیگه و یه سؤال ساده کافیه تا نویسندهی ریپو روی سیستمت دستور اجرا کنه.
باگ دوم، Overpatch، تو Codex CLI متنباز بود. تو حالت workspace-write ایجنت فقط باید داخل پوشهی پروژه بنویسه. ولی ابزار apply_patch برای هر مسیری که تو patch اسمش اومده، به پوشهی والدش اجازهی نوشتن میداد. پس اگه یه تغییر بیخاصیت به /tmp اشاره کنه، اجازهی نوشتن روی ریشهی دیسک صادر میشه. بعد یه تغییر دیگه از طریق یه symlink یه خط به .zshrc اضافه میکنه و دفعهی بعد که ترمینال باز کنی، اون خط بیرون از سندباکس اجرا میشه.
به گفتهی محققها ریشهی هر دو باگ یکیه: سازوکار کنترل، داخل همون چیزی بود که باید کنترلش میکرد. این دسته باگ تازه نیست و ژوئیهی ۲۰۲۶ هم Pillar Security مشابهش رو تو Cursor، Codex، Gemini CLI و Antigravity نشون داده بود. Heapjack تو Codex Desktop نسخهی 26.818.21641 و Overpatch تو Codex CLI نسخهی 0.149.0 درست شدن. OpenAI هم گفته داره کنترل جاهایی که ایجنتها میتونن فایل بنویسن رو سفتتر میکنه.
نکات کلیدی:
- دو باگ ۱۲ آگوست به OpenAI گزارش شدن و ظرف ۸ روز رفع شدن.
- Heapjack تو حالت read-only و بدون پنجرهی تأیید، دستور رو بیرون از سندباکس اجرا میکرد.
- Heapjack توکن امنیتی node_repl رو از heap مشترک پروسهی Node.js پیدا میکرد.
- Overpatch از اینکه apply_patch به پوشهی والد هر مسیر اجازهی نوشتن میداد سوءاستفاده میکرد.
- Codex Desktop رو به 26.818.21641 و Codex CLI رو به 0.149.0 یا بالاتر آپدیت کن.




