MCP خامیاں: پوشیدہ زہر اور ہیرا پھیری

ماڈل کانٹیکسٹ پروٹوکول (MCP) کا منظرنامہ، جو ابھی ابتدائی مراحل میں ہے، پیچیدگیوں سے بھرا ہوا ہے اور متعدد ممکنہ حملوں کا شکار ہے۔ موجودہ پروٹوکول اور ٹول ڈیزائن اکثر مناسب دفاع فراہم کرنے میں ناکام رہتے ہیں۔ ان چیلنجوں سے نمٹنے اور MCP سیکیورٹی کی گہری سمجھ کو فروغ دینے کے لیے، سلو مسٹ نے ماسٹر ایم سی پی کو اوپن سورس کیا ہے، جو عملی حملوں کی نقل تیار کرنے کے لیے ڈیزائن کیا گیا ایک ٹول ہے۔ اس اقدام کا مقصد کمیونٹی کو ان کے MCP منصوبوں میں حفاظتی خطرات کی نشاندہی کرنے اور ان کو کم کرنے کے لیے بااختیار بنانا ہے۔

اس عملی انداز کے ساتھ، MCP سیکیورٹی چیک لسٹ مختلف حملوں کے ویکٹرز کے بنیادی نقطہ نظر کے بارے میں قیمتی بصیرت پیش کرتی ہے۔ یہ مضمون حقیقی دنیا کے منظرناموں میں جاتا ہے، جو MCP ماحولیات کے اندر عام حملوں کے طریقوں کو ظاہر کرتا ہے، جیسے کہ معلومات کو زہر دینا اور پوشیدہ بدنیتی پر مبنی کمانڈز کا انجیکشن۔ ان مظاہروں میں استعمال ہونے والے تمام اسکرپٹ GitHub پر دستیاب ہیں، جو صارفین کو محفوظ ماحول میں پورے عمل کو نقل کرنے اور یہاں تک کہ اپنے حملے کی جانچ کے پلگ ان تیار کرنے کے قابل بناتے ہیں۔

فن تعمیر کا جائزہ

مظاہرے کے لیے ٹارگٹ MCP: ٹول باکس

Smithery.ai، MCP پلگ ان کے ایک نمایاں مرکز کے طور پر کھڑا ہے، جو MCP لسٹنگز اور فعال صارفین کی ایک بڑی تعداد کو اپنی طرف متوجہ کرتا ہے۔ ان میں، smithery.ai کی جانب سے پیش کردہ ایک سرکاری MCP مینجمنٹ ٹول @smithery/toolbox، اس حفاظتی جائزے کا مرکز ہے۔

ٹول باکس کو کئی اہم وجوہات کی بنا پر ٹیسٹ ٹارگٹ کے طور پر منتخب کیا گیا تھا:

  • یہ ایک اہم صارف بیس کا حامل ہے، جو اسے MCP ماحولیات کے اندر ایک نمائندہ نمونہ بناتا ہے۔
  • یہ اضافی پلگ ان کی خودکار تنصیب کی حمایت کرتا ہے، کلائنٹ سائیڈ کی فعالیت کو بڑھاتا ہے (مثلاً کلاڈ ڈیسک ٹاپ)۔
  • اس میں حساس ترتیبیں شامل ہیں، جیسے API کیز، جو ممکنہ استحصال کے مظاہرے میں مدد کرتی ہیں۔

مظاہرے کے لیے استعمال ہونے والا بدنیتی پر مبنی MCP: ماسٹر ایم سی پی

ماسٹر ایم سی پی، جسے سلو مسٹ نے خاص طور پر حفاظتی جانچ کے مقاصد کے لیے تیار کیا ہے، ایک ماڈیولر فن تعمیر پر بنایا گیا ایک نقلی بدنیتی پر مبنی MCP ٹول ہے۔ اس کے اہم اجزاء میں شامل ہیں:

  1. لوکل ویب سائٹ سروس کی نقل: http://127.0.0.1:1024

