कल्पना कीजिए कि आपने कड़ी मेहनत से एक बेहद होशियार AI बड़ा मॉडल तैयार किया है, जो आपके विभिन्न जटिल कार्यों को संभाल सकता है। लेकिन, अगर इस होशियार दिमाग तक पहुँचने का "पाइपलाइन"—यानी मॉडल कंटेक्स्ट प्रोटोकॉल (MCP)—सुरक्षित नहीं है, तो क्या यह हैकर्स के लिए एक मौका नहीं देगा? चिंता मत करो! ब्लॉकचेन सुरक्षा क्षेत्र के विशेषज्ञों SlowMist (स्लोमिस्ट टेक्नोलॉजी) द्वारा तैयार किया गया MCP सुरक्षा चेकलिस्ट, एक पेशेवर "AI शील्ड एजेंसी" की तरह है, जो MCP-आधारित AI टूल्स के लिए एक व्यापक सुरक्षा गाइड प्रदान करता है, जिसका उद्देश्य आपके LLM प्लगइन इकोसिस्टम को विभिन्न संभावित खतरों से बचाना है।

QQ_1745201991279.png

2024 के अंत में MCP जारी होने के बाद से, इसे व्यापक रूप से Claude Desktop और Cursor जैसे मुख्यधारा के AI अनुप्रयोगों में उपयोग किया गया है, और विभिन्न MCP सेवा बाजार भी तेजी से विकसित हो रहे हैं। हालाँकि, किसी भी नई तकनीक की तरह, MCP का तेजी से प्रसार भी नई सुरक्षा चुनौतियाँ लाया है।

MCP सुरक्षा चेकलिस्ट इसी पृष्ठभूमि में बनाया गया है। यह कोई ठंडा उपकरण नहीं है, बल्कि एक अनुभवी सुरक्षा विशेषज्ञ है, जो व्यवस्थित रूप से MCP आर्किटेक्चर में होस्ट (होस्ट), क्लाइंट (क्लाइंट) और सर्वर (सर्वर) तीन मुख्य घटकों के बीच बातचीत के दौरान उत्पन्न होने वाले विभिन्न जोखिम बिंदुओं को सूचीबद्ध करता है। चाहे वह संवेदनशील क्रिप्टोकरेंसी लेनदेन से जुड़ा हो, या LLM के साथ एकीकृत कस्टम प्लगइन्स से जुड़ा हो, यह सूची डेवलपर्स को संभावित सुरक्षा कमजोरियों की पहचान और रोकथाम करने में मदद कर सकती है

इस सूची में दिए गए सुरक्षा उपायों को अपनाकर, आपके MCP सिस्टम की समग्र स्थिरता और नियंत्रणीयता में उल्लेखनीय वृद्धि होगी, जिससे AI अनुप्रयोगों की सुरक्षा और विकास साथ-साथ चलेंगे।

✨ मुख्य विशेषताएँ

