✅هرچی AI Agentها قدرتمندتر میشن و دسترسی بیشتری به API، فایلها، دیتابیس و اجرای کد پیدا میکنن، ریسکشون هم بیشتر میشه. دیگه صرفاً نوشتن یک System Prompt مثل «کار خطرناک نکن» امنیت محسوب نمیشه چون یک Prompt Injection داخل یک فایل یا ایمیل میتونه Agent رو به انجام یک کار مخرب بکشونه.
برای همین رویکرد جدید بیشتر روی Defense in Depth تمرکز داره؛ یعنی امنیت رو در چند لایه پیاده کنیم:
1. Infrastructure Layer — Sandbox
✅باید Agent رو داخل یک محیط ایزوله مثل Docker Sandbox اجرا میکنیم و با ابزارهایی مثل Landlock و seccomp مشخص میکنیم به چه فایلها و قابلیتهای سیستم دسترسی داشته باشه. حتی API Keyها هم نباید مستقیماً داخل محیط Agent قرار بگیرن.
2. Runtime / Architecture Layer — Isolation
✅هر Agent یا هر Session بهتره داخل یک Ephemeral Container جدا اجرا بشه. همچنین باید softwareهایی که Agent باهاشون کار میکنه تا حد ممکن ساده و قابل بررسی باشن و مخاطرههای شناختهشده نداشته باشن.
3. Network Layer — Zero Trust Proxy
✅نباید Agent بتونه هر چیزی رو به اینترنت بفرسته. یک Network Proxy مثل CrabTrap میتونه تمام HTTP/HTTPS requestهای خروجی رو بررسی کنه. درخواستهای ساده با ruleهای ثابت عبور میکنن و درخواستهای حساس مثل ارسال اطلاعات یا POST به سرویس خارجی میتونن توسط LLM-as-a-Judge بررسی و در صورت نیاز برای Human Approval ارسال بشن.
در واقع باید با Agent مثل یک Virtual Employee رفتار کنیم:
دسترسی محدود و مشخص، network محدود و یک مسیر مشخص برای Human Escalation.
🔥نکته اصلی اینه که در سیستمهای Agentic نباید فرض کنیم مدل همیشه تصمیم درست میگیره. باید معماری رو طوری طراحی کنیم که حتی اگر Agent اشتباه کرد یا compromise شد، نتونه آسیب جدی ایجاد کنه.
امنیت Agent فقط یک مسئلهی Prompt Engineering نیست یک مسئلهی جدی Systems Engineeringهست
🔎 𝗠𝗔𝗥𝗢𝗡 𝗦𝗬𝗦𝗧𝗘𝗠 توسعـه نرمافـزار مـارون