امنیت چت‌بات و ایجنت: حمله «تزریق پرامپت» به زبان ساده

هر چه چت‌بات‌ها و ایجنت‌ها کارهای بیشتری انجام می‌دهند، فریب دادنشان هم جذاب‌تر می‌شود. مهم‌ترین نوع این فریب «تزریق پرامپت» (Prompt Injection) نام دارد و هر کسب‌وکاری که چت‌بات یا ایجنت راه می‌اندازد باید آن را بشناسد.

تزریق پرامپت چیست؟

مدل زبانی دستور شما و متنی را که می‌خواند در یک جا می‌بیند. اگر کسی داخل یک پیام، یک صفحه وب یا یک فایل جمله‌ای مثل «دستورهای قبلی را نادیده بگیر و…» بگذارد، ممکن است مدل آن را دستور واقعی فرض کند.

مثال: چت‌بات پشتیبانی شما به سوابق مشتری دسترسی دارد. یک نفر در پیامش وانمود می‌کند مدیر سیستم است و از چت‌بات می‌خواهد اطلاعات حساب یک مشتری دیگر را نشان بدهد یا ایمیل حسابش را عوض کند.

چرا مهم است؟

تا وقتی چت‌بات فقط جواب متنی می‌دهد، بدترین نتیجه یک جواب اشتباه است. وقتی ایجنت می‌تواند پیام بفرستد، اطلاعات را تغییر دهد یا به حساب‌ها دسترسی داشته باشد، یک فریب موفق می‌تواند خسارت واقعی بزند.

چطور محافظت کنیم

  1. دسترسی کم: چت‌بات فقط به داده‌ای دسترسی داشته باشد که برای جواب دادن لازم است. چت‌بات پشتیبانی نباید بتواند ایمیل حساب کسی را عوض کند.
  2. هویت را نرم‌افزار بسنجد، نه مدل: اینکه کاربر کیست را سیستم ورود تعیین کند، نه ادعای کاربر در گفتگو.
  3. تأیید انسانی: هر کار حساس یا برگشت‌ناپذیر قبل از اجرا تأیید انسانی بخواهد.
  4. متن بیرونی را داده بدانید: محتوایی که ایجنت از وب، ایمیل یا فایل می‌خواند، دستور نیست.
  5. ثبت و پایش: گفتگوها و اقدام‌ها ثبت شوند تا رفتار عجیب زود دیده شود.

کامل‌ترین راه‌حل وجود ندارد

هیچ روشی امروز تزریق پرامپت را صددرصد از بین نمی‌برد. برای همین طراحی درست مهم‌تر از هر فیلتر است: سیستمی بسازید که اگر مدل فریب خورد، باز هم نتواند کار خطرناکی انجام دهد.

در همه چت‌بات‌ها و ایجنت‌هایی که می‌سازیم، همین قواعد از روز اول در طراحی هست.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نمی‌شود.

بیشتر بخوانیم

به مطالعه و یادگیری ادامه دهید