यह MCP सुरक्षा चेकलिस्ट एक सावधानीपूर्वक सुरक्षा प्रबंधक की तरह है, जिसने कई आयामों से MCP सिस्टम की सुरक्षा पर गहराई से विचार किया है, मुख्य मुख्य विशेषताओं को निम्नलिखित पहलुओं में संक्षेपित किया जा सकता है:

  • व्यापक API सुरक्षा सुरक्षा:
    • सख्त इनपुट सत्यापन: जैसे कि आपके घर में प्रवेश करने वाले प्रत्येक आगंतुक की सावधानीपूर्वक जाँच करना, दुर्भावनापूर्ण कोड को API इनपुट के माध्यम से घुसपैठ करने से रोकना।
    • API दर सीमा: API के लिए ट्रैफ़िक की ऊपरी सीमा निर्धारित करना, दुर्भावनापूर्ण अनुरोधों से अभिभूत होने से रोकना, जिससे सेवा क्रैश हो सकती है (DoS हमला)।
    • आउटपुट एन्कोडिंग: सुनिश्चित करें कि API आउटपुट डेटा को उचित रूप से संसाधित किया गया है, संभावित क्रॉस-साइट स्क्रिप्टिंग हमलों आदि के जोखिम को रोकना।
  • मजबूत सर्वर प्रमाणीकरण और प्राधिकरण तंत्र:
    • सूक्ष्म पहुंच नियंत्रण: कंपनी के अधिकार प्रबंधन सिस्टम की तरह, विभिन्न भूमिकाएँ केवल अपने जिम्मेदारी क्षेत्र के संसाधनों तक ही पहुँच सकती हैं, न्यूनतम अधिकार सिद्धांत का पालन करती हैं।
    • सुरक्षित क्रेडेंशियल प्रबंधन: हार्ड-कोडेड कुंजियों को अलविदा कहें! आपको सिखाता है कि सेवा क्रेडेंशियल्स को सुरक्षित रूप से कैसे संग्रहीत और प्रबंधित किया जाए, कुंजी प्रबंधन सेवाओं का उपयोग करके।
    • API कुंजी रोटेशन: समय-समय पर API कुंजियों को बदलना, जैसे समय-समय पर दरवाजे के ताले बदलना, कुंजी के लीक होने के जोखिम को कम करना।
    • सेवा पहचान प्रमाणीकरण: टूल को सर्वर की पहचान को सत्यापित करने की अनुमति देता है, यह सुनिश्चित करता है कि क्लाइंट विश्वसनीय सेवा से जुड़ा है।
  • कठोर बैकएंड निरंतरता नियंत्रण:
    • जीवन चक्र प्रबंधन: सॉफ़्टवेयर की स्थापना और अनइंस्टॉलेशन के प्रबंधन की तरह, MCP प्लगइन्स के जीवन चक्र को सख्ती से प्रबंधित करना और क्लाइंट के साथ समन्वय करना।
    • मजबूरन बंद करना और साफ़ करना: जब क्लाइंट बंद हो जाता है, तो यह सुनिश्चित करें कि सभी MCP बैकएंड प्रक्रियाएँ पूरी तरह से साफ़ हो गई हैं, कोई भी समस्या नहीं छोड़ी गई है।
    • स्वास्थ्य जाँच तंत्र: समय-समय पर MCP प्लगइन्स की स्थिति की जाँच करना, असामान्य निरंतर व्यवहार का समय पर पता लगाना।
    • बैकएंड गतिविधि की निगरानी और सीमा: MCP बैकएंड की सभी गतिविधियों की निगरानी और रिकॉर्ड करना, और इसके संचालन और अवधि को सीमित करना।
  • विश्वसनीय परिनियोजन और रनटाइम सुरक्षा:
    • अलग-थलग वातावरण: यह दृढ़ता से अनुशंसा की जाती है कि सर्वर को अलग-थलग वातावरण (जैसे कंटेनर, वर्चुअल मशीन या सैंडबॉक्स) में चलाया जाए, दुर्भावनापूर्ण कोड के भागने और क्षैतिज आंदोलन को रोकने के लिए।
    • कंटेनर सुरक्षा: यदि आप कंटेनरों का उपयोग करते हैं, तो सुरक्षित कॉन्फ़िगरेशन करना सुनिश्चित करें, गैर-रूट उपयोगकर्ता के रूप में कंटेनर चलाएँ, अपरिवर्तनीय बुनियादी ढाँचे और रनटाइम सुरक्षा का उपयोग करें।
    • संसाधन सीमा: MCP प्लगइन्स के लिए संसाधन उपयोग की ऊपरी सीमा निर्धारित करना, बड़े मॉडल की विफलता के कारण अनंत लूप या अत्यधिक कॉल को रोकने के लिए।
  • पूर्ण कोड और डेटा अखंडता सुरक्षा:
    • अखंडता सत्यापन तंत्र: कोड को छेड़छाड़ से बचाने के लिए डिजिटल हस्ताक्षर, चेकसम आदि का उपयोग करना।
    • रिमोट सत्यापन: कोड अखंडता को दूर से सत्यापित करने के लिए समर्थन तंत्र, सुरक्षा में वृद्धि।
    • कोड ऑब्फ़स्केशन और सुदृढ़ीकरण: रिवर्स इंजीनियरिंग कोड की कठिनाई में वृद्धि।
  • विस्तृत आपूर्ति श्रृंखला सुरक्षा प्रबंधन:
    • निर्भरता प्रबंधन: तृतीय-पक्ष निर्भरताओं का सुरक्षित रूप से प्रबंधन करना।
    • पैकेज अखंडता और स्रोत सत्यापन: यह सुनिश्चित करना कि संदर्भित सॉफ़्टवेयर पैकेज पूर्ण और विश्वसनीय हैं।
    • सुरक्षित निर्माण: यह सुनिश्चित करना कि सॉफ़्टवेयर निर्माण प्रक्रिया सुरक्षित है।
  • व्यापक निगरानी और लॉगिंग:
    • असामान्य पहचान और अलर्ट: असामान्य गतिविधियों का समय पर पता लगाना और रिपोर्ट करना।
    • विस्तृत लॉगिंग: सभी सेवा गतिविधियों और सुरक्षा घटनाओं को रिकॉर्ड करना और केंद्रीकृत प्रबंधन करना, लॉग की अखंडता सुनिश्चित करना, ऑडिट क्षमता प्रदान करना।
  • सख्त कॉलिंग पर्यावरण अलगाव:
    • MCP उदाहरण अलगाव: यह सुनिश्चित करना कि कई MCP सर्वर उदाहरणों के बीच संचालन एक दूसरे से अलग हैं।
    • संसाधन पहुँच नियंत्रण: प्रत्येक MCP सर्वर के लिए संसाधन पहुँच सीमा को स्पष्ट रूप से परिभाषित करना।
    • टूल अधिकार पृथक्करण: विभिन्न क्षेत्रों के उपकरणों के लिए विभिन्न अधिकार सेट सेट करना।
  • व्यापक प्लेटफ़ॉर्म संगतता और सुरक्षा:
    • सिस्टम संसाधन अलगाव: विभिन्न ऑपरेटिंग सिस्टम विशेषताओं के अनुसार उपयुक्त संसाधन अलगाव नीतियों को लागू करना।
    • क्रॉस-प्लेटफ़ॉर्म संगतता परीक्षण: विभिन्न ऑपरेटिंग सिस्टम और क्लाइंट पर परीक्षण करें कि क्या MCP सर्वर का सुरक्षित व्यवहार सुसंगत है।
    • प्लेटफ़ॉर्म-विशिष्ट जोखिम मूल्यांकन: प्रत्येक प्लेटफ़ॉर्म के विशिष्ट सुरक्षा जोखिमों का मूल्यांकन करें और शमन उपाय करें।
  • डेटा सुरक्षा और गोपनीयता पर ध्यान दें:
    • डेटा न्यूनीकरण: केवल आवश्यक डेटा एकत्र और संसाधित करें।
    • डेटा एन्क्रिप्शन और अलगाव: संवेदनशील डेटा को एन्क्रिप्ट करके संग्रहीत और प्रेषित करें, और यह सुनिश्चित करें कि विभिन्न उपयोगकर्ताओं का डेटा एक दूसरे से अलग है।
    • संवेदनशील डेटा पहचान और प्रसंस्करण: संवेदनशील डेटा को स्वचालित रूप से पहचानें और विशेष तरीके से संसाधित करें।
  • परिष्कृत संसाधन और उपकरण सुरक्षा नियंत्रण: संसाधनों तक पहुँच, आकार, टेम्पलेट पैरामीटर और उपकरणों के कोडिंग अभ्यास, निष्पादन वातावरण, इनपुट और आउटपुट सत्यापन, अधिकार नियंत्रण, व्यवहार बाधाओं आदि के पहलुओं पर विस्तृत सुरक्षा आवश्यकताएँ प्रस्तुत की गई हैं।
  • उपयोगकर्ता इंटरैक्शन सुरक्षा:
    • स्पष्ट उपयोगकर्ता इंटरफ़ेस: UI को AI संचालन की सीमा और संभावित प्रभाव को स्पष्ट रूप से प्रदर्शित करना चाहिए, और सहज सुरक्षा संकेतक प्रदान करना चाहिए।
    • संवेदनशील संचालन पुष्टिकरण: उच्च-जोखिम वाले संचालन के लिए उपयोगकर्ता पुष्टिकरण की स्पष्ट आवश्यकता होती है।
    • पारदर्शी अधिकार अनुरोध: अधिकार अनुरोध को स्पष्ट रूप से अपने उद्देश्य और सीमा को स्पष्ट करना चाहिए, अत्यधिक प्राधिकरण से बचने के लिए।
    • ऑपरेशन विज़ुअलाइज़ेशन और सूचना पारदर्शिता: टूल कॉल और डेटा एक्सेस दृश्यमान और ऑडिट करने योग्य होने चाहिए, उपयोगकर्ता छिपे हुए लेबल प्रदर्शित करना चुन सकते हैं, संदर्भ की स्थिरता सुनिश्चित कर सकते हैं।
  • AI नियंत्रण और निगरानी: प्रमुख AI संचालन रिकॉर्ड करें, असामान्य पैटर्न का पता लगाएँ, टूल कॉल की आवृत्ति और मात्रा को सीमित करें।
  • स्थानीय भंडारण सुरक्षा: क्रेडेंशियल्स को सुरक्षित रूप से संग्रहीत करें, संवेदनशील उपयोगकर्ता डेटा को अलग करें।
  • एप्लिकेशन सुरक्षा और क्लाइंट प्रमाणीकरण और प्राधिकरण: एप्लिकेशन की अखंडता को सत्यापित करें, प्रमाणीकरण को लागू करें, OAuth जैसे प्रोटोकॉल को सुरक्षित रूप से लागू करें।
  • MCP टूल और सर्वर प्रबंधन: टूल की प्रामाणिकता और अखंडता को सत्यापित करें, सुरक्षित अपडेट, नामकरण संघर्ष और दुर्भावनापूर्ण व्यवहार को रोकें, विश्वसनीय सर्वर निर्देशिका बनाए रखें, संस्करण नियंत्रण लागू करें आदि।
  • शक्तिशाली प्रॉम्प्ट सुरक्षा तंत्र:
    • प्रॉम्प्ट इंजेक्शन रक्षा: प्रॉम्प्ट इंजेक्शन हमलों को रोकने के लिए बहु-स्तरीय सुरक्षा उपाय लागू करें।
    • दुर्भावनापूर्ण निर्देशों का पता लगाना: संभावित दुर्भावनापूर्ण उपयोगकर्ता निर्देशों का पता लगाना और रोकना, जिसमें प्रीलोड किए गए दुर्भावनापूर्ण प्रॉम्प्ट और तृतीय-पक्ष MCP सर्वर द्वारा प्रदान किए गए उपकरणों में एम्बेडेड हानिकारक निर्देश शामिल हैं।
    • सिस्टम प्रॉम्प्ट सुरक्षा और संवेदनशील डेटा फ़िल्टरिंग: सिस्टम प्रॉम्प्ट को छेड़छाड़ से बचाना, प्रॉम्प्ट और संदर्भ से संवेदनशील व्यक्तिगत डेटा को फ़िल्टर करना।
    • संदर्भ अलगाव और प्रॉम्प्ट टेम्पलेट: यह सुनिश्चित करना कि विभिन्न स्रोतों के संदर्भ एक दूसरे से अलग हैं, सुरक्षित प्रॉम्प्ट टेम्पलेट का उपयोग करना।
    • टूल विवरण सत्यापन और प्रॉम्प्ट संगति सत्यापन
    • ऐतिहासिक संदर्भ प्रबंधन: डेटा संचय और सूचना रिसाव को रोकने के लिए, ऐतिहासिक संदर्भ को स्पष्ट रूप से साफ़ करने के लिए तंत्र।

