Nx सप्लाई-चेन उल्लंघन (S1ngularity): चुराए गए प्रकाशित टोकन के माध्यम से npm पर दुर्भावनापूर्ण Nx पैकेज प्रकाशित किए गए
प्रमुख अपडेट
26 अगस्त, 2025 को हमलावरों ने GitHub Actions वर्कफ़्लो इंजेक्शन का लाभ उठाकर NPM प्रकाशन टोकन चुराने के बाद लगभग चार घंटे तक npm पर कई Nx पैकेज के दुर्भावनापूर्ण संस्करण प्रकाशित किए। दुर्भावनापूर्ण पैकेजों में पोस्टइंस्टॉल कोड शामिल था जो स्थानीय मशीनों पर रहस्यों को स्कैन करता था और स्थानीय AI CLIs (रिपोर्ट किए गए उदाहरण: Claude, Gemini) का उपयोग करके एक्सफिल्ट्रेशन के लिए फ़ाइलों की पहचान करने में मदद करता था, फिर परिणामों को सार्वजनिक GitHub रिपोजिटरी में अपलोड कर दिया। Nx ने विषाक्त पैकेज हटा दिए हैं, टोकन रद्द कर दिए हैं, एक विस्तृत पोस्टमॉर्टम और सलाह प्रकाशित की है, और मैनुअल अनुमोदनों के साथ npm ट्रस्टेड पब्लिशर्स / OIDC पर प्रकाशन स्थानांतरित कर दिया है।
यह क्यों महत्वपूर्ण है
यह एक उच्च-प्रभाव सप्लाई-चेन समझौता है जिसका सीधे डेवलपर पर प्रभाव पड़ता है: Nx का व्यापक रूप से JavaScript/TypeScript मोनोरेपो और CI पाइपलाइनों में उपयोग किया जाता है, इसलिए विषाक्त पैकेजों की एक छोटी खिड़की ने कई डेवलपर मशीनों और CI सिस्टम में जोखिम को बढ़ा दिया। यह घटना तीन जुड़े हुए विफलता मोड दिखाती है जिन्हें आपको व्यावहारिक खतरों के रूप में मानना चाहिए: असुरक्षित GitHub Actions पैटर्न (pull_request_target के साथ असुरक्षित इनपुट और अत्यधिक व्यापक वर्कफ़्लो अनुमतियाँ), लंबे समय तक जीवित/अधिकृत प्रकाशन क्रेडेंशियल्स, और मैलवेयर जो स्थानीय AI डेवलपर उपकरणों का उपयोग अपने अन्वेषण/एक्सफिल्ट्रेशन टूलकिट के हिस्से के रूप में करता है।
व्यवसायियों के लिए, तत्काल परिचालन क्रियाएँ सीधी और तात्कालिक हैं: पुष्टि करें कि क्या आपने प्रभावित Nx पैकेज संस्करणों में से कोई इंस्टॉल किया है और उन संस्करणों वाले किसी भी सिस्टम को संभावित रूप से समझौता किया हुआ मानें; किसी भी उजागर टोकन और क्रेडेंशियल्स (GitHub और npm) को घुमाएँ और रद्द करें, GitHub ऑडिट/सुरक्षा लॉग की जांच करें कि क्या अप्रत्याशित रिपोजिटरी या CLI गतिविधि है, पैकेज और NPX कैश को साफ करें, और पैच किए गए Nx रिलीज़ पर अपडेट करें। CI/DevOps पक्ष पर, इस वेक्टर को सक्षम करने वाले पैटर्न को समाप्त करें: असुरक्षित इनपुट के लिए pull_request_target से बचें, वर्कफ़्लो अनुमतियों को न्यूनतम करें (डिफ़ॉल्ट रूप से केवल पढ़ने के लिए टोकन), उन प्रकाशन पाइपलाइनों से workflow_dispatch को हटा दें जो असुरक्षित ट्रिगर्स को स्वीकार करती हैं, रजिस्ट्री प्रकाशन के लिए OIDC और छोटे जीवनकाल वाले क्रेडेंशियल्स को प्राथमिकता दें, फोर्क या बाहरी योगदानकर्ताओं से उत्पन्न रिलीज़ के लिए स्पष्ट मैनुअल अनुमोदनों की आवश्यकता करें, और प्रकाशित कलाकृतियों के लिए उत्पत्ति जांचें। अंत में, स्थानीय डेवलपर वातावरण को संभावित एक्सफिल्ट्रेशन लक्ष्यों के रूप में मानें: विकास मशीनों पर प्लेनटेक्स्ट रहस्यों को सीमित करें, क्रेडेंशियल प्रबंधकों का उपयोग करें, और असामान्य आउटबाउंड गतिविधि या हाल ही में बनाए गए सार्वजनिक रिपोजिटरी की निगरानी करें जो लीक किए गए डेटा को शामिल कर सकते हैं।
यह घटना एक अनुस्मारक है कि सप्लाई-चेन स्वच्छता के लिए सुरक्षित CI पैटर्न और त्वरित घटना प्लेबुक दोनों की आवश्यकता होती है; केवल टूलिंग को अपग्रेड करना पर्याप्त नहीं है जब तक कि प्रकाशन प्रवाह और वर्कफ़्लो अनुमतियाँ लॉक नहीं की जातीं और टोकन जीवनकाल को सीमित नहीं किया जाता।
स्रोत
आगे पढ़ें
Node.js v25 2025‑10‑15 के लिए निर्धारित — semver‑major रिलीज निकट है
30 सितंबर 2025Node.js v25 15 अक्टूबर, 2025 के लिए निर्धारित है (कमिट कटऑफ 2025‑09‑15)। टीमों को नए मेजर के खिलाफ CI चलाना चाहिए, नेटिव मॉड्यूल का सत्यापन करना चाहिए, और कैनरी डिप्लॉयमेंट के लिए तैयारी करनी चाहिए।
Azure Functions Proxies: सामुदायिक समर्थन 2025‑09‑30 को समाप्त — अब Proxies से माइग्रेट करें
29 सितंबर 2025Azure ने घोषणा की है कि Azure Functions Proxies 2025‑09‑30 के बाद असमर्थित होंगे; जो टीमें अभी भी Proxies का उपयोग कर रही हैं, उन्हें तुरंत एक समर्थित API सतह (APIM, Front Door, या एक हल्का रिवर्स प्रॉक्सी) पर इन्वेंटरी और माइग्रेट करना चाहिए।
NodeShield: रनटाइम SBOM प्रवर्तन (CBOM) Node.js के लिए आपूर्ति श्रृंखला हमलों को नगण्य ओवरहेड के साथ सीमित करता है
28 सितंबर 2025एक नया पेपर NodeShield का परिचय देता है, जो एक रनटाइम प्रवर्तन प्रणाली है जो SBOMs का उपयोग करती है जो प्रति-निर्भरता क्षमताओं (CBOM) के साथ विस्तारित होती है ताकि Node.js में आपूर्ति श्रृंखला के दुरुपयोग को ~98% प्रभावशीलता और <1ms ओवरहेड के साथ रोका जा सके।