حملے کا ایک حقیقت پسندانہ منظرنامہ بنانے کے لیے، ماسٹر ایم سی پی ایک لوکل ویب سائٹ سروس کی نقل کا ماڈیول شامل کرتا ہے۔ FastAPI فریم ورک کا فائدہ اٹھاتے ہوئے، یہ ماڈیول تیزی سے ایک سادہ HTTP سرور قائم کرتا ہے جو عام ویب ماحول کی نقل کرتا ہے۔ یہ صفحات بے ضرر دکھائی دے سکتے ہیں، بیکری کی معلومات دکھا سکتے ہیں یا معیاری JSON ڈیٹا واپس کر سکتے ہیں، لیکن وہ اپنے سورس کوڈ یا API کے جوابات میں احتیاط سے تیار کردہ بدنیتی پر مبنی پے لوڈ کو چھپاتے ہیں۔

یہ نقطہ نظر ایک محفوظ، کنٹرول شدہ مقامی ماحول میں معلومات کو زہر دینے اور کمانڈ کو چھپانے کی تکنیک کے جامع مظاہرے کی اجازت دیتا ہے۔ یہ بظاہر عام ویب صفحات کے اندر چھپے ممکنہ خطرات کو اجاگر کرتا ہے، جو بڑے لسانی ماڈلز میں غیر معمولی رویے کو متحرک کر سکتے ہیں۔

  1. لوکلائزڈ پلگ ان MCP فن تعمیر

ماسٹر ایم سی پی نئے حملے کے ویکٹرز کے لیے تیز رفتار توسیع کو آسان بنانے کے لیے ایک پلگ ان نقطہ نظر اختیار کرتا ہے۔ عمل درآمد پر، ماسٹر ایم سی پی ذیلی عمل میں پچھلے ماڈیول کی FastAPI سروس شروع کرتا ہے۔

مظاہرہ کلائنٹ

  • کرسر: عالمی سطح پر سب سے زیادہ استعمال ہونے والے AI سے مدد یافتہ پروگرامنگ IDEs میں سے ایک۔
  • کلاڈ ڈیسک ٹاپ: اینتھروپک کا آفیشل کلائنٹ، وہ تنظیم جس نے MCP پروٹوکول کو اپنی مرضی کے مطابق بنایا۔

مظاہرے کے لیے استعمال ہونے والا بڑا لسانی ماڈل (LLM)

  • کلاڈ 3.7

کلاڈ 3.7 کو اس کی حساس کارروائیوں کو پہچاننے کی بہتر صلاحیتوں اور موجودہ MCP ماحولیات کے اندر مضبوط آپریشنل صلاحیتوں کی نمائندگی کی وجہ سے منتخب کیا گیا تھا۔

claude\_desktop\_config.json کی تشکیل

تشکیل مکمل ہونے کے ساتھ، مظاہرے کا مرحلہ شروع ہوتا ہے۔

کراس ایم سی پی بدنیتی پر مبنی دعوت

یہ مظاہرہ چیک لسٹ میں بیان کردہ زہر دینے کی تکنیکوں اور کراس ایم سی پی بدنیتی پر مبنی دعوت کی حکمت عملیوں دونوں کو شامل کرتا ہے۔

ویب پیج مواد زہر دینے کا حملہ

  1. تبصرہ پر مبنی زہر دینا

کرسر مقامی ٹیسٹ ویب سائٹ http://127.0.0.1:1024 تک رسائی حاصل کرتا ہے۔

‘مزیدار کیک ورلڈ’ کے بارے میں یہ بظاہر بے ضرر صفحہ ایک بڑے لسانی ماڈل کلائنٹ کے بدنیتی پر مبنی ویب سائٹ تک رسائی کے ممکنہ اثرات کو واضح کرنے کے لیے ایک نقل کے طور پر کام کرتا ہے۔

