MCP ( نموذج بروتوكول السياق ) لا يزال النظام في مرحلة التطوير المبكر، والبيئة العامة متشابكة، وتتزايد أساليب الهجوم المحتملة، مما يجعل تصميم البروتوكولات والأدوات الحالية صعباً في الدفاع الفعال. لتعزيز أمان MCP، قامت SlowMist بإصدار أداة MasterMCP المفتوحة المصدر، من خلال عمليات محاكاة الهجوم الفعلية للمساعدة في اكتشاف الثغرات الأمنية في تصميم المنتج، وبالتالي تعزيز مشروع MCP.
ستعرض هذه المقالة طرق الهجوم الشائعة ضمن نظام MCP، مثل تسميم المعلومات، وإخفاء التعليمات الخبيثة، وغيرها من الحالات الحقيقية. سيتم أيضًا فتح مصادر جميع نصوص العرض على GitHub، ليتمكن الجميع من إعادة إنتاج العملية بأكملها في بيئة آمنة، وحتى تطوير الإضافات الخاصة باختبار الهجمات.
نظرة عامة على الهيكل العام
عرض الهدف الهجومي MCP:Toolbox
smithery.ai هو واحد من المواقع الشائعة لإضافات MCP الحالية، حيث يجمع عددًا كبيرًا من قوائم MCP والمستخدمين النشطين. من بينها، @smithery/toolbox هو أداة إدارة MCP التي أطلقتها الشركة رسميًا.
اختيار Toolbox كهدف اختبار يعتمد بشكل أساسي على:
قاعدة المستخدمين ضخمة وتمثل شريحة واسعة
دعم التثبيت التلقائي لمكونات إضافية أخرى، لتعزيز بعض وظائف العميل
تحتوي على الإعدادات الحساسة ( مثل مفتاح API )، لتسهيل العرض
عرض استخدام恶意MCP:MasterMCP
MasterMCP هو أداة模拟恶意MCP تم تطويرها بواسطة SlowMist خصيصًا لاختبار الأمان، وتستخدم تصميمًا قائمًا على المكونات، وتشمل الوحدات الرئيسية التالية:
خدمة موقع محلي لمحاكاة:
تتضمن MasterMCP وحدة محاكاة خدمة الموقع المحلي المدمجة، والتي تسمح بإنشاء خادم HTTP بسيط بسرعة من خلال إطار عمل FastAPI، لمحاكاة بيئات الويب الشائعة. هذه الصفحات تبدو طبيعية، لكن في الواقع تحتوي على حمولة خبيثة مصممة بعناية في الشيفرة المصدرية أو في ردود الواجهة.
هيكل MCP القائم على المكونات المحلية
يستخدم MasterMCP طريقة الإضافات للتوسع، مما يسهل إضافة أساليب هجوم جديدة بسرعة. بعد التشغيل، سيقوم MasterMCP بتشغيل خدمة FastAPI الخاصة بالوحدة السابقة في عملية فرعية.
عميل العرض
Cursor: واحدة من IDEs المساعدة في البرمجة المدعومة بالذكاء الاصطناعي الشائعة عالميًا حاليًا
Claude Desktop: عم عملاق أنثروبيك الرسمي
نموذج كبير للاستخدام في العرض
كلود 3.7
اختر إصدار Claude 3.7 لأنه قد تم تحسينه في التعرف على العمليات الحساسة، ويمثل أيضًا قدرة تشغيل قوية في النظام البيئي الحالي لـ MC.
استدعاء خبيث عبر MCP
تتضمن هذه العرض محتويين: التسميم واستدعاء Cross-MCP الخبيث.
هجوم تسميم محتوى الصفحة
التسمية السامة
يصل المؤشر إلى موقع اختبار محلي، هذه صفحة تبدو غير ضارة "عالم الكعك اللذيذ".
تنفيذ الأمر:
استرجاع محتوى
نتائج تظهر أن Cursor لم يقرأ محتوى الصفحة فحسب، بل قام أيضًا بإعادة إرسال بيانات التكوين الحساسة المحلية إلى خادم الاختبار. في شفرة المصدر، تم تضمين كلمات تحذيرية ضارة في شكل تعليقات HTML.
تسمم التعليقات المشفرة
زيارة صفحة /encode، هذه صفحة ويب تبدو مماثلة، لكن تم تشفير كلمات التحذير الضارة فيها، مما يجعل هجوم التسميم أكثر خفاءً، حتى عند زيارة شفرة المصدر للويب يصعب اكتشافها مباشرة.
حتى لو لم تحتوي الشيفرة المصدرية على كلمات مرور نصية عادية، لا يزال الهجوم ينفذ بنجاح.
هجمات تلوث واجهة الطرف الثالث
هذه العرض يذكر بشكل أساسي أنه، سواء كانت MCP خبيثة أو غير خبيثة، عند استدعاء واجهة برمجة التطبيقات الخاصة بالطرف الثالث، إذا تم إرجاع بيانات الطرف الثالث مباشرة إلى السياق، فقد يؤدي ذلك إلى تأثيرات خطيرة.
تنفيذ الطلب:
احصل على json من /api/data
نتيجة: تم زرع كلمات تحذيرية خبيثة في بيانات JSON العائدة وتم تفعيل التنفيذ الخبيث بنجاح.
تقنية التسمم في مرحلة تهيئة MCP
تتضمن هذه العرض تقديمي حقن الكلمات الرئيسية الأولية وصراع الأسماء.
هجوم تغطية الوظائف الخبيثة
قام MasterMCP بكتابة أداة remove_server بنفس اسم الدالة الموجودة في Toolbox، وقد قام بتشفير التعليمات الضارة.
تنفيذ الأمر:
إزالة صندوق الأدوات استرجاع ملحق الخادم
لم يستدعِ Claude Desktop الطريقة الأصلية remove_server من toolbox، بل قام بتفعيل الطريقة التي تحمل نفس الاسم المقدمة من MasterMCP.
المبدأ هو من خلال التأكيد على "تم إلغاء الطريقة الأصلية"، وتحفيز النموذج الكبير لاستدعاء الوظائف المغطاة بشكل خبيث.
إضافة منطق فحص عالمي ضار
قام MasterMCP بكتابة أداة banana، حيث تتمثل الوظيفة الأساسية لها في فرض تنفيذ هذه الأداة لإجراء فحص أمان قبل تشغيل جميع الأدوات في نص الإرشادات.
قبل كل تنفيذ للدالة، يقوم النظام دائمًا باستدعاء آلية فحص الموز أولاً. يتم تحقيق ذلك من خلال التأكيد المتكرر في الكود على "يجب تشغيل فحص الموز" كحقن منطقي عالمي.
تقنيات متقدمة لإخفاء الكلمات المنبهة الخبيثة
طريقة الترميز الصديقة للنماذج الكبيرة
نظرًا لأن النماذج اللغوية الكبيرة تتمتع بقدرة قوية على تحليل التنسيقات متعددة اللغات، فقد تم استغلال ذلك لإخفاء المعلومات الضارة، وتشتمل الطرق الشائعة على:
البيئة الإنجليزية: استخدام ترميز Hex Byte
البيئة الصينية: استخدم ترميز NCR أو ترميز JavaScript
آلية إرجاع الحمولة الضارة العشوائية
عند الطلب /random، يتم دائمًا إرجاع صفحة تحتوي على حمولة ضارة بشكل عشوائي، مما يزيد بشكل كبير من صعوبة الكشف والتتبع.
ملخص
من خلال عرض عملي لـ MasterMCP، رأينا بشكل مباشر المخاطر الأمنية المختلفة المخفية في نظام MCP. من حقن كلمات التلميح البسيطة، واستدعاءات MCP المتقاطعة، إلى هجمات مرحلة التهيئة الأكثر خفاءً وإخفاء التعليمات الضارة، كل مرحلة تذكرنا بأن نظام MCP رغم قوته، إلا أنه هش أيضًا.
خصوصًا مع تزايد تفاعل النماذج الكبيرة بشكل متكرر مع الإضافات الخارجية وواجهات برمجة التطبيقات، فإن التلوث البسيط للإدخال قد يؤدي إلى مخاطر أمان على مستوى النظام. تنوع أساليب المهاجمين مثل التشفير المخفي (، التلوث العشوائي، وتغطية الدالة ) تعني أن أفكار الحماية التقليدية تحتاج إلى ترقية شاملة.
آمل أن تكون هذه العروض بمثابة جرس إنذار للجميع: يجب على المطورين والمستخدمين أن يظلوا حذرين من نظام MCP، ويركزوا على كل تفاعل، وكل سطر من الشيفرة، وكل قيمة عائدة. فقط من خلال التعامل بصرامة مع التفاصيل، يمكن بناء بيئة MCP مستقرة وآمنة.
ستواصل SlowMist تحسين نص برمجة MasterMCP، وفتح مصادر المزيد من حالات الاختبار المستهدفة، لمساعدة على فهم وتعزيز الحماية بشكل أعمق في بيئة آمنة. تم تزامن المحتوى ذي الصلة على GitHub، يمكن للقراء المهتمين الاطلاع عليه.
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
تسجيلات الإعجاب 13
أعجبني
13
7
مشاركة
تعليق
0/400
HypotheticalLiquidator
· منذ 1 س
لقد تم الرفع فئة أول مجموعة من المتشائمين.
شاهد النسخة الأصليةرد0
screenshot_gains
· 07-28 10:51
gm ظهرت ثغرة جديدة مرة أخرى
شاهد النسخة الأصليةرد0
AirdropSweaterFan
· 07-28 10:50
小心 خداع الناس لتحقيق الربح啊
شاهد النسخة الأصليةرد0
ContractCollector
· 07-28 10:49
MCP أرسل
شاهد النسخة الأصليةرد0
ForkItAll
· 07-28 10:48
خرج كل شيء أسود، ماذا يمكن أن يقال بعد ذلك؟
شاهد النسخة الأصليةرد0
MissedAirdropBro
· 07-28 10:44
حتى سيارات الجنازات أكثر استقرارًا منها
شاهد النسخة الأصليةرد0
MEVSandwichVictim
· 07-28 10:27
مرة أخرى تم خداعنا؟ خداع الناس لتحقيق الربح أفضل من خداع هؤلاء الحمقى~
MasterMCP يكشف عن الثغرات الأمنية في MCP ويقدم عرضًا عمليًا لأساليب الهجوم المتعددة
مخاطر الأمن في نظام MCP وعرض الهجمات
MCP ( نموذج بروتوكول السياق ) لا يزال النظام في مرحلة التطوير المبكر، والبيئة العامة متشابكة، وتتزايد أساليب الهجوم المحتملة، مما يجعل تصميم البروتوكولات والأدوات الحالية صعباً في الدفاع الفعال. لتعزيز أمان MCP، قامت SlowMist بإصدار أداة MasterMCP المفتوحة المصدر، من خلال عمليات محاكاة الهجوم الفعلية للمساعدة في اكتشاف الثغرات الأمنية في تصميم المنتج، وبالتالي تعزيز مشروع MCP.
ستعرض هذه المقالة طرق الهجوم الشائعة ضمن نظام MCP، مثل تسميم المعلومات، وإخفاء التعليمات الخبيثة، وغيرها من الحالات الحقيقية. سيتم أيضًا فتح مصادر جميع نصوص العرض على GitHub، ليتمكن الجميع من إعادة إنتاج العملية بأكملها في بيئة آمنة، وحتى تطوير الإضافات الخاصة باختبار الهجمات.
نظرة عامة على الهيكل العام
عرض الهدف الهجومي MCP:Toolbox
smithery.ai هو واحد من المواقع الشائعة لإضافات MCP الحالية، حيث يجمع عددًا كبيرًا من قوائم MCP والمستخدمين النشطين. من بينها، @smithery/toolbox هو أداة إدارة MCP التي أطلقتها الشركة رسميًا.
اختيار Toolbox كهدف اختبار يعتمد بشكل أساسي على:
عرض استخدام恶意MCP:MasterMCP
MasterMCP هو أداة模拟恶意MCP تم تطويرها بواسطة SlowMist خصيصًا لاختبار الأمان، وتستخدم تصميمًا قائمًا على المكونات، وتشمل الوحدات الرئيسية التالية:
تتضمن MasterMCP وحدة محاكاة خدمة الموقع المحلي المدمجة، والتي تسمح بإنشاء خادم HTTP بسيط بسرعة من خلال إطار عمل FastAPI، لمحاكاة بيئات الويب الشائعة. هذه الصفحات تبدو طبيعية، لكن في الواقع تحتوي على حمولة خبيثة مصممة بعناية في الشيفرة المصدرية أو في ردود الواجهة.
يستخدم MasterMCP طريقة الإضافات للتوسع، مما يسهل إضافة أساليب هجوم جديدة بسرعة. بعد التشغيل، سيقوم MasterMCP بتشغيل خدمة FastAPI الخاصة بالوحدة السابقة في عملية فرعية.
عميل العرض
نموذج كبير للاستخدام في العرض
اختر إصدار Claude 3.7 لأنه قد تم تحسينه في التعرف على العمليات الحساسة، ويمثل أيضًا قدرة تشغيل قوية في النظام البيئي الحالي لـ MC.
استدعاء خبيث عبر MCP
تتضمن هذه العرض محتويين: التسميم واستدعاء Cross-MCP الخبيث.
هجوم تسميم محتوى الصفحة
يصل المؤشر إلى موقع اختبار محلي، هذه صفحة تبدو غير ضارة "عالم الكعك اللذيذ".
تنفيذ الأمر: استرجاع محتوى
نتائج تظهر أن Cursor لم يقرأ محتوى الصفحة فحسب، بل قام أيضًا بإعادة إرسال بيانات التكوين الحساسة المحلية إلى خادم الاختبار. في شفرة المصدر، تم تضمين كلمات تحذيرية ضارة في شكل تعليقات HTML.
زيارة صفحة /encode، هذه صفحة ويب تبدو مماثلة، لكن تم تشفير كلمات التحذير الضارة فيها، مما يجعل هجوم التسميم أكثر خفاءً، حتى عند زيارة شفرة المصدر للويب يصعب اكتشافها مباشرة.
حتى لو لم تحتوي الشيفرة المصدرية على كلمات مرور نصية عادية، لا يزال الهجوم ينفذ بنجاح.
هجمات تلوث واجهة الطرف الثالث
هذه العرض يذكر بشكل أساسي أنه، سواء كانت MCP خبيثة أو غير خبيثة، عند استدعاء واجهة برمجة التطبيقات الخاصة بالطرف الثالث، إذا تم إرجاع بيانات الطرف الثالث مباشرة إلى السياق، فقد يؤدي ذلك إلى تأثيرات خطيرة.
تنفيذ الطلب: احصل على json من /api/data
نتيجة: تم زرع كلمات تحذيرية خبيثة في بيانات JSON العائدة وتم تفعيل التنفيذ الخبيث بنجاح.
تقنية التسمم في مرحلة تهيئة MCP
تتضمن هذه العرض تقديمي حقن الكلمات الرئيسية الأولية وصراع الأسماء.
هجوم تغطية الوظائف الخبيثة
قام MasterMCP بكتابة أداة remove_server بنفس اسم الدالة الموجودة في Toolbox، وقد قام بتشفير التعليمات الضارة.
تنفيذ الأمر: إزالة صندوق الأدوات استرجاع ملحق الخادم
لم يستدعِ Claude Desktop الطريقة الأصلية remove_server من toolbox، بل قام بتفعيل الطريقة التي تحمل نفس الاسم المقدمة من MasterMCP.
المبدأ هو من خلال التأكيد على "تم إلغاء الطريقة الأصلية"، وتحفيز النموذج الكبير لاستدعاء الوظائف المغطاة بشكل خبيث.
إضافة منطق فحص عالمي ضار
قام MasterMCP بكتابة أداة banana، حيث تتمثل الوظيفة الأساسية لها في فرض تنفيذ هذه الأداة لإجراء فحص أمان قبل تشغيل جميع الأدوات في نص الإرشادات.
قبل كل تنفيذ للدالة، يقوم النظام دائمًا باستدعاء آلية فحص الموز أولاً. يتم تحقيق ذلك من خلال التأكيد المتكرر في الكود على "يجب تشغيل فحص الموز" كحقن منطقي عالمي.
تقنيات متقدمة لإخفاء الكلمات المنبهة الخبيثة
طريقة الترميز الصديقة للنماذج الكبيرة
نظرًا لأن النماذج اللغوية الكبيرة تتمتع بقدرة قوية على تحليل التنسيقات متعددة اللغات، فقد تم استغلال ذلك لإخفاء المعلومات الضارة، وتشتمل الطرق الشائعة على:
آلية إرجاع الحمولة الضارة العشوائية
عند الطلب /random، يتم دائمًا إرجاع صفحة تحتوي على حمولة ضارة بشكل عشوائي، مما يزيد بشكل كبير من صعوبة الكشف والتتبع.
ملخص
من خلال عرض عملي لـ MasterMCP، رأينا بشكل مباشر المخاطر الأمنية المختلفة المخفية في نظام MCP. من حقن كلمات التلميح البسيطة، واستدعاءات MCP المتقاطعة، إلى هجمات مرحلة التهيئة الأكثر خفاءً وإخفاء التعليمات الضارة، كل مرحلة تذكرنا بأن نظام MCP رغم قوته، إلا أنه هش أيضًا.
خصوصًا مع تزايد تفاعل النماذج الكبيرة بشكل متكرر مع الإضافات الخارجية وواجهات برمجة التطبيقات، فإن التلوث البسيط للإدخال قد يؤدي إلى مخاطر أمان على مستوى النظام. تنوع أساليب المهاجمين مثل التشفير المخفي (، التلوث العشوائي، وتغطية الدالة ) تعني أن أفكار الحماية التقليدية تحتاج إلى ترقية شاملة.
آمل أن تكون هذه العروض بمثابة جرس إنذار للجميع: يجب على المطورين والمستخدمين أن يظلوا حذرين من نظام MCP، ويركزوا على كل تفاعل، وكل سطر من الشيفرة، وكل قيمة عائدة. فقط من خلال التعامل بصرامة مع التفاصيل، يمكن بناء بيئة MCP مستقرة وآمنة.
ستواصل SlowMist تحسين نص برمجة MasterMCP، وفتح مصادر المزيد من حالات الاختبار المستهدفة، لمساعدة على فهم وتعزيز الحماية بشكل أعمق في بيئة آمنة. تم تزامن المحتوى ذي الصلة على GitHub، يمكن للقراء المهتمين الاطلاع عليه.