ऐप किस काम में पकड़ा गया
एक सिक्योरिटी रिसर्चर (security researcher) ने पाया कि ZCode बिना साफ सहमति के यूज़र की फाइलें क्लाउड पर भेज रहा था। इसके बाद Z.ai ने ऐप को पैच किया और उसका कोड पब्लिश किया।
Z.ai का ZCode टूल चुपचाप डेवलपर्स के पूरे प्रोजेक्ट फोल्डर क्लाउड (cloud) पर अपलोड करता पाया गया। कुछ दिनों बाद उसने ऐप को ओपन-सोर्स (open source) कर दिया और वादा किया कि कोई डेटा नहीं रखा जाएगा।

एक सिक्योरिटी रिसर्चर (security researcher) ने पाया कि ZCode बिना साफ सहमति के यूज़र की फाइलें क्लाउड पर भेज रहा था। इसके बाद Z.ai ने ऐप को पैच किया और उसका कोड पब्लिश किया।
पुष्ट घटनाओं की समयरेखा:
.git डेटा था (196.1MB LFS ऑब्जेक्ट, 102.2MB कमिट-हिस्ट्री ऑब्जेक्ट, 0.6MB लॉग), 564 अपलोड कोशिशों में विफल रहा था; एक छोटा 15KB स्नैपशॉट (एक सार्वजनिक रेपो की 538 फाइलें) सफलतापूर्वक अपलोड हो चुका था। आर्काइव AES-256-CTR से एन्क्रिप्ट था, जिसे सर्वर द्वारा दी गई सार्वजनिक कुंजी का उपयोग करते हुए RSA-OAEP-SHA256 के ज़रिए रैप किया गया था — निजी कुंजी केवल Z.ai के क्लाउड में मौजूद है, इसलिए न उपयोगकर्ता और न ही क्लाइंट उसे डिक्रिप्ट कर सकता था। Z.ai ने उसी दिन अपने आधिकारिक Feishu समुदाय में माफ़ी मांगी, दोष डिफ़ॉल्ट रूप से चालू "Codebase Indexing" सुविधा पर डाला (जो सत्र-चेकपॉइंट रिकवरी, वर्जन रोलबैक, Repo Wiki के लिए इस्तेमाल होती थी), कहा कि उसने समस्या को पैच कर दिया है, ZCode को ओपन-सोर्स करने का संकल्प लिया, और मुआवजे के तौर पर साप्ताहिक कोटा रीसेट की पेशकश की।main पर केवल तीन कमिट, README में v3.14.3 का उल्लेख)।zcode-prod) पर अपलोड करने का प्रयास करती थी। इसे स्वतंत्र रिसर्चर Ferstar ने खोजा, जिनके 2026-09-18 के टियरडाउन (teardown) में एक वाणिज्यिक प्रोजेक्ट का 313MB एन्क्रिप्टेड स्नैपशॉट (encrypted snapshot) मिला (42,411 फाइलें; पेलोड का 86.6% .git से), जिसमें उनकी मशीन पर 564 अपलोड कोशिशें विफल रहीं और एक 15KB स्नैपशॉट पहले ही सफलतापूर्वक अपलोड हो चुका था।zcode-prod OSS बकेट को खाली बताते हैं।पहले (BEFORE) (लगभग 2026-09-17/18 तक): ZCode बंद-सोर्स क्लाइंट; "Codebase Indexing" डिफ़ॉल्ट रूप से चालू; साइन-इन रहते हुए क्लाइंट पूरे वर्कस्पेस (वर्किंग ट्री + .git हिस्ट्री + LFS + रेफलॉग्स + ग्लोबल कॉन्फ़िग) को एन्क्रिप्टेड स्नैपशॉट में पैकेज करके Alibaba Cloud OSS पर पोस्ट करने की कोशिश करता था; "Optimize Experience" / "Repo Snapshot Indexing" नाम की सेटिंग्स कैप्चर नहीं रोकती थीं; किसी पेंडिंग स्नैपशॉट को हटाने पर ~30 मिनट के भीतर नया रीपैक हो जाता था; गोपनीयता नीति (2026-06-15 से प्रभावी) बातचीत के टेक्स्ट/फाइलें जमा करने की बात करती थी, पर वर्कस्पेस स्नैपशॉट के बारे में कुछ नहीं कहती थी; डिक्रिप्शन कुंजी केवल Z.ai के क्लाउड में रहती थी।
बदलाव (CHANGE) (2026-09-18 → 2026-09-21): उपयोगकर्ताओं ने इस व्यवहार को पकड़ा और सार्वजनिक किया (Ferstar, Feng Ruohang, J.F. Zhang); Z.ai ने शुक्रवार को माफ़ी मांगी; सोमवार को उसने पैच किया (v3.14.0), Repo Wiki और अपलोड वर्कफ़्लो हटाया, ज़ीरो-डेटा-रिटेंशन चालू किया, CAICT/NSFOCUS द्वारा सत्यापित अपलोड किए गए डेटा के डिलीशन का दावा किया, और Apache-2.0 के अंतर्गत पूरा सोर्स प्रकाशित किया।
बाद में (AFTER) (2026-09-22 →): अपलोड पाइपलाइन गई (Ferstar के पुनः-ऑडिट ने पुष्टि की); बचा हुआ चेकपॉइंट तंत्र केवल स्थानीय Git काम करता है; सोर्स सार्वजनिक रूप से निरीक्षण-योग्य है, पर मिटाए गए कमिट इतिहास का मतलब है कि पैच-पूर्व स्नैपशॉट/अपलोड कोड का ऑडिट नहीं किया जा सकता; ज़ीरो-रिटेंशन का दावा Z.ai के कहने और कंपनी-नियुक्त आकलनों पर टिका है; पूरी CAICT/NSFOCUS रिपोर्ट अप्रकाशित; MaaS नो-रिटेंशन विकल्प "आ रहा है" बताया गया; चीनी एआई कोडिंग क्लाइंट्स पर डेवलपर और एंटरप्राइज़ भरोसा दबाव में; जुलाई 2026 की Grok Build घटना के साथ समानता व्यापक रूप से रेखांकित की गई।
तकनीकी तंत्र (Ferstar और J.F. Zhang द्वारा रिवर्स-इंजीनियरिंग के ज़रिए INDEPENDENTLY VERIFIED; विवरण runtimewire, dev.to, SamCodeMan के लेखों में पुष्ट):
.git — ऑब्जेक्ट, LFS कैश, रेफलॉग्स — और ग्लोबल एप्लिकेशन कॉन्फ़िग) को एक कंप्रेस्ड स्नैपशॉट में पैकेज करता है। ट्रिगर स्रोतों में प्रॉम्प्ट-पूर्व कैप्चर और एक Repo Wiki अपडेट कार्य शामिल थे।/api/v1/snapshot/upload-credential)। यह RPC एक स्नैपशॉट ID, स्टोरेज क्रेडेंशियल, आकार-सीमाएं और RSA सार्वजनिक कुंजी लौटाता है। निजी कुंजी केवल Z.ai के बैकएंड पर होती है, इसलिए स्थानीय सिफरटेक्स्ट (ciphertext) को न उपयोगकर्ता डिक्रिप्ट कर सकता है और न ही क्लाइंट — ऐसी आर्किटेक्चर जो तृतीय पक्षों से ट्रांसफर की रक्षा करती है, पर यह गारंटी देती है कि Z.ai का बैकएंड सब कुछ पढ़ सके।zcode-prod) पर POST करता है; फिर Alibaba का स्टोरेज Z.ai के बैकएंड को कॉलबैक करके स्नैपशॉट दर्ज करता है। Ferstar के देखे गए आर्काइव की 564 कोशिशें विफल हुई थीं (नेटवर्क/क्रेडेंशियल बदलाव) और वह स्थानीय पेंडिंग क्यू में पड़ा था; एक सार्वजनिक रेपो का 15KB स्नैपशॉट सफल हो चुका था।zcode-prod बकेट खाली/मिटा दिया गया (CAICT: "zero-data state"; NSFOCUS: बकेट और ऑब्जेक्ट गए), और अपलोड किया गया डेटा कभी मॉडल प्रशिक्षण के लिए इस्तेमाल नहीं हुआ; ZCode में ज़ीरो-डेटा-रिटेंशन सुविधा चालू है; मानक मॉडल कॉल के लिए MaaS नो-रिटेंशन नियंत्रण नियोजित हैं।.git को संवेदनशील डेटा मानना चाहिए।chattr +i / chflags uchg उपयोगकर्ता-पक्ष उपाय के रूप में काम करती रहीं — SamCodeMan का लेख) ही व्यावहारिक बचाव हैं।.git को रहस्यों के लिए स्कैन करें; किसी भी एआई टूल को भेजे गए वर्कस्पेस को ऐसे डेटा की तरह मानें जो विक्रेता के क्लाउड तक पहुंचता है।config/, .env.example), और पुष्टि करें कि इंस्टॉल किया गया वर्जन ≥ v3.14.0 है।सर्कल 1: वे व्यक्ति और टीम लीड जो रोज़ एआई कोडिंग टूल्स इस्तेमाल करते हैं, तथा सुरक्षा/DevOps इंजीनियर।
config/ की समीक्षा करें, ZCode द्वारा छुए गए किसी भी रेपो को संभावित रूप से उजागर मानें, कमिट किए गए क्रेडेंशियल रोटेट करें (Git हिस्ट्री ही जोखिम है), और डिफेंस-इन-डेप्थ आदत के तौर पर सत्र/चेकपॉइंट डायरेक्टरियां अपरिवर्तनीय बनाएं (chflags uchg / chattr +i)।सर्कल 2: इंजीनियरिंग संगठन और सुरक्षा नेतृत्व।
सर्कल 3: पारिस्थितिकी तंत्र: विक्रेता, नियामक, मानक निकाय, उद्योग पर्यवेक्षक।
VERIFY अभ्यास (देखें labs/S12.md): https://github.com/zai-org/ZCode को क्लोन करें, लाइसेंस और कमिट संख्या सत्यापित करें, rg से ट्री में स्नैपशॉट/अपलोड/क्रेडेंशियल एंडपॉइंट खोजें (जैसे upload-credential, snapshot, oss), config/ के डिफ़ॉल्ट और .env.example का निरीक्षण करें, और पुष्टि करें कि कोई Repo Wiki या क्लाउड-स्नैपशॉट पाथ नहीं बचा है — यानी Ferstar के सुधार-पश्चात पुनः-ऑडिट को दोहराएं। यह अब सचमुच अर्थपूर्ण है क्योंकि अपलोड पाइपलाइन का हटना ही वह एकमात्र सुधार-दावा है जो बाहरी रूप से जांचा जा सकता है; अपने ही डेटा पर नेटवर्क-आधारित एक्सफिल्ट्रेशन का पुनः-परीक्षण न करें।
यह एजेंट-सुरक्षा (agent-security) बीट पर सप्ताह की सबसे मजबूत स्टोरी है, और इसके दो पहलू हैं। पहला विफलता-श्रेणी: एक डिफ़ॉल्ट-ऑन सुविधा ने डेवलपर की पूरी Git हिस्ट्री — रेपो का वह हिस्सा जो उसके सारे पुराने रहस्य रखता है — विक्रेता के क्लाउड तक पहुंचा दी, और ऐसे एन्क्रिप्ट की हुई कि मालिक उसे खोल भी नहीं सकता था। यह सबसे स्पष्ट उदाहरण है कि जब आप एजेंट को अपना फोल्डर देते हैं, तो आप विक्रेता को भी अपना फोल्डर दे रहे होते हैं। दूसरा पहलू प्रतिक्रिया है: क्लाइंट को ओपन-सोर्स करना, ज़ीरो रिटेंशन चालू करना और CAICT/NSFOCUS आकलन करवाना किसी चीनी लैब की असली, दुर्लभ जवाबदेही-कार्रवाई है — Grok Build मामले के बाद "delete, document, disclose" टेम्पलेट अपनाने वाली पहली। लेकिन रिलीज़ अपना इतिहास साफ करके आई, डिलीशन का दावा उसी एकमात्र पक्ष के कहने पर टिका है जिसकी जांच हो सकती थी, और पूरी रिपोर्ट अब तक नहीं आई। फिक्स आधा-अनुकूल है: अपलोड पाइपलाइन का जाना प्रमाणित है; डेटा सचमुच गया या नहीं, यह भरोसे का विषय बना हुआ है। यही विषमता — कोड के स्तर पर पारदर्शिता, डेटा के स्तर पर अपारदर्शिता — सबक है, और यह बाजार के हर एआई कोडिंग टूल पर लागू होता है, केवल Z.ai के टूल पर नहीं।
एविडेंस स्रोत: देखें sources/S12.md। RESEARCH_CONFIG.json के अनुसार रिसर्च विंडो: 2026-09-18 → 2026-09-22। इवेंट तिथि 2026-09-21 विंडो के भीतर है।