कृत्रिम बुद्धिमत्ता उपकरणों के तेजी से प्रसार के साथ, उनकी सुरक्षा सुनिश्चित करना महत्वपूर्ण हो गया है। यह सुरक्षा जाँच सूची डेवलपर्स को मॉडल संदर्भ प्रोटोकॉल (MCP) से जुड़े संभावित जोखिमों की पहचान और उन्हें कम करने में मदद करने के लिए डिज़ाइन की गई है, MCP बड़े भाषा मॉडल (LLM) को बाहरी उपकरणों और डेटा स्रोतों से जोड़ने वाला एक महत्वपूर्ण पुल बन गया है।
पृष्ठभूमि
यह सुरक्षा जाँच सूची @SlowMist_Team द्वारा लिखी और अनुरक्षित है, जिसका उद्देश्य ब्लॉकचेन और कृत्रिम बुद्धिमत्ता पारिस्थितिकी तंत्र की सुरक्षा को बढ़ाना है। FENZ.AI के इस सूची में बहुमूल्य योगदान के लिए धन्यवाद।
रूपरेखा
2024 के अंत में जारी होने के बाद से, MCP का व्यापक रूप से Claude Desktop, Cursor जैसे मुख्यधारा के AI अनुप्रयोगों में उपयोग किया गया है। हालाँकि, MCP के तेजी से प्रसार ने नई सुरक्षा चुनौतियाँ भी पेश की हैं। वर्तमान MCP आर्किटेक्चर में Host (स्थानीय रूप से चलने वाला AI अनुप्रयोग वातावरण), Client (सर्वर के साथ संचार और उपकरण कॉल के लिए जिम्मेदार घटक) और Server (MCP प्लगइन के अनुरूप सर्वर) तीन भाग शामिल हैं। उपयोगकर्ता Host के माध्यम से AI के साथ इंटरैक्ट करते हैं, Client उपयोगकर्ता अनुरोध को पार्स करता है और इसे MCP Server को अग्रेषित करता है, उपकरण कॉल या संसाधन एक्सेस निष्पादित करता है। मल्टी-इंस्टेंस, मल्टी-कंपोनेंट सहयोगात्मक संचालन परिदृश्यों में, यह आर्किटेक्चर कई सुरक्षा जोखिमों को उजागर करता है, खासकर जब इसमें क्रिप्टोकरेंसी लेनदेन या LLM कस्टम प्लगइन अनुकूलन जैसे संवेदनशील परिदृश्य शामिल हों, तो जोखिम अधिक प्रमुख हो जाता है, जिसे प्रबंधित करने के लिए उचित सुरक्षा उपायों की आवश्यकता होती है।
इसलिए, एक व्यापक MCP सुरक्षा जाँच सूची तैयार करना और उसका पालन करना महत्वपूर्ण है। इस सूची में उपयोगकर्ता इंटरैक्शन इंटरफ़ेस, क्लाइंट घटक, सेवा प्लगइन, मल्टी-MCP सहयोग तंत्र और विशिष्ट क्षेत्रों (जैसे क्रिप्टोकरेंसी परिदृश्य) के सुरक्षा मुख्य बिंदु शामिल हैं, जिसका उद्देश्य डेवलपर्स को संभावित जोखिमों की व्यवस्थित रूप से पहचान करने और समय पर उन्हें रोकने में मदद करना है। इन सुरक्षा उपायों को लागू करके, MCP सिस्टम की समग्र स्थिरता और नियंत्रण क्षमता को प्रभावी ढंग से बढ़ाया जा सकता है, यह सुनिश्चित करते हुए कि AI अनुप्रयोगों का तेजी से विकास होने के साथ-साथ सुरक्षा भी सिंक्रनाइज़ रूप से सुनिश्चित हो।
कैसे उपयोग करें
यह जाँच सूची MCP परियोजनाओं के ऑडिट में आने वाले संभावित जोखिम बिंदुओं पर आधारित है, जिसका उद्देश्य डेवलपर्स को MCP कार्यान्वयन की सुरक्षा सुनिश्चित करने में मदद करना है। हम वस्तुओं के महत्व को दर्शाने के लिए 3 स्तरों की प्राथमिकता का उपयोग करते हैं:
- 🟢️ एक अनुशंसित आइटम को दर्शाता है, लेकिन विशिष्ट परिस्थितियों में इसे छोड़ा जा सकता है।
- 🔶 एक दृढ़ता से अनुशंसित आइटम को दर्शाता है, लेकिन विशेष मामलों में इसे छोड़ा जा सकता है, छोड़ने से सुरक्षा पर नकारात्मक प्रभाव पड़ सकता है।
- 🟥️ एक ऐसे आइटम को दर्शाता है जिसे किसी भी परिस्थिति में नहीं छोड़ा जा सकता है, इन तत्वों को हटाने से सिस्टम विफलता या सुरक्षा भेद्यता हो सकती है।
MCP सर्वर (MCP प्लगइन) सुरक्षा
MCP सेवा एक बाहरी सेवा है जो AI कॉल के लिए उपकरण, संसाधन और सुविधाएँ प्रदान करती है। इसमें आम तौर पर संसाधन, उपकरण और संकेत शामिल होते हैं। MCP सर्वर की सुरक्षा सुनिश्चित करने के लिए यहां कुछ बातों पर ध्यान दिया गया है:
एपीआई सुरक्षा
- इनपुट सत्यापन: 🟥️ सभी एपीआई इनपुट को सख्ती से सत्यापित करें, इंजेक्शन हमलों और अवैध मापदंडों को रोकें। इसमें डेटा प्रकार, लंबाई और प्रारूप को सत्यापित करना और इनपुट को साफ़ और एस्केप करना शामिल है।
- एपीआई दर सीमा: 🔶 दुरुपयोग और हमलों को रोकने के लिए एपीआई कॉल दर सीमा लागू करें। यह दुर्भावनापूर्ण उपयोगकर्ताओं को बड़ी संख्या में अनुरोध भेजकर सर्वर को अभिभूत करने से रोक सकता है।
- आउटपुट एन्कोडिंग: 🔶 क्रॉस-साइट स्क्रिप्टिंग (XSS) हमलों को रोकने के लिए एपीआई आउटपुट को सही ढंग से एन्कोड करें। इसमें HTML, जावास्क्रिप्ट और URL जैसे आउटपुट को एन्कोड करना शामिल है।
सर्वर प्रमाणीकरण और प्राधिकरण
- पहुंच नियंत्रण: 🟥️ संसाधन पहुंच को प्रतिबंधित करने के लिए भूमिका-आधारित पहुंच नियंत्रण लागू करें, न्यूनतम विशेषाधिकारों के सिद्धांत को लागू करें। केवल अधिकृत उपयोगकर्ता ही विशिष्ट संसाधनों तक पहुंच सकते हैं।
- क्रेडेंशियल प्रबंधन: 🟥️ सेवा क्रेडेंशियल्स को सुरक्षित रूप से प्रबंधित और संग्रहीत करें, हार्ड कोडिंग से बचें, कुंजी प्रबंधन सेवाओं का उपयोग करें। इसमें क्रेडेंशियल्स को संग्रहीत करने के लिए एन्क्रिप्शन का उपयोग करना और समय-समय पर क्रेडेंशियल्स को घुमाना शामिल है।
- बाहरी सेवा प्रमाणीकरण: 🟥️ तृतीय-पक्ष सेवाओं को प्रमाणित करने के लिए सुरक्षित तरीकों का उपयोग करें। इसमें OAuth 2.0 या SAML जैसे सुरक्षित प्रोटोकॉल का उपयोग करना शामिल है।
- न्यूनतम विशेषाधिकार: 🔶 सेवा प्रक्रियाएं न्यूनतम आवश्यक विशेषाधिकारों के साथ चलती हैं, संभावित हमले की सतह और विशेषाधिकार वृद्धि जोखिम को कम करती हैं। इसका मतलब है कि सेवा के पास केवल अपने कार्यों को करने के लिए आवश्यक विशेषाधिकार होने चाहिए।
- एपीआई कुंजी रोटेशन: 🔶 समय-समय पर एपीआई कुंजियों और सेवा क्रेडेंशियल्स को स्वचालित रूप से घुमाएं, कुंजी की वैधता को सीमित करें। इससे कुंजी रिसाव का खतरा कम हो सकता है।
- सेवा प्रमाणीकरण: 🔶 उपकरण को सेवा पहचान को सत्यापित करने के लिए एक तंत्र प्रदान करें, ताकि ग्राहक सुरक्षित उपयोग के लिए सत्यापित कर सकें। इससे क्लाइंट को यह सत्यापित करने में मदद मिल सकती है कि वे एक विश्वसनीय सेवा के साथ संचार कर रहे हैं।
पृष्ठभूमि दृढ़ता नियंत्रण
- जीवनचक्र प्रबंधन: 🟥️ सख्त MCP प्लगइन जीवनचक्र प्रबंधन लागू करें, क्लाइंट के साथ सिंक्रनाइज़ करें। अब आवश्यकता न होने पर प्लगइन को सही ढंग से शुरू और बंद किया जाना चाहिए।
- शटडाउन सफाई: 🟥️ क्लाइंट बंद होने पर सभी MCP पृष्ठभूमि प्रक्रियाओं को जबरन साफ़ करें। यह दुर्भावनापूर्ण प्लगइन्स को क्लाइंट बंद होने के बाद भी चलने से रोक सकता है।
- स्वास्थ्य जांच तंत्र: 🔶 MCP प्लगइन स्थिति की समय-समय पर जांच करें, असामान्य दृढ़ता की पहचान करें। इससे उन प्लगइन्स की पहचान करने में मदद मिल सकती है जो ठीक से काम नहीं कर रहे हैं।
- पृष्ठभूमि गतिविधि निगरानी: 🔶 सभी MCP पृष्ठभूमि गतिविधि की निगरानी और रिकॉर्ड करें। इससे दुर्भावनापूर्ण गतिविधि की पहचान करने में मदद मिल सकती है।
- गतिविधि प्रतिबंध: 🔶 MCP प्लगइन द्वारा पृष्ठभूमि में की जा सकने वाली क्रियाओं के प्रकार और अवधि को सीमित करें। इससे दुर्भावनापूर्ण प्लगइन्स द्वारा होने वाले नुकसान को कम किया जा सकता है।
परिनियोजन और रनटाइम सुरक्षा
- पृथक वातावरण: 🟥️ सेवा एक पृथक वातावरण (कंटेनर, VM, सैंडबॉक्स) में चलती है, पलायन को रोकने, पूर्व-पश्चिम आंदोलन हमलों को रोकने के लिए। यह दुर्भावनापूर्ण सेवाओं को अन्य सेवाओं या सिस्टम को प्रभावित करने से रोक सकता है।
- कंटेनर सुरक्षा: 🟥️ मजबूत कंटेनर सुरक्षा कॉन्फ़िगरेशन और गैर-रूट उपयोगकर्ता का उपयोग करके चलाएं, अपरिवर्तनीय बुनियादी ढांचे को लागू करें, रनटाइम सुरक्षा। इससे कंटेनर की सुरक्षा बढ़ सकती है।
- सुरक्षित बूट: 🔶 सेवा बूट प्रक्रिया की अखंडता को सत्यापित करें, सुरक्षित बूट चेन और अखंडता जांच लागू करें। यह दुर्भावनापूर्ण सेवाओं को बूट के समय इंजेक्ट होने से रोक सकता है।
- पर्यावरण चर सुरक्षा: 🔶 संवेदनशील पर्यावरण चर सुरक्षित हैं, लॉग में लीक नहीं होते हैं। यह दुर्भावनापूर्ण उपयोगकर्ताओं को संवेदनशील जानकारी तक पहुंचने से रोक सकता है।
- संसाधन सीमाएं: 🔶 संसाधन उपयोग सीमाएं लागू करें, जब बड़े मॉडल त्रुटि करते हैं तो बड़ी संख्या में दोहराए गए कॉलों को रोकने के लिए। यह दुर्भावनापूर्ण सेवाओं को सिस्टम संसाधनों को समाप्त करने से रोक सकता है।
कोड और डेटा अखंडता
- अखंडता सत्यापन तंत्र: 🟥️ डिजिटल हस्ताक्षर, हैश सत्यापन जैसे तंत्र का उपयोग करके सुनिश्चित करें कि कोड से छेड़छाड़ नहीं की गई है। यह दुर्भावनापूर्ण उपयोगकर्ताओं को कोड को संशोधित करने से रोक सकता है।
- दूरस्थ सत्यापन: 🔶 दूरस्थ रूप से कोड अखंडता को सत्यापित करने के लिए एक तंत्र का समर्थन करें। यह दूरस्थ उपयोगकर्ताओं को यह सत्यापित करने की अनुमति देता है कि कोड से छेड़छाड़ की गई है या नहीं।
- कोड अस्पष्टता और सुदृढ़ीकरण: 🟢️ रिवर्स इंजीनियरिंग की कठिनाई को बढ़ाने के लिए कोड अस्पष्टता और सुदृढ़ीकरण तकनीकों को लागू करें। इससे दुर्भावनापूर्ण उपयोगकर्ताओं के लिए कोड को समझना और संशोधित करना और अधिक कठिन हो सकता है।
आपूर्ति श्रृंखला सुरक्षा
- निर्भरता प्रबंधन: 🟥️ तृतीय-पक्ष निर्भरताओं को सुरक्षित रूप से प्रबंधित करें। इसमें निर्भरताओं को ट्रैक करना, यह सुनिश्चित करना कि वे अद्यतित हैं, और उनमें मौजूद कमजोरियों के लिए उन्हें स्कैन करना शामिल है।
- पैकेज अखंडता: 🟥️ पैकेज की अखंडता और प्रामाणिकता को सत्यापित करें। यह दुर्भावनापूर्ण उपयोगकर्ताओं को दुर्भावनापूर्ण पैकेज इंजेक्ट करने से रोक सकता है।
- स्रोत सत्यापन: 🔶 सभी कोड और निर्भरताओं के स्रोत को सत्यापित करें। यह सुनिश्चित करने में मदद कर सकता है कि कोड एक विश्वसनीय स्रोत से आया है।
- बिल्ड सुरक्षा: 🔶 सुनिश्चित करें कि बिल्ड प्रक्रिया सुरक्षित है। इसमें सुरक्षित बिल्ड टूल का उपयोग करना और यह सुनिश्चित करना शामिल है कि बिल्ड वातावरण सुरक्षित है।
निगरानी और लॉगिंग
- असंगति का पता लगाना: 🟥️ असामान्य गतिविधि पैटर्न का पता लगाएं और उनकी रिपोर्ट करें। यह दुर्भावनापूर्ण गतिविधि की पहचान करने में मदद कर सकता है।
- विस्तृत लॉगिंग: 🟥️ सभी सेवा गतिविधि और सुरक्षा घटनाओं को लॉग करें। यह सुरक्षा घटनाओं की जांच करने में मदद कर सकता है।
- सुरक्षा घटना चेतावनी: 🟥️ महत्वपूर्ण सुरक्षा घटनाओं के लिए रीयल-टाइम अलर्ट कॉन्फ़िगर करें। यह सुरक्षा घटनाओं पर तुरंत प्रतिक्रिया करने में मदद कर सकता है।
- केन्द्रीकृत लॉग प्रबंधन: 🔶 लॉग को केन्द्रीकृत रूप से एकत्र और विश्लेषण करें। यह सुरक्षा घटनाओं का अधिक व्यापक दृश्य प्रदान कर सकता है।
- लॉग अखंडता: 🔶 लॉग अखंडता सुनिश्चित करें, छेड़छाड़ को रोकें। यह दुर्भावनापूर्ण उपयोगकर्ताओं को लॉग को हटाने या संशोधित करने से रोक सकता है।
- ऑडिट क्षमता: 🔶 विस्तृत ऑडिट और घटना जांच का समर्थन करें। यह सुरक्षा घटनाओं के कारण का निर्धारण करने में मदद कर सकता है।
कॉलिंग वातावरण अलगाव
- MCP के बीच अलगाव: 🟥️ सुनिश्चित करें कि कई MCP सेवाओं के बीच संचालन अलग-थलग है। यह दुर्भावनापूर्ण MCP सेवा को अन्य MCP सेवाओं को प्रभावित करने से रोक सकता है।
- संसाधन पहुंच नियंत्रण: 🟥️ प्रत्येक MCP सेवा को स्पष्ट संसाधन पहुंच अनुमति सीमाएं आवंटित करें। यह दुर्भावनापूर्ण MCP सेवा द्वारा एक्सेस किए जा सकने वाले संसाधनों को सीमित कर सकता है।
- उपकरण अनुमति पृथक्करण: 🔶 विभिन्न क्षेत्रों के उपकरण विभिन्न अनुमति सेटों का उपयोग करते हैं। यह दुर्भावनापूर्ण उपकरणों द्वारा होने वाले नुकसान को कम कर सकता है।
प्लेटफ़ॉर्म संगतता और सुरक्षा
- सिस्टम संसाधन अलगाव: 🟥️ विभिन्न ऑपरेटिंग सिस्टम विशेषताओं के अनुसार उचित संसाधन अलगाव नीतियां लागू करें। यह दुर्भावनापूर्ण सेवाओं को अन्य सेवाओं या सिस्टम को प्रभावित करने से रोक सकता है।
- क्रॉस-प्लेटफ़ॉर्म संगतता परीक्षण: 🔶 विभिन्न ऑपरेटिंग सिस्टम और क्लाइंट पर MCP सेवा के सुरक्षा व्यवहार की स्थिरता का परीक्षण करें। यह सुनिश्चित कर सकता है कि सेवा सभी प्लेटफ़ॉर्म पर सुरक्षित है।
- प्लेटफ़ॉर्म विशिष्ट जोखिम मूल्यांकन: 🔶 विशिष्ट प्लेटफ़ॉर्म के अद्वितीय सुरक्षा जोखिमों और शमन उपायों का आकलन करें। यह प्लेटफ़ॉर्म विशिष्ट सुरक्षा जोखिमों की पहचान करने और उन्हें कम करने में मदद कर सकता है।
- क्लाइंट अंतर प्रबंधन: 🔶 सुनिश्चित करें कि सुरक्षा नियंत्रण विभिन्न क्लाइंट कार्यान्वयन के अंतरों को अनुकूलित कर सकते हैं। यह सुनिश्चित कर सकता है कि सेवा सभी क्लाइंट के साथ सुरक्षित है।
डेटा सुरक्षा और गोपनीयता
- डेटा न्यूनीकरण: 🟥️ केवल आवश्यक डेटा एकत्र और संसाधित करें। यह डेटा लीक के जोखिम को कम कर सकता है।
- डेटा एन्क्रिप्शन: 🟥️ संग्रहीत और संचरण में संवेदनशील डेटा एन्क्रिप्ट किया गया है। यह दुर्भावनापूर्ण उपयोगकर्ताओं को संवेदनशील जानकारी तक पहुंचने से रोक सकता है।
- डेटा अलगाव: 🟥️ विभिन्न उपयोगकर्ताओं के डेटा को प्रभावी ढंग से अलग किया जाता है। यह दुर्भावनापूर्ण उपयोगकर्ताओं को अन्य उपयोगकर्ताओं के डेटा तक पहुंचने से रोक सकता है।
- डेटा एक्सेस नियंत्रण: 🟥️ सख्त डेटा एक्सेस नियंत्रण लागू करें। यह डेटा तक पहुंच को सीमित कर सकता है।
- संवेदनशील डेटा पहचान: 🟥️ संवेदनशील डेटा को स्वचालित रूप से पहचानें और विशेष रूप से संसाधित करें। यह संवेदनशील डेटा लीक को रोकने में मदद कर सकता है।
संसाधन सुरक्षा
- संसाधन पहुंच नियंत्रण: 🟥️ बारीक संसाधन पहुंच नियंत्रण लागू करें। यह विशिष्ट संसाधनों तक पहुंच को सीमित कर सकता है।
- संसाधन सीमाएं: 🔶 एकल संसाधन के आकार और संख्या को सीमित करें। यह दुर्भावनापूर्ण उपयोगकर्ताओं को सिस्टम संसाधनों को समाप्त करने से रोक सकता है।
- संसाधन टेम्पलेट सुरक्षा: 🔶 सुनिश्चित करें कि संसाधन टेम्पलेट पैरामीटर सत्यापित और साफ़ किए गए हैं। यह दुर्भावनापूर्ण उपयोगकर्ताओं को दुर्भावनापूर्ण कोड इंजेक्ट करने से रोक सकता है।
- संवेदनशील संसाधन अंकन: 🔶 संवेदनशील संसाधनों को चिह्नित करें और विशेष रूप से संसाधित करें। यह संवेदनशील संसाधन लीक को रोकने में मदद कर सकता है।
उपकरण कार्यान्वयन सुरक्षा
- सुरक्षित कोडिंग अभ्यास: 🟥️ सुरक्षित कोडिंग मानकों और सर्वोत्तम प्रथाओं का पालन करें। इससे कोड में मौजूद कमजोरियों की संख्या कम हो सकती है।
- उपकरण अलगाव: 🟥️ उपकरण निष्पादन एक नियंत्रित वातावरण में है, जिससे सिस्टम स्तर पर प्रभाव नहीं पड़ता है। यह दुर्भावनापूर्ण उपकरणों को अन्य सेवाओं या सिस्टम को प्रभावित करने से रोक सकता है।
- इनपुट सत्यापन: 🟥️ क्लाइंट से आने वाले सभी इनपुट को सख्ती से सत्यापित करें। यह दुर्भावनापूर्ण उपयोगकर्ताओं को दुर्भावनापूर्ण कोड इंजेक्ट करने से रोक सकता है।
- उपकरण अनुमति नियंत्रण: 🟥️ प्रत्येक उपकरण के पास केवल कार्यों को पूरा करने के लिए आवश्यक न्यूनतम अनुमति होती है। यह दुर्भावनापूर्ण उपकरणों द्वारा होने वाले नुकसान को कम कर सकता है।
- डेटा सत्यापन: 🟥️ उपकरण द्वारा संसाधित डेटा को सत्यापित करें, इंजेक्शन और छेड़छाड़ को रोकें। यह दुर्भावनापूर्ण उपयोगकर्ताओं को दुर्भावनापूर्ण डेटा इंजेक्ट करने से रोक सकता है।
- उपकरण व्यवहार प्रतिबंध: 🟥️ उपकरण द्वारा की जा सकने वाली क्रियाओं की सीमा और प्रकार को सीमित करें। यह दुर्भावनापूर्ण उपकरणों द्वारा होने वाले नुकसान को कम कर सकता है।
- तृतीय-पक्ष इंटरफ़ेस से लौटने वाली जानकारी सुरक्षा: 🟥️ सत्यापित करें कि इंटरफ़ेस से लौटने वाली जानकारी अपेक्षित है, वापसी जानकारी को सीधे संदर्भ में नहीं डाला जा सकता है। यह दुर्भावनापूर्ण उपकरणों को तृतीय-पक्ष इंटरफ़ेस का उपयोग करने से रोक सकता है।
- त्रुटि प्रबंधन: 🔶 त्रुटियों को सुरक्षित रूप से संभालें, संवेदनशील जानकारी लीक न करें। यह दुर्भावनापूर्ण उपयोगकर्ताओं को त्रुटि जानकारी का उपयोग करने से रोक सकता है।
- नामस्थान अलगाव: 🔶 विभिन्न उपकरणों के लिए सख्त नामस्थान अलगाव लागू करें। यह उपकरणों के बीच संघर्षों को रोक सकता है।
MCP क्लाइंट/ MCP होस्ट सुरक्षा
होस्ट वह वातावरण है जो AI एप्लिकेशन और MCP क्लाइंट को चलाता है, और यह अंतिम उपयोगकर्ता के लिए AI सिस्टम के साथ इंटरैक्ट करने का प्रवेश द्वार है। क्लाइंट AI एप्लिकेशन के अंदर एक घटक है जो MCP सेवाओं के साथ संचार करने, संदर्भ को संसाधित करने, उपकरण कॉल करने और परिणाम प्रदर्शित करने के लिए जिम्मेदार है। MCP क्लाइंट और होस्ट की सुरक्षा के लिए यहां कुछ बातों पर ध्यान दिया गया है:
उपयोगकर्ता इंटरैक्शन सुरक्षा
- उपयोगकर्ता इंटरफ़ेस सुरक्षा: 🟥️ उपयोगकर्ता इंटरफ़ेस स्पष्ट रूप से AI संचालन की अनुमति सीमा और संभावित प्रभाव दिखाता है, एक सहज सुरक्षा संकेतक प्रदान करता है। यह उपयोगकर्ताओं को AI को दी जाने वाली अनुमतियों को समझने में मदद कर सकता है।
- संवेदनशील संचालन पुष्टिकरण: 🟥️ उच्च जोखिम वाले संचालन (जैसे फ़ाइल हटाना, धन हस्तांतरण) के लिए स्पष्ट उपयोगकर्ता पुष्टिकरण की आवश्यकता होती है। यह उपयोगकर्ताओं को अनजाने में उच्च जोखिम वाले संचालन करने से रोक सकता है।
- अनुमति अनुरोध पारदर्शी: 🟥️ अनुमति अनुरोध स्पष्ट रूप से उद्देश्य और दायरे को बताते हैं, उपयोगकर्ताओं को सूचित निर्णय लेने में मदद करते हैं, अत्यधिक प्राधिकरण से बचते हैं। यह उपयोगकर्ताओं को AI को दी जाने वाली अनुमतियों को समझने में मदद कर सकता है।
- संचालन दृश्यता: 🔶 उपकरण कॉल और डेटा एक्सेस उपयोगकर्ता के लिए दृश्यमान और ऑडिट करने योग्य हैं, जो विस्तृत संचालन लॉग प्रदान करते हैं। यह उपयोगकर्ताओं को यह समझने में मदद कर सकता है कि AI क्या संचालन कर रहा है।
- सूचना पारदर्शिता: 🔶 उपकरण को उपयोगकर्ताओं को यह अनुमति देनी चाहिए कि क्या डिफ़ॉल्ट रूप से छिपे हुए टैग प्रदर्शित किए जाएं, यह सुनिश्चित करते हुए कि उपयोगकर्ताओं द्वारा देखे गए और वास्तविक रूप से उत्पन्न और कॉल किए गए संदर्भ पूर्ण और सुसंगत हैं, और छिपे हुए टैग में दुर्भावनापूर्ण तर्क मौजूद होने से रोकते हैं।
- स्थिति प्रतिक्रिया: 🔶 उपयोगकर्ता वर्तमान में चल रहे MCP संचालन को स्पष्ट रूप से समझ सकता है।
AI नियंत्रण और निगरानी
- संचालन रिकॉर्ड: 🟥️ सभी महत्वपूर्ण AI संचालन और उनके परिणामों को रिकॉर्ड करें। यह सुरक्षा घटनाओं की जांच करने में मदद कर सकता है।
- विसंगति का पता लगाना: 🔶 असामान्य उपकरण कॉल पैटर्न या अनुरोध अनुक्रमों का पता लगाएं। यह दुर्भावनापूर्ण गतिविधि की पहचान करने में मदद कर सकता है।
- उपकरण कॉल सीमाएं: 🔶 उपकरण कॉल आवृत्ति और संख्या पर सीमाएं लागू करें। यह दुर्भावनापूर्ण उपयोगकर्ताओं को उपकरणों का दुरुपयोग करने से रोक सकता है।
स्थानीय भंडारण सुरक्षा
- क्रेडेंशियल सुरक्षित भंडारण: 🟥️ महत्वपूर्ण क्रेडेंशियल्स के लिए सिस्टम कीचेन या समर्पित एन्क्रिप्टेड स्टोरेज का उपयोग करके प्रमाणीकरण क्रेडेंशियल्स की सुरक्षा करें, अनधिकृत पहुंच को रोकें। यह दुर्भावनापूर्ण उपयोगकर्ताओं को क्रेडेंशियल्स तक पहुंचने से रोक सकता है।
- संवेदनशील डेटा अलगाव: 🔶 संवेदनशील उपयोगकर्ता डेटा को सामान्य डेटा से अलग से संग्रहीत और संसाधित करने के लिए डेटा अलगाव तंत्र लागू करें। यह दुर्भावनापूर्ण उपयोगकर्ताओं को संवेदनशील डेटा तक पहुंचने से रोक सकता है।
एप्लिकेशन सुरक्षा
- एप्लिकेशन अखंडता: 🟥️ एप्लिकेशन और MCP प्लगइन की अखंडता को सत्यापित करें, छेड़छाड़ को रोकें। यह दुर्भावनापूर्ण उपयोगकर्ताओं को एप्लिकेशन को संशोधित करने से रोक सकता है।
- अपडेट सत्यापन: 🔶 होस्ट एप्लिकेशन अपडेट डिजिटल हस्ताक्षर सत्यापन से गुजरता है। यह सुनिश्चित कर सकता है कि अपडेट एक विश्वसनीय स्रोत से आया है।
- एप्लिकेशन सैंडबॉक्स: 🟢️ सिस्टम एक्सेस को प्रतिबंधित करने के लिए एप्लिकेशन को सैंडबॉक्स वातावरण में चलाने का प्रयास करें। यह दुर्भावनापूर्ण एप्लिकेशन द्वारा होने वाले नुकसान को कम कर सकता है।
क्लाइंट प्रमाणीकरण और प्राधिकरण
- बल प्रमाणीकरण: 🟥️ किसी भी महत्वपूर्ण MCP सेवा के साथ संवाद करने से पहले प्रमाणीकरण को लागू करें, अनाम पहुंच को रोकें। यह अनधिकृत उपयोगकर्ताओं को सेवाओं तक पहुंचने से रोक सकता है।
- OAuth कार्यान्वयन: 🔶 सर्वोत्तम प्रथाओं और सुरक्षा मानकों का पालन करते हुए, OAuth 2.1 या उच्चतर प्रक्रिया को सही ढंग से लागू करें। यह सुनिश्चित कर सकता है कि प्रमाणीकरण सुरक्षित है।
- राज्य पैरामीटर: 🔶 आंशिक वेब क्लाइंट के लिए CSRF हमलों को रोकने के लिए राज्य पैरामीटर लागू करें, प्रत्येक अनुरोध के लिए एक अद्वितीय यादृच्छिक मान का उपयोग करें। यह क्रॉस-साइट अनुरोध जालसाजी (CSRF) हमलों को रोक सकता है।
MCP उपकरण और सर्वर प्रबंधन
- MCP उपकरण सत्यापन: 🟥️ पंजीकृत उपकरण की प्रामाणिकता और अखंडता को सत्यापित करें। यह दुर्भावनापूर्ण उपकरणों को पंजीकृत होने से रोक सकता है।
- सुरक्षित अपडेट: 🟥️ MCP क्लाइंट समय-समय पर सुरक्षा अपडेट की जांच और लागू करता है, यह सत्यापित करता है कि अपडेट किए गए उपकरण में दुर्भावनापूर्ण विवरण शामिल है या नहीं। यह सुनिश्चित कर सकता है कि उपकरण अद्यतित है, और इसमें दुर्भावनापूर्ण कोड शामिल नहीं है।
- फ़ंक्शन नाम सत्यापन: 🟥️ पंजीकृत उपकरण से पहले नाम टकराव और संभावित दुर्भावनापूर्ण ओवरले की जाँच करें। यह दुर्भावनापूर्ण उपकरणों को मौजूदा उपकरणों को ओवरराइड करने से रोक सकता है।
- दुर्भावनापूर्ण MCP पहचान: 🟥️ संभावित दुर्भावनापूर्ण MCP के व्यवहार पैटर्न की निगरानी और पहचान करें। यह दुर्भावनापूर्ण MCP की पहचान करने में मदद कर सकता है।
- MCP उपकरण नामकरण नियंत्रण: 🔶 नाम टकराव को रोकने के लिए नामस्थान या अद्वितीय पहचानकर्ताओं का उपयोग करें। यह उपकरणों के बीच संघर्षों को रोक सकता है।
- सेवा निर्देशिका: 🔶 विश्वसनीय MCP सेवाओं और उपकरणों की अधिकृत निर्देशिका बनाए रखें। यह उपयोगकर्ताओं को विश्वसनीय सेवाएं खोजने में मदद कर सकता है।
- संघर्ष समाधान: 🔶 समान नाम वाले उपकरणों के संघर्ष को हल करने के लिए स्पष्ट नियम मौजूद हैं।
- डोमेन अलगाव: 🔶 विभिन्न डोमेन के उपकरण एक दूसरे से अलग-थलग हैं, जो क्रॉस प्रभाव को रोकते हैं।
- प्राथमिकता तंत्र: 🔶 दुर्भावनापूर्ण ओवरराइडिंग से बचने के लिए स्पष्ट फ़ंक्शन प्राथमिकता नियम स्थापित करें।
- संस्करण नियंत्रण: 🔶 परिवर्तन का पता लगाने के लिए फ़ंक्शन और उपकरणों पर संस्करण नियंत्रण लागू करें।
- उपकरण पंजीकरण और रद्द करने का तंत्र: 🔶 उपकरणों के पंजीकरण और रद्द करने की प्रक्रिया को स्पष्ट करें, और विरासत उपकरणों के सुरक्षा जोखिमों को रोकें।
- संघर्ष पहचान तंत्र: 🔶 मल्टी MCP वातावरण में फ़ंक्शन और संसाधन संघर्षों का पता लगाएं और उन्हें हल करें।
- उपकरण वर्गीकरण: 🟢️ संवेदनशीलता और जोखिम स्तर के अनुसार उपकरणों को वर्गीकृत करें।
संकेत शब्द सुरक्षा
- संकेत शब्द इंजेक्शन सुरक्षा: 🟥️ महत्वपूर्ण निष्पादन के लिए मानव सत्यापन सहित, संकेत शब्द इंजेक्शन हमलों को रोकने के लिए बहु-स्तरीय सुरक्षा उपाय लागू करें।
- दुर्भावनापूर्ण निर्देश पहचान: 🟥️ संभावित दुर्भावनापूर्ण उपयोगकर्ता निर्देशों का पता लगाने और उन्हें अवरुद्ध करने के लिए एक तंत्र स्थापित करें, सिस्टम को हेरफेर होने से रोकें, जैसे कि स्थानीय प्रारंभिकरण के समय पूर्व-लोड किए गए दुर्भावनापूर्ण निर्देशों का पता लगाना और उन्हें अवरुद्ध करना, और तृतीय-पक्ष MCP सर्वर से दुर्भावनापूर्ण उपकरणों में छिपे हुए हानिकारक निर्देश शामिल हैं।
- सिस्टम संकेत सुरक्षा: 🟥️ सिस्टम संकेत उपयोगकर्ता इनपुट से स्पष्ट रूप से अलग है, जिससे छेड़छाड़ को रोका जा सकता है।
- संवेदनशील डेटा फ़िल्टरिंग: 🟥️ संकेतों और संदर्भ से संवेदनशील व्यक्तिगत डेटा को फ़िल्टर करें।
- संदर्भ अलगाव: 🔶 सुनिश्चित करें कि विभिन्न स्रोतों से संदर्भ सामग्री एक दूसरे से अलग-थलग है, जो संदर्भ प्रदूषण और जानकारी लीक को रोकता है।
- संकेत शब्द टेम्पलेट: 🔶 इंजेक्शन जोखिम को कम करने के लिए सुरक्षित संकेत शब्द टेम्पलेट का उपयोग करें।
- उपकरण विवरण सत्यापन: 🔶 उपकरण विवरण में संभावित दुर्भावनापूर्ण निर्देशों की जाँच करें।
- संकेत शब्द स्थिरता सत्यापन: 🔶 सुनिश्चित करें कि समान संकेत शब्द विभिन्न वातावरणों में प्रत्याशित रूप से सुसंगत परिणाम उत्पन्न करते हैं।
- ऐतिहासिक संदर्भ प्रबंधन: 🔶 पुराने डेटा संचय के कारण होने वाली जानकारी लीक जोखिम को रोकने के लिए ऐतिहासिक संदर्भ के सुरक्षित समाशोधन के लिए एक स्पष्ट तंत्र।
लॉग और ऑडिट
- क्लाइंट लॉगिंग: 🟥️ MCP सेवाओं, उपकरण कॉल और प्राधिकरण गतिविधि के साथ सभी इंटरैक्शन को रिकॉर्ड करें।
- सुरक्षा घटना रिकॉर्ड: 🟥️ प्राधिकरण विफलताओं सहित सभी सुरक्षा से संबंधित घटनाओं को रिकॉर्ड करें।
- असंगति चेतावनी: 🔶 असामान्य गतिविधि पैटर्न का पता लगाएं और चेतावनी दें।
सर्वर सत्यापन और संचार सुरक्षा
- सर्वर प्रमाणीकरण: 🟥️ दुर्भावनापूर्ण सर्वरों से कनेक्शन को रोकने के लिए MCP सर्वर पहचान को सत्यापित करें, प्रमाण पत्र फिक्सिंग लागू करें।
- प्रमाण पत्र सत्यापन: 🟥️ मैन-इन-द-मिडल हमलों को रोकने के लिए दूरस्थ सर्वरों पर TLS प्रमाण पत्र को सख्ती से सत्यापित करें, प्रमाण पत्र श्रृंखला की अखंडता की जाँच करें।
- संचार एन्क्रिप्शन: 🟥️ सभी क्लाइंट-सर्वर संचार TLS 1.2+ एन्क्रिप्शन का उपयोग करते हैं, कमजोर एन्क्रिप्शन सूट को अक्षम करें।
- सुरक्षित प्रोटोकॉल कॉन्फ़िगरेशन: 🔶 सुरक्षित TLS पैरामीटर कॉन्फ़िगर करें, समय-समय पर एन्क्रिप्शन एल्गोरिदम और प्रोटोकॉल का ऑडिट और अपडेट करें।
अनुमति टोकन भंडारण और प्रबंधन
- अनुमति दायरे सीमा: 🟥️ टोकन के अनुमति दायरे को सख्ती से सीमित करें, न्यूनतम अनुमति सिद्धांत लागू करें।
स्वचालित अनुमोदन नियंत्रण
- स्वचालित अनुमोदन सीमा: 🟥️ उन उपकरणों और कार्यों के दायरे को सख्ती से नियंत्रित करें जिन्हें स्वचालित रूप से अनुमोदित किया जा सकता है।
- श्वेत सूची प्रबंधन: 🔶 स्वचालित रूप से अनुमोदित उपकरणों के लिए एक श्वेत सूची तंत्र को स्पष्ट रूप से परिभाषित करें।
- गतिशील जोखिम मूल्यांकन: 🔶 संदर्भ के अनुसार स्वचालित अनुमोदन नीतियों को गतिशील रूप से समायोजित करें।
- अनुमोदन प्रक्रिया ऑडिट: 🔶 सभी स्वचालित अनुमोदन निर्णयों को रिकॉर्ड और ऑडिट करें।
नमूना सुरक्षा
- संदर्भ समावेश नियंत्रण: 🟥️ नमूना अनुरोधों में शामिल संदर्भ दायरे को सख्ती से नियंत्रित करें।
- संवेदनशील डेटा फ़िल्टरिंग: 🟥️ नमूना अनुरोधों और प्रतिक्रियाओं से संवेदनशील डेटा को फ़िल्टर करें।
- नमूना अनुरोध सत्यापन: 🔶 सभी नमूना अनुरोध पैरामीटर और सामग्री को सत्यापित करें।
- उपयोगकर्ता नियंत्रण: 🔶 सुनिश्चित करें कि उपयोगकर्ताओं के पास नमूना अनुरोधों और परिणामों पर स्पष्ट नियंत्रण है।
- मॉडल वरीयता सुरक्षा: 🔶 मॉडल वरीयता जानकारी को सुरक्षित रूप से संभालें, दुरुपयोग को रोकें।
- परिणाम सत्यापन: 🔶 सत्यापित करें कि नमूना परिणाम सुरक्षा मानकों का पालन करते हैं।
विभिन्न LLM पर MCP का अनुकूलन और कॉल सुरक्षा
विभिन्न LLM बैकएंड के लिए MCP की कॉल प्राथमिकताएं और निष्पादन तर्क भिन्न हो सकते हैं, इसलिए LLM और MCP के बीच संयोजन सुरक्षा पर ध्यान देना आवश्यक है।
LLM सुरक्षित निष्पादन
- प्राथमिकता फ़ंक्शन निष्पादन: 🟥️ सुनिश्चित करें कि LLM सही प्लगइन के फ़ंक्शन को प्राथमिकता दे सकता है।
- दुर्भावनापूर्ण संकेत सुरक्षा: 🟥️ LLM दुर्भावनापूर्ण परिदृश्यों में इंजेक्ट किए गए स्मरणीय शब्दों द्वारा आवश्यक व्यवहार की पहचान और सुरक्षा करने में सक्षम है।
- सुरक्षित कॉल: 🟥️ LLM सही तरीके से और सुरक्षित रूप से संबंधित MCP फ़ंक्शन को कॉल करने में सक्षम है।
- संवेदनशील जानकारी सुरक्षा: 🟥️ संवेदनशील जानकारी लीक होने से रोकें।
मल्टीमॉडल सुरक्षा
- मल्टीमॉडल सामग्री फ़िल्टरिंग: 🟥️ मल्टीमॉडल सामग्री में हानिकारक या संवेदनशील जानकारी को फ़िल्टर करें (जैसे चित्रों में दुर्भावनापूर्ण संकेत शब्द)।
मल्टी MCP परिदृश्य सुरक्षा
एक ही समय में कई MCP सर्वरों को सक्षम करते समय, आधिकारिक ऑडिट की कमी के कारण, उपयोगकर्ता दुर्भावनापूर्ण MCP इंस्टॉल कर सकते हैं, जो समग्र सुरक्षा के लिए खतरा पैदा करता है।
- मल्टी MCP वातावरण सुरक्षा: 🟥️ मल्टी MCP वातावरण की समग्र सुरक्षा सुनिश्चित करें, और समय-समय पर इंस्टॉल किए गए MCP को स्कैन और जांचें।
- फ़ंक्शन प्राथमिकता अपहरण सुरक्षा: 🟥️ संभावित दुर्भावनापूर्ण संकेत शब्द प्रीसेट की जाँच करें, ताकि फ़ंक्शन प्राथमिकता को दुर्भावनापूर्ण रूप से अपहरण करने से रोका जा सके।
- क्रॉस MCP फ़ंक्शन कॉल नियंत्रण: 🟥️ क्रॉस MCP फ़ंक्शन कॉल को सुरक्षित रूप से नियंत्रित करें, और दुर्भावनापूर्ण MCP को संवेदनशील संचालन करने के लिए अन्य MCP को कॉल करने के लिए दुर्भावनापूर्ण संकेत शब्द वापस करने से रोकें।
क्रिप्टोकरेंसी से संबंधित MCP के विशिष्ट सुरक्षा बिंदु
क्रिप्टोकरेंसी से संबंधित MCP में आमतौर पर क्रिप्टोकरेंसी वॉलेट का प्रबंधन करने की क्षमता होती है, जिसमें उच्च जोखिम होता है।
- निजी कुंजी सुरक्षा: 🟥️ निजी कुंजी की सुरक्षा के उपायों को मजबूत करें, जैसे कि Scrypt।
- वॉलेट पीढ़ी सुरक्षा: 🟥️ स्मरणीय शब्द या वॉलेट पीढ़ी प्रक्रिया की सुरक्षा गारंटी।
- वॉलेट जानकारी गोपनीयता: 🟥️ वॉलेट जानकारी गोपनीयता की रक्षा करें, और तीसरे पक्ष के इंटरफ़ेस को वॉलेट जानकारी का अनुरोध करते समय फ़िल्टरिंग अच्छी तरह से करें।
- हस्तांतरण जानकारी पुष्टिकरण: 🟥️ श्रृंखला पर या एक्सचेंज पर हस्तांतरण हस्ताक्षर की जानकारी को पूरी तरह से प्रदर्शित करने और पुष्टि करने की आवश्यकता है।
- धन संचालन सत्यापन: 🟥️ महत्वपूर्ण धन संचालन के लिए द्वितीयक सत्यापन आवश्यक है, जैसे कि Google प्रमाणक।
- स्थानीय मॉडल गोपनीयता सुरक्षा: 🔶 गोपनीयता डेटा की सुरक्षा के लिए स्थानीय बड़े मॉडल का उपयोग करें, और तीसरे पक्ष के बड़े मॉडल विक्रेताओं को आपकी वॉलेट जानकारी और अन्य संवेदनशील जानकारी प्राप्त करने से रोकें।
- पारंपरिक वॉलेट संगतता: 🔶 पारंपरिक वॉलेट के साथ सुरक्षा संगतता, जैसे कि हस्ताक्षर संचालन आदि के लिए पारंपरिक वॉलेट का समर्थन करना।