
كود النماذج اللغوية كأرتيفاكت بناء غير موثوق
منشور على dev.to يرى أن مخرجات النموذج لا يجوز أن ترث وصولاً غير مقيّد إلى محطة العمل: احفظ المصدر، صنّف القدرات، واعزل قبل أي تنفيذ. ويستشهد بتقارير عن حذف نحو 800 غيغابايت.
إزالة الكود المخفي من ردّ نموذج ذكاء اصطناعي تبدو مهمة تنظيف نصية. لكن منشوراً على dev.to، مُعدّاً عن مقال أطول على cometapi.com، يراها مسألة أمن تنفيذ: أولاً تحديد ما يستطيع الأرتيفاكت فعله، ثم تتبّع مصدر تعليماته، وعندها فقط تقييد قدراته.
الحادثة التي تقف خلف القاعدة
يستشهد المنشور بتقارير مجتمعية عن حذف نحو 800 غيغابايت من الملفات، من بينها تطبيق Cursor AI بالكامل، بعد أن نفّذ مطوّر كوداً مولَّداً بمساعدة Gemini 3 داخل بيئة Cursor IDE. ويشدّد الكاتب على أن هذه حادثة منقولة لا تقرير جنائي موثّق، وكود التنظيف المولَّد لا ينبغي أن يرث وصولاً غير مقيّد إلى محطة عمل.
بوابة بين التوليد والتنفيذ
يغطي "الكود المخفي" مشكلات عدة: حقن التعليمات غير المباشر من صفحات الويب أو ملفات PDF أو ردود الإضافات؛ وجافاسكربت الخبيث في المتصفح؛ ومحتوى مخفي مثل محارف بعرض صفر أو حمولات base64. وقد يكون السلوك الخطير عرضياً: طلب "تنظيف" مجلد قد ينتج rm -rf أو shutil.rmtree دون أي مهاجم.
الأولوية للمصدر: احفظ الرد الأصلي والمحادثة وتعليمة النظام والمستندات المسترجَعة ونتائج الإضافات، وسجّل الكود المستخرَج على حدة مع كل تحويل وقرار موافقة. التنسيق عبر Black أو Prettier ترتيب شكلي لا فحص أمني؛ وتستحق U+200B وU+200C وU+200D وU+FEFF الانتباه، لكن الإزالة قد تغيّر السلاسل.
تُصنَّف القدرات قبل الموافقة: تحليل المصدر وتشغيل المدقّقات وقواعد الأمان. ومن مؤشرات المراجعة sudo وrm -rf وshutil.rmtree وsubprocess.Popen وos.system وeval وexec والمسارات المطلقة غير المتوقعة. وبدل تخمين السطور التي تُحذف، يحجب الكاتب القدرات: إعادة كتابة مدعومة بشجرة AST، ومهلات زمنية، ومحولات وهمية، وحجب تثبيت pip وnpm، وعدم وجود مفاتيح API حقيقية أثناء التقييم.
بيئة معزولة وأدوات وسجل تدقيق
وبيئة الاختبار حاوية مؤقتة أو microVM بلا شبكة ولا بيانات اعتماد للمضيف ولا أقراص متصلة — ذُكر gVisor وFirecracker كخيارين — مع قيود seccomp وحدود للموارد. وتضيف مجموعة الأدوات إلى وحدة ast في بايثون Bandit وSemgrep وإضافات الأمان في ESLint.
يوضّح فحصان صغيران الحدود. فتعبير نمطي يستهدف U+200B وU+200C وU+200D وU+FEFF يسجّلها لسجل التدقيق؛ أما النمط الشائع re.compile(r'') فيطابق السلسلة الفارغة ولا يزيل شيئاً. ومسح AST يرصد استدعاءات eval وexec المباشرة والسمات المسماة popen أو system، لكن الأسماء المستعارة والأسماء المبنية من سلاسل تتجاوزه. والحدّ واضح: مخرجات النموذج لا تأذن بتنفيذ نفسها.
SiTech — تطوير ويب مدعوم بالذكاء الاصطناعي
نبني مواقع سريعة وعصرية وندمج الذكاء الاصطناعي في سير عمل الشركات. لديك مشروع أو سؤال؟ يسعدنا مساعدتك.