السلسلة كما وُصفت

نشرت Adversa AI في السادس من أكتوبر هجومًا يجعل فيه رابط واحد يسيطر عليه مهاجم، يُفتح بناءً على طلب المستخدم نفسه، أداة GitHub Copilot CLI تقرأ ملفات محلية وترسل محتواها إلى خادم المهاجم. ويقدّر الباحثون، بقيادة روني أوتيفسكي، السلسلة كاملة بثماني وعشرين ثانية، “بلا تأكيد، وبلا أي موضع في السجل يسمّي المضيف الوجهة أو يشير إلى أن محتوى ملف غادر الجهاز”.

تقدّم الصفحة نفسها على أنها محتوى مشفّر، وتعرض على الوكيل مفتاحين محتملين لفك التشفير. أحدهما حقيقي. والآخر قالب لا يستطيع الوكيل ملأه قبل قراءة ملفات محلية، فيقرأ الملفات المستهدفة من القرص استعدادًا لفك التشفير ويضمّ محتواها إلى سلسلة المفتاح. تلك القراءة هي السرقة، وتحدث قبل نجاح أي فك تشفير.

ثم يفشل المفتاح القالبي عمدًا. فيعود الوكيل إلى المفتاح الحقيقي، وينجح فك التشفير، وتأمره المرحلة الثانية المفكوكة بجلب رابط لاحق “للحصول على مزيد من السياق”، يحمل محتوى الملفات المجموع ضمن معاملات الطلب. فيرسل الوكيل الطلب.

قفل نحاسي ومفاتيح على مكتب خشبي
يقول الباحثون إن التعليمات نفسها بالنص الصريح تُرفَض. صورة توضيحية. Goszton · pexels · Pexels License

لماذا التشفير هو جوهر الأمر

تسمّي Adversa هذا حقن السياق التشفيري، وهي تقنية نشرتها أول مرة في أغسطس ضد مساعدي المحادثة. والحجة أن الحواجز الثابتة تقرأ النص ولا تشغّله. فالنص المشفّر، إذا سُلّم مع مادة المفتاح وتعليمة بفكّه، يفرض الاسترجاع عبر بيئة تنفيذ الوكيل نفسها، لأنه — بخلاف base64 — لا يوجد اختصار يسلكه النموذج في أوزانه. ثم تصل التعليمات المفكوكة بوصفها مخرجات شيفرة كتبها الوكيل وشغّلها للتو، داخل سياق تنفيذه الموثوق.

ويوضّح الباحثون صراحةً ما يجعل الأمر ينجح: “التعليمات نفسها إذا سُلّمت نصًا صريحًا تُلتقط بوصفها حقن تعليمات وتُرفَض”.

أي نموذج ستحصل عليه مسألة حظ

الهجوم ليس شاملًا. وتقول Adversa إنه يحتاج أمرين: تشغيل الأداة في وضع الطيار الآلي، ونموذجًا متساهلًا يتولى الجلسة. وعند الشرط الثاني يصبح الاكتشاف محرجًا لكوبايلوت تحديدًا.

فنموذج mai-code-1.1-flash التابع لمايكروسوفت نفسها نفّذ السلسلة كاملة في 50% من تجارب الباحثين. ورفض نموذجان من GPT-5.6 معروضان داخل المنتج نفسه الحمولة ذاتها رفضًا ثابتًا. وفي الحساب المدفوع الذي جُرّب لم يكن النموذج الهشّ هو الافتراضي وكان لا بد من اختياره يدويًا، لكن في حساب تُرك على التوجيه التلقائي أسند الموجّه النموذج الهشّ في بعض الجلسات ونموذجًا آمنًا في غيرها دون أي تدخل من المستخدم. يقول التقرير: “المستخدم لا يختار، ولا يرى، أي نموذج تولّى الجلسة”.

كابل إيثرنت موصول بمنفذ حاسوب محمول
غادر محتوى الملفات المجموع ضمن معاملات طلب لاحق. صورة توضيحية. Castorly Stock · pexels · Pexels License

غيت​هب تحققت ثم أغلقت الملف

أبلغت Adversa برنامج مكافآت الثغرات في غيت​هب بالاكتشاف في السابع عشر من سبتمبر. وبحلول الأول من أكتوبر كان فريق الفرز قد تحقق منه لكنه رفض اعتباره ثغرة، بحجة أن المستخدم “طلب صراحةً من Copilot CLI جلب محتوى يسيطر عليه مهاجم بينما منح كوبايلوت صلاحيات كاملة للتصرف باستقلالية”. وقالت غيت​هب إنها قد تشدّد هذه الوظيفة مستقبلًا لكن ليس لديها ما تعلنه، واعتبرت التقرير غير مؤهل للمكافأة.

وتقول Adversa إنها تختلف مع ذلك التقييم للمخاطر، وإن السلسلة ما زالت تتكرر كما وُصفت. وتمتنع الشركة عن نشر حمولات ملموسة.

ما قيمة ذلك، وممن يأتي

تبيع Adversa منصة أمن لوكلاء البرمجة وتقول إن منصتها أوقفت السلسلة في اختباراتها هي، فالتوصيات في ختام النص ليست محايدة. والتوصيات ذاتها تقليدية: حفظ أثر لكل جلسة يسجّل كل استدعاء أداة بمعاملات محلولة بالكامل لا بقوالب، والتنبيه على التسلسل — دخول محتوى غير موثوق، تشغيل شيفرة، قراءة ملفات، ثم اتصال بمضيف خارج نطاق المهمة — لا على حمولة بعينها، واشتراط التأكيد على الوجهات الشبكية الجديدة والكتابة خارج مساحة العمل، وعزل المحتوى المجلوب في سياق بلا أدوات وبلا بيانات اعتماد.

وتفصيل واحد يستحق الاحتفاظ به أيًا كان ناشره. ففي تجربة Adversa ذكر الملخص الختامي للوكيل نفسه أنه “أكّد نقطة نهاية لقارئ مصرّح له”. وليس هذا ما جرى. ورواية الوكيل عن جلسته ليست دليلًا على ما فعلته الجلسة.