किसी AI फ़ीचर की थ्रेट मॉडलिंग
बनाने से पहले, डेटा का फ़्लो ड्रा करें, निशान लगाएं कि भरोसा कहाँ बदलता है, और पूछें कि क्या गलत हो सकता है। AI फ़ीचर्स के लिए यहाँ एक व्यावहारिक तरीका दिया गया है।
60 सेकंड में
किसी AI फ़ीचर की थ्रेट मॉडलिंग
बनाने से पहले, डेटा का फ़्लो ड्रा करें, निशान लगाएं कि भरोसा कहाँ बदलता है, और पूछें कि क्या गलत हो सकता है। AI फ़ीचर्स के लिए यहाँ एक व्यावहारिक तरीका दिया गया है।
स्टेप 1: डेटा फ़्लो ड्रा करें
[Customer browser]
| question
======|================= trust boundary: internet -> our app
v
[App server] --reads--> [Order DB]
| system prompt + question + retrieved help pages
======|================= trust boundary: our app -> model provider
v
[Model API] --proposes tool call--> [App server]
|
======|================= trust boundary: model output -> our actions
v
[Refund tool] [Logs]स्टेप 2: एसेट्स के नाम तय करें
| एसेट | उदाहरण | किससे नुकसान होगा |
|---|---|---|
| डेटा | ऑर्डर हिस्ट्री, पते, अंदरूनी हेल्प पेज | एक ग्राहक किसी दूसरे का डेटा देख लेता है |
| पैसे | रिफ़ंड, आपका मॉडल API बिल | फ़र्ज़ी रिफ़ंड, बहुत भारी बिल |
| एक्शन्स | रिफ़ंड टूल, ईमेल भेजना, ऑर्डर बदलना | बॉट कुछ ऐसा कर देता है जिसके लिए किसी ने नहीं कहा था |
| भरोसा और प्रतिष्ठा | ऐसे जवाब जिनका ग्राहक स्क्रीनशॉट लेकर शेयर कर देते हैं | बॉट किसी फ़र्ज़ी ऑफ़र का वादा कर देता है या कुछ आपत्तिजनक कह देता है |
स्टेप 3: STRIDE, AI फ़ीचर्स के अनुसार
| खतरा | पारंपरिक अर्थ | AI फ़ीचर में |
|---|---|---|
| Spoofing | किसी और का रूप धारण करना | किसी दस्तावेज़ का टेक्स्ट सिस्टम या एडमिन होने का दावा करता है; कोई यूज़र दावा करता है "मैं मैनेजर हूँ" |
| Tampering | डेटा या कोड बदलना | नॉलेज बेस में ज़हरीले (poisoned) हेल्प पेज; बदला हुआ prompt template |
| Repudiation | यह मुकर जाना कि आपने कुछ किया था | इस बात का कोई रिकॉर्ड न होना कि किस prompt और किस खोजे गए टेक्स्ट की वजह से रिफ़ंड हुआ |
| Information disclosure | डेटा लीक होना | बॉट किसी दूसरे यूज़र का ऑर्डर, system prompt या कोई गोपनीय दस्तावेज़ दिखा देता है |
| Denial of service | सर्विस को अनुपलब्ध कर देना | बहुत बड़े इनपुट्स, एजेंट लूप्स, या बहुत भारी खर्च जो पूरे बजट को खत्म कर दे |
| Elevation of privilege | वे अधिकार पाना जो आपके पास नहीं होने चाहिए | कोई यूज़र मॉडल से ऐसा टूल कॉल करवा लेता है जिसे वह खुद सीधे कॉल नहीं कर सकता (एक confused deputy) |
स्टेप 4: अब्यूज़ केस लिखें
- "एक ग्राहक के रूप में, मैं किसी दूसरे ग्राहक का ऑर्डर नंबर टाइप करता हूँ और कर्मचारी होने का दावा करता हूँ, ताकि मैं उनका पता देख सकूँ।"
- "एक बाहरी व्यक्ति के रूप में, मैं छिपे हुए निर्देशों के साथ एक प्रोडक्ट रिव्यू पोस्ट करता हूँ, ताकि बॉट दूसरे यूज़र्स से फ़र्ज़ी UPI ID पर पेमेंट करने को कहे।"
- "एक बॉट ऑपरेटर के रूप में, मैं एक मुफ़्त चैटबॉट पर हज़ारों लंबे सवालों की स्क्रिप्ट चलाता हूँ, ताकि दुकान के खर्चे पर मुझे मुफ़्त में मॉडल का इस्तेमाल मिल सके।"
स्टेप 5: कंट्रोल्स, ज़िम्मेदार लोग और फ़ॉलो-अप
- 1
प्राथमिकता तय करें
हर अब्यूज़ केस के लिए: इसकी कितनी संभावना है, और यह कितना बुरा हो सकता है? सबसे बुरे से शुरू करें। - 2
कंट्रोल्स चुनें
कोड और डेटा एक्सेस में कंट्रोल्स को प्राथमिकता दें: परमिशन चेक्स, लिमिट्स, मंज़ूरी। - 3
ज़िम्मेदारी सौंपें
हर कंट्रोल के लिए एक व्यक्ति और एक तारीख तय की जाती है। - 4
टेस्ट्स में बदलें
हर अब्यूज़ केस एक टेस्ट केस बन जाता है जिसे आप दोबारा चला सकते हैं। - 5
दोबारा समीक्षा करें
नया टूल, नया डेटा सोर्स, नया मॉडल या नए यूज़र्स: थ्रेट मॉडल को अपडेट करें।
और देखें और पढ़ें
लैब
कागज़ पर या किसी डॉक्यूमेंट में, एक छोटे AI सपोर्ट बॉट के लिए एक पेज का थ्रेट मॉडल।
समस्या
फ़ीचर: साड़ियों की एक छोटी ऑनलाइन दुकान के लिए चैट सपोर्ट बॉट। यह दुकान के हेल्प पेजों से सवालों के जवाब देता है, लॉग-इन किए हुए ग्राहक के ऑर्डर का स्टेटस देख सकता है, और ₹500 तक का रिफ़ंड जारी कर सकता है।
- डेटा फ़्लो ड्रा करें। इसमें ब्राउज़र, ऐप सर्वर, ऑर्डर डेटाबेस, हेल्प पेज, मॉडल API, रिफ़ंड टूल और लॉग्स शामिल करें। हर ट्रस्ट बाउंड्री पर निशान लगाएं।
- एसेट्स की सूची बनाएं: डेटा, पैसे, एक्शन्स, प्रतिष्ठा।
- छह अक्षरों में से हर एक के लिए एक STRIDE खतरा लिखें।
- "एक … के रूप में, मैं …, ताकि …" के रूप में तीन अब्यूज़ केस लिखें।
- अपने शीर्ष तीन खतरों को चुनें और प्रत्येक के लिए एक कंट्रोल और ज़िम्मेदार व्यक्ति तय करें।
आपका काम तब पूरा होगा जब
कठिन सवाल
उत्तर देखने से पहले ख़ुद जवाब देने की कोशिश करें। अगर आप इनके जवाब दे सकते हैं, तो आप पाठ समझ गए हैं।
Q1जब मॉडल और आपके टूल्स दोनों आपके अपने सिस्टम के अंदर चलते हैं, तो उनके बीच ट्रस्ट बाउंड्री क्यों बनाई जाए?दिखाएं
क्योंकि मॉडल का आउटपुट ऐसे टेक्स्ट से तय होता है जिस पर आपका कंट्रोल नहीं होता: यूज़र के मैसेज, रीट्रिव किए गए डॉक्युमेंट्स, प्रॉडक्ट रिव्यू। इसलिए मॉडल द्वारा सुझाया गया टूल कॉल असल में किसी हमलावर की रिक्वेस्ट हो सकता है। टूल के कोड को पहचान, ओनरशिप और लिमिट्स खुद चेक करनी चाहिए, ठीक वैसे ही जैसे वह इंटरनेट से आने वाली किसी रिक्वेस्ट के लिए करता।
Q2आपके थ्रेट मॉडल में यह कंट्रोल दिया गया है "सिस्टम प्रॉम्प्ट बॉट को बताता है कि कभी भी ₹500 से ज़्यादा का रिफ़ंड न करे"। इसमें क्या गड़बड़ी है, और इसका हल क्या है?दिखाएं
यह मॉडल से की गई एक रिक्वेस्ट है, कोई कंट्रोल नहीं। मॉडल को बातों में बहकाया जा सकता है, या इंजेक्ट किए गए टेक्स्ट से उसे धोखा दिया जा सकता है। इसका हल रिफ़ंड टूल के अंदर एक चेक लगाना है: ₹500 से ज़्यादा या ऑर्डर वैल्यू से ज़्यादा की किसी भी रकम को रिजेक्ट करें, और कन्फ़र्म करें कि ऑर्डर लॉग-इन किए गए यूज़र का ही है। बेहतर यूज़र एक्सपीरियंस के लिए प्रॉम्प्ट वाली लाइन रखी जा सकती है, लेकिन यही चीज़ आपको सुरक्षित नहीं रखती।
अक्सर पूछे जाने वाले सवाल
थ्रेट मॉडल बनाने में कितना समय लगता है?
एक छोटे फ़ीचर के लिए, सही लोगों के साथ एक घंटा बैठकर एक उपयोगी पहला वर्शन बनाना अक्सर काफी होता है। किसी बड़े प्लेटफ़ॉर्म के लिए ज़्यादा समय चाहिए। एक छोटा मॉडल जिसका वास्तव में इस्तेमाल हो, उस बेहतरीन मॉडल से कहीं बेहतर है जिसे कोई पढ़ता ही नहीं।
मीटिंग में कौन-कौन होना चाहिए?
कोई ऐसा जो डिज़ाइन जानता हो, कोई जो कोड लिखता हो, कोई सिक्योरिटी टीम से, और सबसे अच्छा होगा कि प्रोडक्ट या सपोर्ट टीम से भी कोई हो जो जानता हो कि असली यूज़र्स कैसा व्यवहार करते हैं। सपोर्ट स्टाफ़ को अक्सर पहले से ही अब्यूज़ केस पता होते हैं।
क्या हमें किसी खास टूल की ज़रूरत है?
नहीं। व्हाइटबोर्ड, शेयर्ड डॉक्यूमेंट या पेन और कागज़ भी काम करता है। बड़े सिस्टम्स के लिए टूल्स मदद कर सकते हैं, लेकिन टूल से ज़्यादा महत्वपूर्ण सोच होती है।
MITRE ATLAS और MITRE ATT&CK में क्या अंतर है?
ATT&CK सामान्य IT सिस्टम्स के खिलाफ हमलावरों के तौर-तरीकों की सूची बनाता है। ATLAS खास तौर पर AI और मशीन लर्निंग सिस्टम्स पर होने वाले हमलों पर ध्यान देता है। किसी AI फ़ीचर के लिए आप अक्सर दोनों का इस्तेमाल करेंगे, क्योंकि मॉडल के आस-पास का ऐप अभी भी सामान्य IT ही होता है।
पाठ का टेस्ट
5 सवाल। पास होने और इस पाठ को पूरा करने के लिए 3 सही होने चाहिए (60%)।