اكتشف باحث أمني ثغرة خطيرة في Claude Code GitHub Action، وهي أداة تستخدم في معالجة المشكلات ومراجعة طلبات السحب (Pull Requests). هذه الثغرة، التي تم اكتشافها في مستودع Anthropic الخاص بـ Claude Code، تسمح للمهاجمين بالتحكم الكامل في المستودعات العامة المستهدفة بمجرد فتح قضية (Issue) واحدة.
تم الإبلاغ عن الثغرة الأمنية الرئيسية إلى شركة Anthropic في شهر يناير الماضي، واستجابت الشركة بسرعة وقامت بإصلاحها خلال أربعة أيام. تم تقييم المشكلات بـ 7.8 وفقًا لمعيار CVSS v4.0، كما حصل الباحث على مكافأة لاكتشاف هذه الثغرات.
ثغرة Claude Code GitHub Action تثير مخاوف أمنية
تعمل Claude Code GitHub Actions على دمج Claude في خطوط أنابيب CI/CD لتصنيف المشكلات، وتطبيق العلامات، ومراجعة طلبات السحب، وتنفيذ أوامر محددة. افتراضياً، تمنح هذه الأداة صلاحيات قراءة وكتابة واسعة النطاق على كود المستودع، والمشكلات، وطلبات السحب، والملفات الأخرى، بما في ذلك ملفات سير العمل (Workflow files).
آلية الهجوم وكيفية استغلال الثغرة
يكمن الخلل الأساسي في آلية التحقق من صلاحيات المستخدم الذي يقوم بتفعيل سير العمل. كانت الأداة تسمح بشدة بأي مستخدم ينتهي اسمه باللاحقة “[bot]”، وذلك على افتراض أن تطبيقات GitHub (GitHub Apps) تعتبر موثوقة من قبل مسؤولي النظام. ومع ذلك، يمكن لأي شخص إنشاء تطبيق GitHub وتثبيته على مستودع خاص به، واستخدام الرمز المميز (token) الخاص به لفتح مشكلة أو طلب سحب على أي مستودع عام.
بمجرد اختراق هذا التحقق، يمكن للمهاجم استخدام “حقن الأوامر غير المباشر” (indirect prompt injection). هذه التقنية تتضمن زرع تعليمات خبيثة ضمن المحتوى الذي يقرأه الذكاء الاصطناعي، مما يدفعه لتنفيذ هذه الأوامر بدلًا من مهمته الأساسية. أظهر الباحث كيفية خداع Claude ليقوم بتنفيذ أوامر خطيرة، مثل الوصول إلى ملف `/proc/self/environ` الذي يحتوي على متغيرات البيئة، بما في ذلك المعلومات السرية.
الوصول إلى بيانات الاعتماد المخزنة
تكمن القيمة الحقيقية لهذه المتغيرات في بيانات اعتماد GitHub Actions، والتي تستخدم للحصول على رمز OIDC. هذا الرمز يثبت هوية سير العمل الذي يعمل في المستودع المحدد. تقوم Claude Code باستبدال هذا الرمز المميز برمز من الواجهة الخلفية لـ Anthropic، مما يمنح المهاجم صلاحيات كتابة على كود المستودع، والمشكلات، وسير العمل.
مسارات هجوم إضافية ومخاطر مضاعفة
بالإضافة إلى ذلك، تم رصد مسار هجوم آخر يتجاوز الحاجة إلى استخدام “bot” بالكامل. يكمن ذلك في سير عمل تصنيف المشكلات الذي يأتي افتراضياً مع الأداة، والذي يسمح للمستخدمين غير المصرح لهم بتشغيله. الأسوأ من ذلك، أن Claude كانت تنشر ملخصات المهام في لوحة ملخص سير العمل، والتي يمكن أن تؤدي إلى تسريب بيانات حساسة.
توصيات للوقاية وتحديثات أمنية
أهم توصية هي التحديث إلى الإصدار claude-code-action v1.0.94 أو أحدث. يجب على المستخدمين أيضًا مراجعة سير العمل الذي يسمح للمستخدمين غير المصرح لهم بتشغيل Claude. في حال كان سير العمل يعتمد على مدخلات غير موثوقة، ينصح بعدم تزويده بأي معلومات سرية تتجاوز مفتاح Anthropic API و GITHUB_TOKEN، مع إزالة الأدوات والصلاحيات التي يمكن استخدامها لاستخراج البيانات.
تاريخ الثغرات المشابهة والتأثير المحتمل
ليست هذه هي المرة الأولى التي يتم فيها اكتشاف ثغرات في أدوات الذكاء الاصطناعي المخصصة للمطورين. في فبراير الماضي، أدى استغلال ثغرة في سير عمل آخر مشابه إلى سرقة رمز npm publish المميز، مما سمح بنشر نسخة غير مصرح بها من مكتبة cl Cline. وعلى الرغم من أن الإصدار الضار لم يكن يحتوي على برمجيات خبيثة، إلا أن نفس السلسلة يمكن أن تؤدي بسهولة إلى توزيع برمجيات ضارة.
يشير الباحث إلى أنه اكتشف حوالي 50 طريقة مختلفة لتجاوز نظام صلاحيات Claude Code، مما يسلط الضوء على التحدي المستمر المتمثل في معالجة ثغرات حقن الأوامر في وكلاء البرمجة باستخدام الذكاء الاصطناعي. لا يزال حل مشكلة حقن الأوامر تحدياً قائماً، خاصة مع الأدوات والأذونات القوية المتاحة لوكلاء الذكاء الاصطناعي.

