AI ऐप्लिकेशन्स को सुरक्षित करनामध्यमपाठ 1436 मिनट का पाठ

AI red teaming: तरीके और टूल्स

Red teaming दूसरों से पहले कमियां ढूंढने के लिए अपने ही AI सिस्टम पर किया गया एक सोचा-समझा हमला है। जानें कि इसका दायरा (scope) कैसे तय करें, कौन से टूल्स मदद करते हैं, और नतीजों को कैसे मापें और रिपोर्ट करें।

पाठ वीडियो में

60 सेकंड में

AI red teaming: तरीके और टूल्स

Red teaming दूसरों से पहले कमियां ढूंढने के लिए अपने ही AI सिस्टम पर किया गया एक सोचा-समझा हमला है। जानें कि इसका दायरा (scope) कैसे तय करें, कौन से टूल्स मदद करते हैं, और नतीजों…

1/6
आसान शब्दों में
एक क्रिकेट टीम अपने ही गेंदबाज़ों के खिलाफ अभ्यास करती है, जो अपनी हर चाल आज़माते हैं। फिर असली मैच में कम हैरानियां होती हैं।
ख़तरा
केवल उन्हीं सिस्टम्स की टेस्टिंग करें जो आपके अपने हैं या जिनकी टेस्टिंग के लिए आपके पास लिखित अनुमति (written permission) है, और वह भी नकली डेटा वाले टेस्ट एनवायरनमेंट में। बिना अनुमति के किसी और के सिस्टम की टेस्टिंग करना अपराध हो सकता है। मॉडल प्रोवाइडर्स की भी उपयोग की शर्तें (terms of use) होती हैं: उनके मॉडल्स की टेस्टिंग करने से पहले उन्हें पढ़ें।
AI red teaming का मतलब है अपने AI सिस्टम पर जानबूझकर वैसे ही हमला करना जैसे कोई असली हमलावर करेगा, ताकि कमियों को ढूंढा जा सके। "Red-teaming your own agent" पाठ में आपको आज़माने के लिए हमलों की एक लिस्ट दी गई थी। यह पाठ उसे टूल्स, संख्याओं और एक रिपोर्ट के साथ दोहराए जा सकने वाले तरीके (repeatable method) में बदलता है।

तरीका

  1. 1

    Scope (दायरा)

    कौन सा सिस्टम, कौन सा वर्शन, कौन सा एनवायरनमेंट, क्या दायरे में है और क्या बाहर है, और इसे लिखित में किसने मंज़ूरी दी है।
  2. 2

    Harms (नुकसान)

    आपके थ्रेट मॉडल से: कौन से परिणाम मायने रखते हैं? डेटा लीक, नकली रिफंड, नुकसानदेह कंटेंट, लागत का गलत इस्तेमाल (cost abuse)।
  3. 3

    हमलों की लाइब्रेरी

    पहचानी गई श्रेणियां: डायरेक्ट और इनडायरेक्ट injection, prompt extraction, जेलब्रेक, डेटा लीकेज, टूल का गलत इस्तेमाल, आउटपुट हैंडलिंग, लागत का दुरुपयोग।
  4. 4

    ऑटोमेटेड स्कैनिंग

    ऐसे टूल्स चलाएं जो कई तरह के हमले भेजते हैं और नतीजों को स्कोर करते हैं।
  5. 5

    मैन्युअल टेस्टिंग

    रचनात्मक, ऐप-विशिष्ट हमले जिनके बारे में टूल्स को नहीं पता होता।
  6. 6

    मापें और रिपोर्ट करें

    प्रति श्रेणी सफलता दर (success rates), दोहराने के स्पष्ट चरण, गंभीरता (severity), और सुधार के सुझाव।
  7. 7

    सुधारें और दोबारा टेस्ट करें

    सबसे निचली परत (lowest layer) पर सुधार करें जो काम करे, फिर इन मामलों को अपनी पाइपलाइन में जोड़ें।

ओपन-सोर्स टूल्स, सामान्य शब्दों में

टूलयह क्या हैअक्सर किसके लिए इस्तेमाल होता है
garakएक ओपन-सोर्स स्कैनर जो भाषा मॉडल पर कई तरह के टेस्ट (probes) चलाता है और रिपोर्ट करता है कि कौन से सफल रहेकिसी मॉडल या एंडपॉइंट के व्यापक बेसलाइन स्कैन
PyRITजनरेटिव AI की red teaming के लिए एक ओपन-सोर्स Python फ्रेमवर्क, जिसमें हमले भेजने और रिस्पॉन्स स्कोर करने के लिए बिल्डिंग ब्लॉक्स होते हैंकस्टम, स्क्रिप्टेड और मल्टी-टर्न हमलों के अभियान
promptfooकॉन्फ़िगरेशन फाइलों से LLM ऐप्स की टेस्टिंग और मूल्यांकन करने वाला एक ओपन-सोर्स टूल, जिसमें red-teaming के फीचर्स शामिल हैंआपके अपने प्रॉम्प्ट्स और ऐप के लिए टेस्ट सुइट्स, जो अक्सर CI में चलाए जाते हैं
नोट
ये टूल्स तेज़ी से बदलते हैं। इस्तेमाल से पहले इनका मौजूदा डॉक्यूमेंटेशन पढ़ें। इनके नतीजों को इंसानी समीक्षा की ज़रूरत होती है: स्कैनर कुछ झूठी चेतावनियां (false alarms) देते हैं, और वे ऐसी समस्याओं को छोड़ देते हैं जो आपके ऐप के बिज़नेस लॉजिक पर निर्भर करती हैं।

