وصف باحثون في AIR ثغرة Plugin4Shell، وهي خلل في طريقة تحقق أربعة وكلاء برمجة بالذكاء الاصطناعي من أن الإضافة هي الإصدار نفسه الذي اعتمده السوق، بحسب ما نقله Help Net Security في 18 سبتمبر. والأدوات المتأثرة هي Claude Code وCodex وGitHub Copilot وGemini CLI. ولأن اثنتين منها تحدّثان الإضافات في الخلفية افتراضيًا، يذكر التقرير أن إضافة اجتازت المراجعة يمكن استبدال شيفرة عدائية بها دون أن يفعل المطوّر شيئًا.
الخلفية
تعمل وكلاء البرمجة بالذكاء الاصطناعي على حاسوب المطوّر نفسه، مع وصول إلى الصدفة ونظام الملفات وبيانات الاعتماد المخزَّنة. وتوسّعها الإضافات، وتثبّت الأسواق كل إضافة على إيداع (commit) محدد حتى تكون الشيفرة التي اعتمدها المراجع هي التي تعمل. وتتعلق الثغرة بهذا التثبيت [1].
ما يصفه التقرير
بحسب التقرير، لا يتأكد الوكلاء من أن الشيفرة التي يسحبونها تنتهي عند الإيداع المثبّت. فيستطيع المهاجم إنشاء فرع يطابق اسمه تجزئة إيداع، فيُحلّ السحب إلى شيفرة المهاجم بينما يبدو التثبيت سليمًا. ويلاحظ التقرير أن GitHub يحجب أسماء الفروع هذه، بينما تسمح بها Bitbucket والخوادم المستضافة ذاتيًا [1].
ويسمّي التقرير الثغرة بلا نقرات (zero-click) لأن عملية السحب نفسها تتكرر أثناء التحديثات التلقائية في الخلفية، وهي الإعداد الافتراضي في Claude Code وCodex. ويستطيع المهاجم إما نشر إضافة تتحول لاحقًا إلى عدائية وإما الاستيلاء على مستودع إضافة قائمة. وأفادت AIR بأنها وجدت 925 مهارة مخترقة وصلت إلى 134000 وكيل عبر عمليات استيلاء كهذه [1].
وتختلف حالة الترقيع بحسب المزوّد. فقد أصلحت Anthropic ثغرة Claude Code في الإصدار 2.1.179، وأصلحت OpenAI ثغرة Codex في الإصدار 0.146.0. ولم تصدر Microsoft إصلاحًا لـ GitHub Copilot، وأوقفت Google تطوير Gemini CLI وأحالت المستخدمين إلى منتج آخر هو Antigravity. وتقول AIR إنها وجدت الثغرة في مايو وأفصحت عنها للمزوّدين في يونيو [1].
دلالات ذلك على مستخدمي Mac
يتناول التقرير أدوات المطورين على أي نظام تشغيل مكتبي ولا يخص macOS بالذكر. والفئة المعرّضة هي المطورون الذين يستخدمون أحد الوكلاء الأربعة مع إضافات من أسواق تابعة لأطراف ثالثة. أما مستخدمو Mac الذين لا يستخدمون وكلاء برمجة فلا تؤثر فيهم هذه الثغرة كما وُصفت [1].
التوصيات
- حدّثوا Claude Code إلى الإصدار 2.1.179 أو أحدث وCodex إلى الإصدار 0.146.0 أو أحدث.
- عطّلوا التحديث التلقائي للإضافات في الخلفية حيثما تسمح الأداة، وحدّثوا الإضافات عن قصد.
- أزيلوا الإضافات غير المستخدمة فعليًا، وفضّلوا الإضافات المستضافة على GitHub، حيث يقول التقرير إن حيلة اسم الفرع محجوبة.
- حيثما يُستخدم GitHub Copilot أو Gemini CLI، عاملوا الإضافات التابعة لأطراف ثالثة بوصفها انكشافًا غير مرقَّع إلى أن يصرّح المزوّد بخلاف ذلك.
صلة ذلك بـ FireAI
FireAI جدار حماية للشبكة على macOS. لا يفحص الإضافات ولا عمليات سحب git ولا يمنع وكيل برمجة من تشغيل أمر. ما يستطيعه هو عرض الاتصالات التي تتلو ذلك والتحكم فيها: فعملية جديدة لا توجد لها قاعدة بعد تثير طلب إذن في وضع «تنبيه»، مسماة مع وجهتها، ويمكن لـالقواعد لكل تطبيق أن تقيّد الوجهات التي يُسمح لأداة بعينها بالاتصال بها.
القيود
يعتمد العرض على تقرير ثانوي واحد. فهو لا يذكر ما إذا استُغلت الثغرة خارج نطاق البحث، ولا يصف كيف توصلت AIR إلى رقم 925 مهارة مخترقة. ولا يبيّن التقرير أنظمة التشغيل التي اختُبرت.
جرّب FireAI من HisnLabs مجانًا لمدة 17 يومًا.