شرکت AWS ابزار Strands Box را معرفی کرد؛ یک سندباکس (Sandbox) متنباز برای عاملهای هوش مصنوعی (AI Agents) که جداسازی در سطح سیستمعامل را با مجموعهای از قوانین کنترلی ترکیب میکند تا هر اقدام عامل هوش مصنوعی پیش از اجرا، بر اساس تاریخچه فعالیتهای قبلی آن ارزیابی شود. این ابزار در حال حاضر در مرحله پیشنمایش توسعهدهندگان (Developer Preview) قرار دارد و بر روی سیستمهای مک با تراشههای Apple Silicon اجرا میشود، در حالی که پشتیبانی از لینوکس در برنامههای آتی قرار دارد.
مقابله با ریسکهای اجرای کنترلنشده (YOLO Mode)
در محیطهای توسعه، دستیارهای کدنویسی معمولاً به دسترسیهایی نظیر خواندن فایلها، اجرای دستورات Shell، اجرای کدهای نوشته شده و فراخوانی APIها نیاز دارند. بسیاری از این عاملها در وضعیتی که AWS آن را YOLO mode مینامد فعالیت میکنند؛ به این معنا که هر اقدام آنها بدون بازبینی انسانی تایید میشود. این وضعیت میتواند منجر به خروج عامل از دایرکتوری کاری، اجرای دستورات تخریبی یا دسترسی غیرمجاز به اعتبارنامههای (Credentials) حساس شود.
اگرچه کانتینرها (Containers) و MicroVMها میتوانند دسترسیهای کلی یک عامل را محدود کنند، اما پس از ورود ابزار به این محیطهای ایزوله، این لایهها کنترلی بر نحوه استفاده عامل از آن ابزار ندارند.
معماری و مکانیزمهای کنترلی Strands Box
ابزار Strands Box عامل هوش مصنوعی را در یک سندباکس با پشتیبانی هسته (Kernel-enforced) قرار میدهد که در سیستمعامل macOS از Seatbelt استفاده میکند. در این معماری، تمامی دستورات Shell، کدهای پایتون، فراخوانیهای ابزاری و ترافیک شبکه از چهار نقطه بازرسی (Checkpoint) عبور میکنند:
- مفسر Shell
- مفسر Python
- کارگزار (Broker) برای سرورهای MCP
- درگاه (Gateway) ترافیک شبکه
این طراحی تضمین میکند که لایه سیاستگذاری (Policy Layer) تنها راه خروج از سندباکس باشد.
مدیریت سیاستها با Dogwood
هر یک از نقاط بازرسی مذکور، برای تایید عملیات به Dogwood Local Engine استعلام میگیرند. Dogwood یک زبان سیاستگذاری است که AWS آن را به صورت متنباز منتشر کرده است. در این سیستم، هر عملیاتی به صورت پیشفرض رد (Deny) میشود، مگر اینکه قانونی برای اجازه آن تعریف شده باشد. از آنجایی که هر چهار نقطه بازرسی در یک تاریخچه رویداد مشترک ثبت میکنند، میتوان قوانینی تعریف کرد که اقدامات در ابزارهای مختلف را به هم مرتبط کند. برای مثال، میتوان قانونی نوشت که اگر عامل هوش مصنوعی فایلی را از دایرکتوری دادههای مشتریان خواند (چه از طریق Shell و چه پایتون)، تمامی درخواستهای HTTP خروجی بلاک شوند.
مدیریت امن اعتبارنامهها و Secrets
درگاه شبکه در Strands Box وظیفه مدیریت Secrets را بر عهده دارد. برای کلیدهای API پیکربندی شده، عامل هوش مصنوعی تنها یک توکن جایگزین (Placeholder) را در اختیار دارد و درگاه شبکه هنگام خروج درخواست، مقدار واقعی را جایگزین میکند. برای فراخوانیهای AWS نیز، درگاه مستقیماً درخواستها را امضا میکند. بنابراین، اگر یک عامل سعی کند متغیرهای محیطی (Environment Variables) خود را استخراج کند، تنها توکنهای جایگزین را مشاهده خواهد کرد.
چالشها و ملاحظات امنیتی
با وجود مزایای ذکر شده، استفاده از این ابزار با چالشهایی همراه است. طبق گفتههای تیم توسعه، Strands Box به دلیل استفاده از مفسرها وگرهای پروتکل، حجم بیشتری از کد را به عنوان Trusted Computing Base (TCB) معرفی میکند. برای کاهش ریسک باگها و جلوگیری از دور زدن سیاستها، این ابزار با زبان Rust توسعه یافته و تحت تستهای شدید Fuzzing و اعتبارسنجی قرار گرفته است.