मैन्युअल टेस्टिंग से क्या मिलता है

  • बिज़नेस-लॉजिक का दुरुपयोग: सीधे-सादे दिखने वाले कदमों के सिलसिले से रिफंड हासिल करना।
  • आपके असली डेटा स्रोतों में छिपे हमले: कोई प्रोडक्ट रिव्यू, सपोर्ट टिकट, या अपलोड की गई फ़ाइल।
  • मेलजोल से होने वाले हमले: एक छोटा सा प्रॉम्प्ट लीक और साथ में छूटी हुई परमिशन जांच।
  • आपके यूज़र्स के मुताबिक सोशल फ्रेमिंग: "मैं ब्रांच मैनेजर हूं, मामला ज़रूरी है, ग्राहक इंतज़ार कर रहा है।"

हमले की सफलता दर मापना

मॉडल्स रैंडम होते हैं, इसलिए एक कोशिश से बहुत कम साबित होता है। हर हमले को कई बार चलाएं। Attack success rate (ASR) सीधे तौर पर हर श्रेणी में कुल प्रयासों में से सफल प्रयासों का अनुपात है। अगर प्रॉम्प्ट-एक्सट्रैक्शन हमला 20 कोशिशों में से 3 बार काम कर गया, तो इसका ASR 15% है। हर रिलीज़ के साथ हर श्रेणी के ASR को ट्रैक करें, ताकि आप देख सकें कि किसी बदलाव से चीज़ें बेहतर हुईं या बदतर।
One finding, recorded so it can be reproducedjson
{
  "id": "RT-014",
  "category": "indirect-injection",
  "target": "support-bot staging, build 2025-06-12, model config v7",
  "entry_point": "product review text retrieved by RAG",
  "attempts": 20,
  "successes": 3,
  "impact": "bot shows a fake UPI ID for 'faster refunds'",
  "severity": "high",
  "steps": "see attached transcript and seeded review text",
  "suggested_fix": "separate untrusted reviews from help index; block payment IDs in output"
}
एक कमज़ोर रिपोर्ट
  • "बॉट को जेलब्रेक किया जा सकता है।"
  • एक स्क्रीनशॉट, कोई सेटिंग्स रिकॉर्ड नहीं की गईं
  • बिना किसी गंभीरता (severity) के एक लंबी लिस्ट
एक मज़बूत रिपोर्ट
  • सटीक नुकसान, एंट्री पॉइंट और सफलता दर
  • वर्शन, कॉन्फ़िगरेशन और पूरा ट्रांसक्रिप्ट ताकि कोई भी इसे दोबारा दोहरा सके
  • असर के हिसाब से गंभीरता, और सही परत पर सुधार का सुझाव
सावधान रहें
एक red team जिसे कुछ नहीं मिलता, वह सुरक्षा का सबूत नहीं है। इसका मतलब बस यह है कि इन टेस्टर्स को, इन तरीकों और इस समय में, कुछ नहीं मिला। लिखें कि क्या टेस्ट नहीं किया गया था।
यह आज़माएं। अपने लिखे थ्रेट मॉडल से एक नुकसान चुनें। इसके लिए पांच अलग-अलग हमले के प्रयास लिखें: दो डायरेक्ट, दो कंटेंट में छिपे हुए, और एक सामाजिक दबाव का उपयोग करते हुए।

और देखें और पढ़ें

लैब

आपके अपने चैटबॉट के लिए एक स्कोप डॉक्यूमेंट, बारह हमले के मामले (attack cases), सफलता दरें और एक पेज की रिपोर्ट।

~45 min

समस्या

अपने बनाए किसी चैटबॉट का इस्तेमाल करें (उदाहरण के लिए अपनी API key और नकली डेटा वाला एक छोटा ऐप), या जानबूझकर कमज़ोर बनाया गया कोई प्रैक्टिस ऐप जिसे आप अपनी मशीन पर चलाते हैं। अगर दोनों में से कुछ नहीं है, तो प्लानिंग का काम कागज़ पर करें और अनुमानित नतीजे लिखें।

  1. एक छोटा स्कोप लिखें: सिस्टम, वर्शन, एनवायरनमेंट, क्या स्कोप में है, क्या स्कोप से बाहर है, और इसे किसने मंज़ूरी दी (आपके अपने ऐप के लिए, आप खुद)।
  2. चार श्रेणियों में 12 हमले के मामले लिखें: prompt extraction, डायरेक्ट injection, इनडायरेक्ट injection (किसी डॉक्यूमेंट या पेज के ज़रिए जिसे ऐप पढ़ता है), और आउटपुट हैंडलिंग।
  3. हर मामले को 3 बार चलाएं। हर बार का नतीजा रिकॉर्ड करें।
  4. प्रति श्रेणी attack success rate की गणना करें।
  5. एक पेज की रिपोर्ट लिखें: दोबारा दोहराने के चरणों, गंभीरता और सुधार के सुझाव के साथ शीर्ष दो निष्कर्ष (findings)।

