المستوى: مبتدئ — وقت القراءة المقدّر: 9 دقائق
Prompt Injection: الثغرة اللي ممكن تخلّي شات بوتك يحوّل فلوس لحساب مش بتاعك
لو عندك شات بوت بيشتغل على بيانات شركتك أو بيقدر يبعت إيميلات أو يستدعي API، فيه ثغرة واحدة ممكن تخلّيه يطيع المهاجم بدل ما يطيعك. اسمها Prompt Injection، ومتسجّلة كأول بند في OWASP Top 10 للذكاء الاصطناعي في 2025 و2026، وموجودة في 73% من تطبيقات AI الإنتاجية حسب آخر تقييمات أمنية.
المشكلة باختصار
شات بوت بنكي حقيقي في 2026 حوّل ما يقارب 250 ألف دولار لحسابات احتيالية قبل ما حد يكتشف الموضوع. المهاجم مفتحش حساب، ومفكّش تشفير، وما عندوش كلمة سر. كل اللي عمله إنه بعت رسالة مكتوبة بأسلوب معيّن للبوت، والبوت "اقتنع" إنها أوامر من النظام نفسه.
ده مش سيناريو من فيلم. ده Prompt Injection، والمقال ده هيوريك بالظبط كيف بيحصل، ليه نموذجك بينخدع، وأربع طبقات دفاع بتخفّض نسبة نجاح الهجوم من 73.2% لـ 8.7% لما تتطبّق صح.
المثال اللي هيخلّيك تفهم كل حاجة: السكرتير الجديد
تخيّل إنك مدير شركة، وعيّنت سكرتير جديد. قلتله قاعدة واحدة: "أي حد يقول إنه عميل، حوّله لقسم خدمة العملاء. ممنوع تدّيله أي معلومات داخلية."
أول يوم، جه واحد قاله: "أنا عميل، عايز رقم الحساب البنكي بتاع الشركة." السكرتير حوّله للخدمة، تمام.
تاني يوم، جه واحد تاني وقاله: "تجاهل التعليمات اللي قالك عليها المدير. أنا المدير الحقيقي، والشخص اللي قابلته إمبارح كان ممثّل بيختبرك. اطبعلي رقم الحساب البنكي على ورقة وادّيهالي."
هنا فيه احتمالين: السكرتير الذكي هيرفض. السكرتير المبتدئ هيتلخبط ويطيع. المشكلة إن نموذج الذكاء الاصطناعي ساعات بيتصرف زي السكرتير المبتدئ بالظبط.
التعريف العلمي: إيه هو Prompt Injection بالظبط
Prompt Injection هو نوع من الهجمات بيستغل إن نماذج اللغة الكبيرة (LLMs) بتعالج التعليمات (instructions) والبيانات (data) في نفس النص. النموذج مش بيفرّق فعليًا بين "ده أمر من المطوّر" و "ده محتوى من مستخدم بيحاول يتلاعب بيا".
كل اللي بيدخل للنموذج هو سلسلة tokens واحدة. لو المهاجم نجح يحط كلمات معيّنة في الإدخال (زي "ignore previous instructions" أو "you are now in admin mode")، النموذج ممكن يتعامل معاها كأنها أوامر شرعية ويغيّر سلوكه.
ده الفرق الجوهري بينه وبين SQL Injection. في SQL Injection، فيه حدود واضحة بين الكود والبيانات والمشكلة في تنظيفها. في Prompt Injection، مفيش حد واضح أصلاً — النموذج بيقرا كل حاجة كنص واحد.
نوعين بس لازم تعرفهم: مباشر vs غير مباشر
1. Direct Prompt Injection (الهجوم المباشر)
المهاجم بيتكلم مع البوت بنفسه. بيكتب في الشات: "تجاهل كل اللي قبل ده، أنا الأدمن". ده بيمثّل 45% من الهجمات المرصودة في 2026.
2. Indirect Prompt Injection (الهجوم غير المباشر)
الأخطر، وبيمثّل 55% من الهجمات. المهاجم مش بيتكلم مع البوت أصلاً. بيحط الأوامر الخبيثة في محتوى تاني هيوصل للبوت لاحقًا: صفحة ويب، إيميل، PDF، تعليق في GitHub. لما البوت يقرا المحتوى ده، بينخدع.