كشفت مجموعة من ثلاث ثغرات أمنية خطيرة في mcp-server-git، وهو خادم بروتوكول سياق نماذج Git (MCP) الرسمي الذي تحتفظ به شركة Anthropic، والتي يمكن استغلالها لقراءة أو حذف ملفات عشوائية وتنفيذ تعليمات برمجية تحت ظروف معينة. تمثل هذه الثغرات تهديدًا أمنيًا كبيرًا، خاصة مع تزايد الاعتماد على أدوات الذكاء الاصطناعي في إدارة مستودعات الأكواد.
وفقًا للباحثين، يمكن للمهاجمين استغلال هذه الثغرات عبر تقنية “تلقين الحقن” (prompt injection). هذا يعني أن أي شخص يمكنه التأثير على ما تقرأه مساعدات الذكاء الاصطناعي، مثل ملف README خبيث أو وصف مشكلة سام أو صفحة ويب مخترقة، يمكنه استخدام هذه الثغرات دون الحاجة إلى الوصول المباشر إلى نظام الضحية.
ثغرات أمنية في mcp-server-git وتأثيرها على الذكاء الاصطناعي
يُعد mcp-server-git حزمة Python وخادم MCP يوفران مجموعة من الأدوات المدمجة لقراءة مستودعات Git والبحث فيها ومعالجتها برمجيًا من خلال نماذج اللغة الكبيرة (LLMs). إن اكتشاف هذه الثغرات يسلط الضوء على المخاطر الكامنة في تكامل أدوات الذكاء الاصطناعي مع أنظمة إدارة الأكواد الحساسة.
تم إصلاح القضايا الأمنية، التي تم وصفها في إصدارات 2025.9.25 و 2025.12.18 بعد الكشف المسؤول عنها في يونيو 2025، وهي:
CVE-2025-68143
تتعلق هذه الثغرة بانتقال المسار (path traversal) وتنتج عن أداة git_init التي تقبل مسارات عشوائية لنظام الملفات أثناء إنشاء المستودع دون التحقق منها. تم إصلاحها في الإصدار 2025.9.25.
CVE-2025-68144
تعتبر هذه الثغرة حقن وسيطات (argument injection)، حيث تقوم وظائف git_diff و git_checkout بتمرير وسيطات يتحكم فيها المستخدم مباشرة إلى أوامر Git CLI دون تنقيتها. تم إصلاحها في الإصدار 2025.12.18.
CVE-2025-68145
هي ثغرة أخرى متعلقة بانتقال المسار، تنتج عن افتقاد التحقق من المسار عند استخدام العلم –repository لتقييد العمليات إلى مسار مستودع معين. تم إصلاحها في الإصدار 2025.12.18.
من شأن الاستغلال الناجح لهذه الثغرات أن يسمح للمهاجم بتحويل أي دليل على النظام إلى مستودع Git، واستبدال أي ملف بفرق فارغ، والوصول إلى أي مستودع على الخادم.
في سيناريو هجوم موثق، يمكن ربط الثغرات الثلاث مع خادم Filesystem MCP للكتابة إلى ملف “.git/config” (الموجود عادة داخل الدليل المخفي .git) وتحقيق تنفيذ تعليمات برمجية عن بعد عن طريق تشغيل استدعاء لـ git_init من خلال حقن التلقين.
يتضمن هذا السيناريو استخدام git_init لإنشاء مستودع في دليل قابل للكتابة، ثم استخدام خادم Filesystem MCP لكتابة ملف .git/config خبيث يتضمن مرشحًا نظيفًا. بعد ذلك، يتم كتابة ملف .gitattributes لتطبيق هذا المرشح على ملفات معينة، ثم كتابة نص برمجي بشفرة خبيثة، وأخيرًا كتابة ملف يشغل المرشح، واستدعاء git_add لتنفيذ التعليمات البرمجية الخبيثة.
ردًا على هذه الاكتشافات، تم إزالة أداة git_init من الحزمة، مع إضافة تحقيقات إضافية لمنع آليات انتقال المسار. يُنصح المستخدمون بحزمة Python بالتحديث إلى أحدث إصدار للحصول على أقصى درجات الحماية.
وقال شهاب تال، الرئيس التنفيذي المشارك لشركة Cyata للأمن السيبراني للذكاء الاصطناعي: “هذا هو خادم Git MCP الرسمي، الذي يتوقع المطورون نسخه. إذا انهارت الحدود الأمنية حتى في التنفيذ المرجعي، فهذه إشارة إلى أن النظام البيئي بأكمله لـ MCP يحتاج إلى تدقيق أعمق. هذه ليست حالات هامشية أو تكوينات غريبة، فهي تعمل فور إخراجها من الصندوق.”