🛠️ कॉन्फ़िगरेशन विधि और कॉन्फ़िगरेशन प्रक्रिया: अपने MCP अनुप्रयोग में सुरक्षा को एकीकृत करना

इस चेकलिस्ट को "कॉन्फ़िगर" करने के बजाय, यह डेवलपर्स को अपने MCP अनुप्रयोगों को कॉन्फ़िगर और मजबूत करने के लिए इस चेकलिस्ट में दिए गए प्रत्येक सुरक्षा बिंदु का उल्लेख करना चाहिए। यह एक विस्तृत स्वास्थ्य रिपोर्ट प्राप्त करने जैसा है, आपको रिपोर्ट में दिए गए संकेतकों और सुझावों के अनुसार अपने "शरीर" को ठीक करने और उसकी रक्षा करने की आवश्यकता है।

विशिष्ट "कॉन्फ़िगरेशन प्रक्रिया" को निम्नलिखित चरणों के रूप में समझा जा सकता है:

  1. सूची को ध्यान से पढ़ें: डेवलपर्स को सूची में सूचीबद्ध प्रत्येक सुरक्षा बिंदु और इसकी महत्व रेटिंग (अनुशंसित, अत्यधिक अनुशंसित, आवश्यक) को ध्यान से पढ़ना और समझना चाहिए।
  2. जोखिम मूल्यांकन: अपने MCP अनुप्रयोग परिदृश्य और शामिल संवेदनशील कार्यों (जैसे कि क्या इसमें क्रिप्टोकरेंसी लेनदेन शामिल हैं, क्या उपयोगकर्ता गोपनीयता डेटा तक पहुँच की आवश्यकता है, आदि) के लिए, मूल्यांकन करें कि कौन से सुरक्षा बिंदु वर्तमान में सबसे अधिक ध्यान देने और कार्यान्वित करने की आवश्यकता हैं।
  3. सुरक्षा नीति तैयार करें