تصور کنید تنها یک دستور ساده در داکر بتواند جلوی سرقت تمام کلیدهای امنیتی شما توسط یک ابزار هوش مصنوعی مخرب را بگیرد. طبق راهنمای فنی منتشر شده در ۲ ژوئیه ۲۰۲۶ در وبسایت dev.to، استفاده از پرچم --network none تضمین میکند که یک سرور پروتکل زمینه مدل (MCP) — شبیه به یک مترجم که دادههای محلی شما را برای مدل قابلفهم میکند — حتی در صورت نفوذ، نتواند اطلاعات را به سرور مهاجم ارسال کند.
با گسترش استفاده از عاملها (Agents) برای تعامل با دادههای محلی و APIها، ریسک تزریق پرامپت (Prompt Injection) و خروج غیرمجاز دادهها افزایش یافته است. بسیاری از کاربران بدون آنکه بدانند یک خط کد مخرب میتواند کلیدهای SSH یا اعتبارنامههای AWS را لو دهد، به سرورهای شخص ثالث اعتماد میکنند. همانطور که در تحلیلهای پیشین ما درباره امنیت مدلهای بازمتن اشاره کردیم، اعتماد کورکورانه به ابزارهای واسط میتواند کل زیرساخت یک سازمان را به خطر اندازد.
برای مقابله با این تهدید، فلورز یک محیط ایزوله (Sandbox) با امنیت بالا پیشنهاد میدهد که بر محورهای زیر استوار است:
- شبکه: استفاده از
--network noneبرای مسدود کردن کامل ترافیک ورودی و خروجی اینترنت. - سیستم فایل: بهکارگیری
--read-onlyبرای جلوگیری از تغییر در کانتینر و اختصاص یک پوشه/tmpمحدود ۶۴ مگابایتی از طریق--tmpfs. - منابع: محدود کردن حافظه به ۲۵۶ مگابایت و پردازنده به ۰.۵ CPU برای جلوگیری از استخراج رمزارها و حملات DoS.
- امتیازات: حذف تمام دسترسیهای ریشه با
--cap-drop ALLو مسدود کردن ارتقای سطح دسترسی با--security-opt no-new-privileges.
بر اساس مستندات این پژوهش، تست این سرورها نیازمند یک پروتکل خصمانه است. ابتدا باید سرور را فعال کرده و ابزارهای آن را برای یافتن نقاط ضعف تزریق پرامپت بررسی کنید. سپس، ارسال دادههای آزمایشی برای تحریک خطاهای پیمایش مسیر (Path Traversal) یا تزریق SQL، واکنش سرور را تحت فشار مشخص میکند.
مانیتورینگ این محیط، نیت واقعی سرور را فاش میکند. امتیاز «پاک» زمانی به دست میآید که هیچ تلاشی برای دسترسی به شبکه یا اشاره به اعتبارنامهها در خروجی نباشد. در مقابل، اگر سرور سعی کند دستوراتی مثل curl یا wget را اجرا کند یا فایلهای حساسی مانند .env را بخواند، وضعیت «بحرانی» اعلام میشود.
این رویکرد، امنیت MCP را از حالت «اعتمادمحور» به «راستیآزماییمحور» تغییر میدهد. با اجبار سرور به دریافت خطای ECONNREFUSED در لاگها، حملات شکستخورده به دادههای ارزشمندی تبدیل میشوند که دقیقاً نشان میدهند سرور قصد تماس با کدام نقاط انتهایی را داشته است.
برای توسعهدهندگان، این یعنی بار اعتماد از نویسنده سرور به زیرساخت محلی منتقل میشود. اگرچه این روش باعث افزایش پیچیدگی تنظیمات میشود، اما تنها راه اجرای ابزارهای تستنشده بدون به خطر انداختن کل ماشین میزبان است.
گام بعدی شما
- اسکریپتهای متنباز محیط ایزوله فلورز را برای تست ابزارهای MCP خود به کار بگیرید.
- ۱۸ قانون Semgrep منتشر شده تحت لایسنس MIT را برای شناسایی خودکار الگوهای خطرناک در کدها فعال کنید.
- تمام سرورهای MCP شخص ثالث را پیش از اجرا در محیط
--network noneارزیابی کنید.
اما تأمین سختافزاری برای اجرای تعداد زیاد این کانتینرهای ایزوله چالش جدیدی است — به تحلیل ما درباره بهینهسازی GPU در محیطهای ابری مراجعه کنید.




گفتگو