تزریق پرامپت مخفی تو خروجی ابزارهای AI
خلاصهٔ کاملتر
OWASP تو راهنمای جلوگیری از تزریق پرامپت، خروجی ابزارها (Tool Output) رو کنار صفحات وب و ایمیل، یکی از کانالهای نامعتبر میدونه. دلیلش اینه که هر فیلدی که متن آزاد قبول کنه -مثل بدنه تیکت، توضیح PR، یا یادداشت CRM- ممکنه یه آدم بیرون از سازمان توش نوشته باشه، حتی اگه خود ابزار (Jira، گیتهاب، Salesforce) کاملاً معتبر و داخلی باشه. یعنی اعتماد به «سیستم» بهجای اعتماد به «فیلد»، دقیقاً همونجاییه که مشکل شروع میشه.
به گفته نویسنده، ابزارهای امنیتی فعلی -مثل فیلتر ورودی، فیلتر خروجی و فیلتر عمل که تو راهنمای OWASP اومده- هر کدوم فقط یه لحظه از چرخه کار ایجنت رو میبینن. فیلتر ورودی نتیجه ابزار رو قبل از رسیدن به مدل چک میکنه، فیلتر عمل هم فراخوانی بعدی رو جدا از نتیجه بررسی میکنه. مشکل اینجاست که خود حمله، رابطه بین این دو لحظهست، نه هیچکدوم بهتنهایی؛ برای همین هیچ فیلتری کل ماجرا رو نمیبینه.
طبق مقاله، نشونه یه حمله موفق، یه فراخوانی ابزاره که تو تاریخچه اون ایجنت خاص سابقه نداره: مثلاً ایجنتی که ماهها فقط به یه جدول خاص کوئری میزده، یهو میره سراغ جدول مشتریها، یا ایمیلی که همیشه داخلی بوده، یهو به یه آدرس بیرونی میره. همه این فراخوانیها از نظر مجوز و ساختار کاملاً درست و مجازن، فقط یه چیز فرق داره: این ایجنت قبلاً هیچوقت این کار رو نکرده.
نویسنده پیشنهاد میده بهجای تکیه صرف به فیلترها (که به گفتهش زیر حملههای تطبیقی از کار میافتن)، برای هر ایجنت یه پروفایل رفتاری از روی اجرای واقعیش -مثل ابزارهایی که صدا میزنه، آرگومانهاش، و فعالیت شبکه و فایل زیرش- ساخته بشه. وقتی یه فراخوانی بیسابقه بلافاصله بعد از یه نتیجه ابزار میاد، این دوتا با هم بهعنوان یه رخداد واحد علامتگذاری میشن تا تیم امنیتی هر دو نیمه ماجرا رو با هم ببینه.
نکات کلیدی:
- OWASP خروجی ابزارهایی مثل Jira، گیتهاب و Salesforce رو همرده صفحات وب و ایمیل، محتوای نامعتبر میدونه
- فیلترهای ورودی، خروجی و عمل هر کدوم فقط یه لحظه از حمله رو میبینن، نه رابطه بین نتیجه و فراخوانی بعدی رو
- نشونه حمله موفق: فراخوانیای که تو تاریخچه اون ایجنت خاص هیچ سابقهای نداره
- ایجنتهای کدنویسی که هم به مخزن کد دسترسی دارن و هم میتونن دستور شل اجرا کنن، پرریسکترین موردن
- راهحل پیشنهادی: ساخت پروفایل رفتاری از اجرای واقعی هر ایجنت برای تشخیص فراخوانیهای بیسابقه




