live_connect_constraints फ़ील्डफ़र्डियानशाह के विश्लेषण के अनुसार, टोकन मिंटिंग के रेफ़रेंस इम्प्लीमेंटेशन में live_connect_constraints फ़ील्ड को शामिल नहीं किया गया था A। इस फ़ील्ड में एक bidi_generate_content_setup ऑब्जेक्ट होना चाहिए, जो टोकन को एक विशिष्ट मॉडल, सिस्टम इंस्ट्रक्शन और टूल्स के सेट से बाँधता है।
जब live_connect_constraints को खाली छोड़ दिया जाता है या शामिल नहीं किया जाता है, तो कोई भी प्रतिबंध लागू नहीं होता है। एक हमलावर, जो एफ़ेमेरल टोकन प्राप्त कर लेता है, वह फिर अपनी पसंद का कोई भी मॉडल, सिस्टम प्रॉम्प्ट और टूल्स निर्दिष्ट करते हुए एक क्लाइंट-नियंत्रित सेटअप फ्रेम भेज सकता है। सर्वर, जिसके पास टोकन-बद्ध मानों को मान्य करने के लिए कुछ नहीं होता, हमलावर के कॉन्फ़िगरेशन को स्वीकार कर लेता है।
महत्वपूर्ण चेतावनी: प्रदान किए गए स्रोतों में
live_connect_constraintsके लिए Google का आधिकारिक दस्तावेज़, कोई CVE, या इस व्यवहार की पुष्टि करने वाला Google सुरक्षा सलाहकार शामिल नहीं है। यह दावा फ़र्डियानशाह के मीडियम पोस्ट पर आधारित है और इसे अभी अपुष्ट लेकिन संभावित माना जाना चाहिए A।
यदि यह कमज़ोरी वास्तविक है, तो इसके परिणाम किसी भी ऐसे एप्लिकेशन के लिए गंभीर हैं जो ब्राउज़र संदर्भ में Gemini Live API का उपयोग करता है:
Google AI फ़ोरम पर डेवलपर्स ने एफ़ेमेरल टोकन द्वारा सिस्टम इंस्ट्रक्शन को अनदेखा करने और प्रतिबंधित एंडपॉइंट्स के साथ अपेक्षित रूप से काम न करने की समस्याओं की सूचना दी है, जो बताता है कि व्यापक इकोसिस्टम अभी भी परिपक्व हो रहा है DD।
फ़र्डियानशाह द्वारा वर्णित समाधान सीधा है: टोकन मिंटिंग के दौरान live_connect_constraints.bidi_generate_content_setup फ़ील्ड को तीन मानों के साथ भरें:
model — उपयोग करने के लिए सटीक Gemini मॉडल (जैसे, models/gemini-2.5-flash-native-audio-latest)।system_instruction — इच्छित सिस्टम प्रॉम्प्ट, जो parts में text के रूप में संरचित हो।tools — क्लाइंट-साइड इंजेक्शन को रोकने के लिए एक खाली ऐरे [] या केवल स्पष्ट रूप से अनुमत टूल्स।यहाँ फ़र्डियानशाह के लेख A से सचित्र Python कोड है:
token = gemini_client.auth_tokens.create({
"uses": 1,
"expire_time": now + timedelta(seconds=60),
"new_session_expire_time": now + timedelta(seconds=60),
"live_connect_constraints": {
"bidi_generate_content_setup": {
"model": "models/gemini-2.5-flash-native-audio-latest",
"system_instruction": {
"parts": [{"text": "You are a customer support assistant..."}]
},
"tools": []
}
}
})
नोट: चूँकि
live_connect_constraintsस्रोतों में दिए गए आधिकारिक Google API संदर्भ में प्रलेखित नहीं है, यह उदाहरण फ़र्डियानशाह के अपने विवरण पर आधारित है और प्रोडक्शन में उपयोग करने से पहले वास्तविक API के विरुद्ध परीक्षण किया जाना चाहिए A।
प्रदान किए गए स्रोतों द्वारा निम्नलिखित मुख्य बिंदु अभी तक सत्यापित नहीं हुए हैं:
live_connect_constraints के अस्तित्व या स्कीमा की पुष्टि नहीं करता है।BidiGenerateContentConstrained एंडपॉइंट का सटीक व्यवहार प्रदान किए गए आधिकारिक संदर्भों में प्रलेखित नहीं है DS।जब तक Google कोई आधिकारिक सलाहकार प्रकाशित नहीं करता, सबसे सुरक्षित तरीका यह है कि कमज़ोरी को संभावित मानें और सक्रिय रूप से समाधान लागू करें:
live_connect_constraints या उसके समकक्ष फ़ील्ड को भरता है या नहीं।newSessionExpireTime को लगभग 60 सेकंड रखने की सलाह देता है ताकि टोकन चोरी की संभावना सीमित हो G।Gemini Live API रियल-टाइम वॉइस और वीडियो अनुभव बनाने के लिए एक शक्तिशाली उपकरण है। टोकन मिंटिंग प्रक्रिया में एक एकल गायब फ़ील्ड को इस क्षमता को कम नहीं करना चाहिए - लेकिन डेवलपर्स को यह सुनिश्चित करना होगा कि उनके इम्प्लीमेंटेशन पूर्ण हों।
इस लेख को 27 प्रदान किए गए स्रोतों के आधार पर तथ्य-जांचा गया है, जिसमें आधिकारिक Google दस्तावेज़, सामुदायिक फ़ोरम चर्चाएँ और मूल शोधकर्ता का लेख शामिल है। शोधकर्ता के प्रमुख दावों को प्रकाशन के समय आधिकारिक स्रोतों से स्वतंत्र रूप से सत्यापित नहीं किया जा सका।