लोकप्रिय TypeScript लाइब्रेरी में गंभीर कमजोरी: डेवलपर्स को क्या जानना चाहिए
25 मार्च 2025 को, सुरक्षा टीम ने TypeScript इकोसिस्टम की सबसे लोकप्रिय लाइब्रेरी में से एक — ts-utils-core में एक गंभीर कमजोरी (CVE-2024-XXXXX) दर्ज की। इस लाइब्रेरी का उपयोग GitHub पर 50,000 से अधिक प्रोजेक्ट्स में किया जाता है, जिसमें बड़े कॉर्पोरेट समाधान और स्टार्टअप शामिल हैं। यह कमजोरी हमलावर को सर्वर पर दूरस्थ रूप से मनमाना कोड निष्पादित करने की अनुमति देती है, जिससे डेटा की अखंडता और एप्लिकेशन के संचालन को खतरा होता है।
कमजोरी का विवरण
समस्या parseConfig फंक्शन में इनपुट डेटा के गलत प्रसंस्करण से संबंधित है, जो कॉन्फ़िगरेशन फ़ाइलों को पार्स करने के लिए जिम्मेदार है। अपर्याप्त टाइप वैलिडेशन के कारण, हमलावर एक विशेष रूप से तैयार JSON ऑब्जेक्ट भेज सकता है, जो एप्लिकेशन के संदर्भ में मनमाना JavaScript कोड निष्पादित करने का कारण बनता है। लाइब्रेरी के 4.0.0 से 4.7.3 तक के वर्जन कमजोर हैं।
संभावित परिणाम
- दूरस्थ कोड निष्पादन (RCE) — हमलावर सर्वर पर पूर्ण नियंत्रण प्राप्त कर सकता है।
- डेटा लीक — गोपनीय जानकारी, API कुंजियों और डेटाबेस तक पहुंच।
- उपयोगकर्ताओं से समझौता — यदि लाइब्रेरी क्लाइंट साइड पर उपयोग की जाती है, तो ब्राउज़र में दुर्भावनापूर्ण कोड चलाना संभव है।
- सेवा से इनकार (DoS) — गलत इनपुट एप्लिकेशन को क्रैश कर सकता है।
अपने प्रोजेक्ट को कैसे सुरक्षित रखें
लाइब्रेरी के डेवलपर्स ने पहले ही 4.7.4 वर्जन में पैच जारी कर दिया है। यदि आप ts-utils-core का उपयोग कर रहे हैं, तो दृढ़ता से अनुशंसा की जाती है:
- तुरंत डिपेंडेंसी को वर्जन 4.7.4 या उससे ऊपर अपडेट करें कमांड के साथ:
npm install ts-utils-core@latest। - जांचें कि क्या ट्रांज़िटिव डिपेंडेंसी में कमजोर वर्जन का उपयोग नहीं हो रहा है (
npm auditयाyarn auditका उपयोग करें)। - यदि अपडेट संभव नहीं है, तो कोड में
parseConfigफंक्शन को अस्थायी रूप से अक्षम करें। - भविष्य में इसी तरह की त्रुटियों के जोखिम को कम करने के लिए TypeScript की सख्त टाइप जांच चालू करें (
strict: truetsconfig.json में)।
सुरक्षा अनुशंसाएँ
यह घटना डिपेंडेंसी के नियमित ऑडिट के महत्व की याद दिलाती है। Dependabot या Renovate जैसे स्वचालित अपडेट टूल का उपयोग करें, और GitHub से सुरक्षा सूचनाओं की सदस्यता लें। महत्वपूर्ण प्रोजेक्ट्स के लिए, न्यूनतम विशेषाधिकार नीति लागू करने और तीसरे पक्ष के कोड के निष्पादन को सैंडबॉक्स में अलग करने की अनुशंसा की जाती है।
PythonLib पर अपडेट के लिए बने रहें — हम आपको प्रोग्रामिंग और सुरक्षा की दुनिया में महत्वपूर्ण घटनाओं के बारे में सूचित करते रहेंगे।