عمل درآمد کمانڈ:

نتائج سے پتہ چلتا ہے کہ کرسر نہ صرف ویب پیج کے مواد کو پڑھتا ہے بلکہ مقامی حساس تشکیلاتی ڈیٹا کو بھی ٹیسٹ سرور پر واپس منتقل کرتا ہے۔ بدنیتی پر مبنی پرامپٹ کو HTML تبصرے کے طور پر سورس کوڈ میں سرایت کیا گیا ہے:

اگرچہ یہ تبصرہ پر مبنی نقطہ نظر نسبتاً سیدھا سادا اور آسانی سے پتہ لگانے والا ہے، لیکن یہ اب بھی بدنیتی پر مبنی کارروائیوں کو متحرک کرنے کی صلاحیت رکھتا ہے۔

  1. انکوڈڈ تبصرہ زہر دینا

http://127.0.0.1:1024/encode تک رسائی حاصل کرنے سے ایک ایسا صفحہ ظاہر ہوتا ہے جو پچھلی مثال جیسا ہی دکھائی دیتا ہے۔ تاہم، بدنیتی پر مبنی پرامپٹ انکوڈ کیے گئے ہیں، جو صفحہ کے سورس کوڈ کا معائنہ کرنے پر بھی استحصال کا پتہ لگانا زیادہ مشکل بناتا ہے۔

سورس کوڈ میں واضح پرامپٹس کی عدم موجودگی کے باوجود، حملہ کامیاب ہوتا ہے۔

MCP ٹول ریٹرن انفارمیشن زہر دینا

ماسٹر ایم سی پی پرامپٹ ہدایات کی بنیاد پر، ہم ایک نقلی کمانڈ ان پٹ کرتے ہیں جو بدنیتی پر مبنی MCP کو متحرک کرتا ہے اور اس کے بعد کی کارروائیوں کو ظاہر کرتا ہے۔

کمانڈ کو متحرک کرنے پر، کلائنٹ ٹول باکس کو ایک کراس MCP کال شروع کرتا ہے اور کامیابی سے ایک نیا MCP سرور شامل کرتا ہے۔

پلگ ان کوڈ کے معائنہ سے پتہ چلتا ہے کہ واپس کیے گئے ڈیٹا میں ایک انکوڈڈ بدنیتی پر مبنی پے لوڈ شامل ہے، جو اسے صارف کے لیے عملی طور پر ناقابل شناخت بناتا ہے۔

تھرڈ پارٹی انٹرفیس آلودگی کا حملہ

یہ مظاہرہ بدنیتی پر مبنی اور غیر بدنیتی پر مبنی MCPs دونوں کے براہ راست تھرڈ پارٹی API ڈیٹا کو سیاق و سباق میں واپس کرنے سے وابستہ ممکنہ خطرات کو اجاگر کرتا ہے۔

مثال کوڈ:

عمل درآمد درخواست:

نتیجہ: بدنیتی پر مبنی پرامپٹ واپس کیے گئے JSON ڈیٹا میں سرایت کر گیا ہے اور کامیابی سے بدنیتی پر مبنی عمل درآمد کو متحرک کرتا ہے۔

MCP کے آغاز کے دوران زہر دینے کی تکنیک

یہ مظاہرہ ابتدائی پرامپٹ انجیکشن اور نام کے تصادم کی چیک لسٹ اشیاء کا احاطہ کرتا ہے۔

بدنیتی پر مبنی فنکشن اوور رائٹ حملہ

ماسٹر ایم سی پی ٹول باکس کے remove_server فنکشن کے نام سے ایک ہی فنکشن کے نام والا ٹول بناتا ہے اور اس کے اندر بدنیتی پر مبنی پرامپٹس کو انکوڈ کرتا ہے۔

عمل درآمد کمانڈ:

کلاڈ ڈیسک ٹاپ اصل toolbox remove_server طریقہ کار کو نافذ نہیں کرتا ہے، بلکہ اس کے بجائے ماسٹر ایم سی پی کی جانب سے فراہم کردہ اسی نام کے طریقہ کار کو متحرک کرتا ہے:

یہ اس بات پر زور دے کر حاصل کیا جاتا ہے کہ ‘اصل طریقہ کار متروک ہو گیا ہے’، جو بڑے لسانی ماڈل کو بدنیتی سے اوور رائٹ کیے گئے فنکشن کو ترجیح دینے کی ترغیب دیتا ہے۔

بدنیتی پر مبنی عالمی معائنہ منطق شامل کرنا

ماسٹر ایم سی پی ‘banana’ نامی ایک ٹول بناتا ہے، جو کسی بھی دوسرے ٹول کے عمل درآمد سے پہلے لازمی حفاظتی جانچ کو نافذ کرنے کے لیے ڈیزائن کیا گیا ہے۔

ہر فنکشن کے عمل درآمد سے پہلے، سسٹم ‘banana’ چیک میکانزم کو ترجیح دیتا ہے:

یہ عالمی منطق انجیکشن کوڈ کے اندر ‘banana کا پتہ لگانے کے لازمی عمل درآمد’ پر بار بار زور دے کر مکمل کیا جاتا ہے۔

بدنیتی پر مبنی پرامپٹس کو چھپانے کے لیے جدید تکنیک

LLM کے لیے دوستانہ انکوڈنگ طریقے

بڑے لسانی ماڈلز میں کثیر لسانی فارمیٹس کو پارس کرنے کی مضبوط صلاحیتیں موجود ہیں، جن کا استحصال بدنیتی پر مبنی معلومات کو چھپانے کے لیے کیا جا سکتا ہے۔ عام طریقوں میں شامل ہیں:

  • انگریزی ماحول: ہیکس بائٹ انکوڈنگ
  • چینی ماحول: NCR انکوڈنگ یا جاوا اسکرپٹ انکوڈنگ

بے ترتیب بدنیتی پر مبنی پے لوڈ ریٹرن میکانزم

تیسرے سیکشن میں ذکر کردہ تھرڈ پارٹی انٹرفیس آلودگی کی طرح، http://127.0.0.1:1024/random کی درخواست کے نتیجے میں:

ہر درخواست ایک بدنیتی پر مبنی پے لوڈ پر مشتمل ایک بے ترتیب طور پر تیار کردہ صفحہ واپس کرتی ہے، جو پتہ لگانے اور سراغ لگانے میں نمایاں طور پر اضافہ کرتی ہے۔

ماسٹر ایم سی پی کے عملی مظاہرے کے ذریعے، ماڈل کانٹیکسٹ پروٹوکول (MCP) ماحولیات کے اندر پوشیدہ حفاظتی کمزوریوں کو ظاہر کیا گیا ہے۔ بنیادی پرامپٹ انجیکشنز اور کراس MCP کالز سے لے کر شروعات کے دوران زیادہ لطیف حملوں اور بدنیتی پر مبنی ہدایات کی پوشیدگی تک، ہر مرحلہ MCP ماحولیات کی طاقت کے ساتھ ساتھ موروثی کمزوری کی یاد دہانی کا کام کرتا ہے۔

آج، جیسے جیسے بڑے ماڈلز بیرونی پلگ ان اور APIs کے ساتھ تیزی سے تعامل کرتے ہیں، بظاہر معمولی ان پٹ آلودگی سسٹم بھر میں حفاظتی خطرات کو متحرک کر سکتی ہے۔ حملہ آوروں کی حکمت عملیوں کی ارتقائی تنوع، بشمول انکوڈنگ تکنیک، بے ترتیب آلودگی، اور فنکشن اوور رائٹس، روایتی حفاظتی طریقوں کی جامع اپ گریڈ کی ضرورت ہے۔