𝗟𝗟𝗠 𝗩𝘂𝗹𝗻𝗲𝗿𝗮𝗯𝗶𝗹𝗶𝘁𝗶𝗲𝘀 𝟭𝟬𝟭
बहुतेक LLM सुरक्षा त्रुटी या फार क्लिष्ट नसतात. त्या मॉडेल्स कसे काम करतात याबद्दलच्या दोन साध्या तथ्यांतून निर्माण होतात. एकदा का तुम्हाला हे समजले की, हल्ल्यांची भीतीदायक यादी स्पष्ट होते.
तथ्य १: मॉडेल तुमच्या सूचना आणि वापरकर्त्याचा मजकूर यामध्ये फरक पाहत नाही. ते डेटाचा एक प्रवाह पाहते. कोणत्या भागावर विश्वास ठेवायचा हे ते खात्रीशीरपणे सांगू शकत नाही.
तथ्य २: टूल्स (Tools) खेळ बदलतात. जेव्हा तुम्ही मॉडेलला ईमेल, सर्च किंवा डेटाबेसचा ॲक्सेस देता, तेव्हा तुम्ही असुरक्षित मजकूर प्रवेश करण्यासाठी नवीन मार्ग तयार करता. तुम्ही केवळ बोलू शकणाऱ्या मॉडेलचे रूपांतर कृती करू शकणाऱ्या मॉडेलमध्ये करता.
मॉडेलसोबत वाद जिंकण्याचा प्रयत्न करणे थांबवा. मॉडेलला काय करण्याची परवानगी आहे, हे बदलण्यास सुरुवात करा.
मुख्य असुरक्षितता (Key Vulnerabilities):
- Direct Injection: वापरकर्ता तुमचे नियम डावलण्यासाठी "ignore previous instructions" असे टाईप करतो. तुमचा सिस्टम प्रॉम्प्ट (system prompt) ही सुरक्षा सीमा नाही.
- Jailbreaks: हे तुमच्या ॲपऐवजी सेफ्टी ट्रेनिंगला लक्ष्य करतात. हल्लेखोर फिल्टर्स बायपास करण्यासाठी रोलप्ले किंवा काल्पनिक कथांचा वापर करतात.
- System Prompt Leakage: हल्लेखोर मॉडेलला स्वतःच्या सूचना प्रिंट करण्यास फसवतात. प्रॉम्प्टमध्ये कधीही API keys किंवा सीक्रेट्स ठेवू नका.
- Indirect Injection: खरा धोका. ईमेल, PDF किंवा वेब पेजेसमध्ये घातक सूचना लपवल्या जातात. मॉडेल त्यांना कमांड्स म्हणून वाचते.
- RAG Poisoning: हल्लेखोर तुमच्या नॉलेज बेसमध्ये चुकीचा डेटा जोडतात. मॉडेल ही माहिती मिळवते आणि लपलेल्या कमांड्सचे पालन करते.
- Multimodal Attacks: सूचना प्रतिमा (images) किंवा ऑडिओ फाइल्समध्ये लपवलेल्या असतात. टेक्स्ट फिल्टर्स त्यांना पाहू शकत नाहीत.
- Tool Abuse: यशस्वी इंजेक्शनमुळे ईमेल पाठवणे किंवा कोड चालवणे यांसारख्या प्रत्यक्ष कृती होऊ शकतात. ही "confused deputy" समस्या आहे.
- The Lethal Trifecta: सर्वात धोकादायक स्थिती. जेव्हा एखाद्या एजंटला खाजगी डेटाचा ॲक्सेस असतो, तो असुरक्षित मजकूर पाहतो आणि त्याच्याकडे बाहेरील जगाशी संवाद साधण्याचा मार्ग असतो.
- Memory Poisoning: भविष्यातील सेशन्समध्ये हल्ले घडवून आणण्यासाठी हल्लेखोर मॉडेलच्या दीर्घकालीन मेमरीमध्ये (long-term memory) चुकीच्या सूचना लिहितात.
- Multi-Agent Spread: एका एजंटचे आउटपुट हे दुसऱ्या एजंटसाठी सूचना असते. हल्ला तुमच्या संपूर्ण सिस्टममध्ये पसरू शकतो.
- MCP Poisoning: घातक टूल डिस्क्रिप्शन्स मॉडेलला क्रेडेंशियल्स (credentials) देण्यास फसवू शकतात.
उपाय म्हणजे अधिक चांगले मॉडेल नाही, तर अधिक चांगली आर्किटेक्चर (architecture) आहे.
- 'Least privilege' तत्त्वाचा वापर करा.
- महत्त्वाच्या कृतींसाठी 'human in the loop' पद्धत वापरा.
- एकाच मार्गाद्वारे खाजगी डेटा, असुरक्षित इनपुट आणि बाहेर जाण्याचा मार्ग (exit route) एकाच वेळी उपलब्ध होऊ देऊ नका.
तुमचे एजंट्स असे तयार करा की जणू ते आधीच कॉम्प्रोमाइज्ड (compromised) आहेत. ते काय बोलू शकतात यावर नाही, तर ते काय करू शकतात यावर मर्यादा घाला.
स्रोत: https://dev.to/weboko/llm-vulnerabilities-101-3pcj
पर्यायी शिक्षण समुदाय: https://t.me/GyaanSetuAi