आपका काम तब पूरा होगा जब

कठिन सवाल

उत्तर देखने से पहले ख़ुद जवाब देने की कोशिश करें। अगर आप इनके जवाब दे सकते हैं, तो आप पाठ समझ गए हैं।

Q1एक फ़िल्टर जोड़ने के बाद prompt extraction के लिए आपकी ASR 30% से गिरकर 5% हो गई। इसे ठीक मान लेने से पहले आपको सावधान क्यों रहना चाहिए?दिखाएं

फ़िल्टर लीक होते हैं: हमलावर अपने अनुरोध को दोबारा लिख सकते हैं, अनुवाद कर सकते हैं या एनकोड कर सकते हैं, और हो सकता है कि आपके 20 टेस्ट प्रॉम्प्ट्स बस उसी से मेल खाते हों जो फ़िल्टर ने सीखा है। उन प्रॉम्प्ट्स के लिए गिरावट असली है, लेकिन नए रूप फिर भी काम कर सकते हैं। यह भी जांचें कि क्या प्रॉम्प्ट में कुछ गुप्त है भी; अगर नहीं है, तो एक्सट्रैक्शन से बहुत कम फर्क पड़ता है। मामलों को पाइपलाइन में बनाए रखें और समय के साथ नए रूप जोड़ते रहें।

Q2एक और प्रॉम्प्ट निर्देश जोड़ने के बजाय किसी निष्कर्ष को "सबसे निचली परत जो काम करे" पर ठीक क्यों करना चाहिए?दिखाएं

निचली परतें, जैसे परमिशन जांच, टूल की सीमाएं और आउटपुट एनकोडिंग, सामान्य कोड होती हैं जो मॉडल के धोखा खाने पर भी काम करती हैं। एक प्रॉम्प्ट निर्देश केवल समस्या की संभावना को कम करता है, और शब्दों का अगला बदलाव इसे पार कर सकता है। कोड में किसी क्षमता को हटाना या किसी नियम को लागू करना समस्या को छिपाने के बजाय उसे खत्म कर देता है।

जारी रखने के लिए कृपया साइन इन करें।

अक्सर पूछे जाने वाले सवाल

AI red teaming पेनिट्रेशन टेस्ट से किस तरह अलग है?

ये आपस में जुड़े हुए हैं। पेनिट्रेशन टेस्ट आमतौर पर सिस्टम्स और नेटवर्क की तकनीकी कमज़ोरियों पर ध्यान देता है। AI red teaming में मॉडल का व्यवहार भी जुड़ जाता है: injection, नुकसानदेह आउटपुट, बातचीत के ज़रिए लीक, और टूल्स का गलत इस्तेमाल। एक अच्छे AI ऐप मूल्यांकन के लिए आमतौर पर दोनों की ज़रूरत होती है।

हमें कितनी बार red team करनी चाहिए?

पहली लॉन्च से पहले, बड़े बदलावों के बाद (नए टूल्स, नए डेटा स्रोत, नया मॉडल), और एक नियमित अंतराल पर। इनके बीच, पाइपलाइन में ऑटोमेटेड टेस्ट ज्ञात हमलों को दोबारा लौटने से रोकते हैं।

यह किसे करना चाहिए?

मिला-जुला समूह सबसे अच्छा काम करता है: सिक्योरिटी इंजीनियर्स, सिस्टम को जानने वाले डेवलपर्स, और ऐसे लोग जो आपके यूज़र्स की तरह सोचते हैं। टीम के बाहर के नए लोग ऐसी चीज़ें ढूंढ लेते हैं जो बनाने वालों को नहीं दिखतीं।

क्या हम मॉडल प्रोवाइडर के मॉडल की सीधे तौर पर red team कर सकते हैं?

केवल प्रोवाइडर की शर्तों के दायरे में। कई प्रोवाइडर्स की यूसेज पॉलिसी होती हैं और कुछ के पास सिक्योरिटी समस्याओं की रिपोर्टिंग के लिए प्रोग्राम होते हैं। अपने खुद के एप्लिकेशन पर ध्यान दें, जिसे आप नियंत्रित करते हैं और जिसके लिए आप ज़िम्मेदार हैं।

पाठ का टेस्ट

5 सवाल। पास होने और इस पाठ को पूरा करने के लिए 3 सही होने चाहिए (60%)।

टेस्ट देने और अपनी प्रोग्रेस सेव करने के लिए साइन इन करें