ثغرة خطيرة في Figma MCP تتيح للمخترقين تنفيذ أوامر عن بُعد — عالجها الآن

أفاد باحثو الأمن السيبراني عن ثغرة خطيرة الآن مُعالَجة في خادم Model Context Protocol (MCP) الخاص بمطوّري Figma (حزمة figma-developer-mcp) قد تسمح للمهاجمين بتحقيق تنفيذ أوامر عن بُعد على النظام المصاب.

ما خطأ الثغرة (CVE-2025-53967) وكيف تعمل؟

تم تتبع الثغرة تحت معرف CVE-2025-53967 وحصلت على درجة CVSS: 7.5. تكمن المشكلة في حقن أوامر (command injection) ناتج عن استخدام مدخلات المستخدم دون تطهير عند بناء سلاسل أوامر شل. وفقًا لإشعار على GitHub، يقوم الخادم بإنشاء وتشغيل أوامر شل عبر تضمين قيم غير مُحقّقة داخل نصوص سطر الأوامر، ما يفتح الباب أمام حقن محارف شل مثل (|, >, &&، إلخ). ويمكن لاستغلال ذلك أن يُفضي إلى تنفيذ شيفرات بامتيازات عملية الخادم.

نوه التقرير أن بعض المخرجات المنتجة بواسطة هذه الوظائف تشمل شيفرات للتشويش على الكود، ومراقبة الحافظة (clipboard monitoring)، وأدوات لنقل البيانات عبر بوت في تليغرام — وهي مكونات قد لا تكون ضارة منفردة لكنها تُستخدم ضمن تسلسل استغلالي ضار.

تسلسل الاستغلال التقني — أين ظهر الخطأ في الشيفرة؟

اكتشفت شركة Imperva الثغرة وأبلغت عنها في يوليو 2025، ووصفتها بأنها سهو تصميمي في آلية الاسترجاع fallback التي تسمح بتحقيق تنفيذ أوامر كامل عن بُعد، مما يعرض مطوّري التطبيقات لخطر كشف البيانات. جوهر الخلل يوجد في ملف src/utils/fetch-with-retry.ts حيث تحاول الوظيفة أولاً جلب المحتوى باستخدام واجهة fetch العادية، وإذا فشل الاستدعاء تنتقل إلى تنفيذ أمر curl عبر child_process.exec — وهنا تظهر نقطة الحقن. لأن أمر curl يُبنى عبر استبدال مباشر لقيم URL ورؤوس الطلب داخل سلسلة شل، يمكن للمهاجم صناعة عنوان أو رأس مُخصَّص يحقن أوامر شل عشوائية، مما يسمح بتنفيذ أوامر على المضيف.

تتضمن سلسلة الاستغلال المبيّنة خطوات مثل: إرسال عميل MCP لطلب Initialize للحصول على mcp-session-id، ثم إرسال طلب JSONRPC بمثابة method tools/call لاستدعاء أدوات مثل get_figma_data أو download_figma_images، ما يوفّر مدخلاً لاستغلال آلية استرجاع المحتوى.

في إثبات مفاهيمي، يمكن للمهاجم الموجود على نفس الشبكة (مثلاً شبكة واي-فاي عامة أو جهاز قائمٍ مُخترَق) أن يرسل الطلبات المطلوبة لاستغلال الخلل، أو قد يخدع ضحية لزيارة موقع مُصمَّم خصيصًا ضمن هجوم إعادة ربط DNS (DNS rebinding).

التصحيح والتخفيف: ماذا يجب على المطورين فعله الآن؟

عالجت الحزمة المشكلة في الإصدار 0.6.3 من figma-developer-mcp الذي صدر في 29 سبتمبر 2025. وكممارسات تخفيفية، يُنصح بشدة بتجنّب استخدام child_process.exec مع مدخلات غير موثوقة والانتقال إلى child_process.execFile أو واجهات مشابهة تمنع تفسير شيل مباشرًا، بالإضافة إلى تطبيق تطهير صارم للمدخلات والتحقق من السلاسل قبل تمريرها إلى أوامر النظام.

أكّدت شركة Thales-المملوكة للشركة المطوِّرة أن هذه الثغرة تذكّر بأن أدوات التطوير المدفوعة بالذكاء الاصطناعي، حتى عند تشغيلها محليًا، يمكن أن تتحول إلى نقاط دخول قوية أمام المهاجمين إذا لم تواكب اعتبارات الأمان وتحديثات التصميم.

في السياق الأوسع: تهديدات متقاطعة مع نماذج الذكاء الاصطناعي

تزامن هذا الكشف مع تحذيرات أخرى في المشهد الأمني، بينها كشف شركة FireTail عن امتناع Google عن سد ثغرة ASCII smuggling في شات بوت Gemini، وهي تقنية قد تُستغل لتمرير مُدخلات تلتف على فلاتر الأمان وتستحث نماذج لغوية لإصدار استجابات غير مرغوبة. وذكر التقرير أن نماذج لغوية أخرى مثل DeepSeek وxAI’s Grok عرضة لمثل هذه الأساليب، ما يزيد من خطورة التكامل العميق للنماذج مع منصات المؤسسات (مثل Google Workspace) ويحوِّل عيبًا بسيطًا في واجهة المستخدم إلى خطر أمني منهجي مثل انتحال الهوية وتسميم البيانات.

محمد الشرشابي
محمد الشرشابي
المقالات: 212

اترك ردّاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *


The reCAPTCHA verification period has expired. Please reload the page.