जो ऐप्स निर्भरता के रूप में GitHub पर पुराने रिपॉजिटरी नामों का उपयोग करते हैं, वे वास्तव में उपयोगकर्ताओं को मैलवेयर की ओर ले जा सकते हैं। यहां वह है जो आपको जानना आवश्यक है।
यह तेजी से स्पष्ट हो रहा है कि GitHub री-जैकिंग डेवलपर्स के लिए एक वैध जोखिम पैदा करता है। हैकर्स पुराने रिपॉजिटरी को हाईजैक करके उपयोगकर्ताओं और कंपनियों के GitHub नाम बदलने का फायदा उठा सकते हैं नाम इस आशा में कि उनके द्वारा जोड़ी गई दुर्भावनापूर्ण फ़ाइलें उन अनुप्रयोगों द्वारा प्राप्त की जा सकती हैं जो कोड का उपयोग करते हैं निर्भरता.
इसलिए, यह महत्वपूर्ण है कि यदि आपने हाल ही में अपना उपयोगकर्ता नाम बदला है या अन्य रिपॉजिटरी को निर्भरता के रूप में संदर्भित किया है, तो आप अपने स्वयं के GitHub प्रोजेक्ट की सुरक्षा के लिए कदम उठाएं।
रेपोजैकिंग क्या है?
GitHub रिपॉजैकिंग एक प्रकार का शोषण है जो रिपॉजिटरी मालिक द्वारा अपना उपयोगकर्ता नाम बदलने के बाद हो सकता है। पुराना उपयोगकर्ता नाम और रिपॉजिटरी नाम संयोजन उपलब्ध हो जाता है, और एक रिपॉजिटरी उपयोगकर्ता नाम का दावा करके इसकी निर्भरता का लाभ उठा सकता है और एक भंडार बनाना इसी नाम से.
रिपोजैकिंग से दो अलग-अलग प्रकार के जोखिम उत्पन्न हो सकते हैं:
- रीपोजैकिंग अन्यथा भरोसेमंद एप्लिकेशन को अविश्वसनीय बना सकती है। यदि आप ऐसे एप्लिकेशन का उपयोग करते हैं जो निर्भरता के रूप में GitHub रिपॉजिटरी का उपयोग करता है और मालिक रिपॉजिटरी का नाम बदल देता है, तो एप्लिकेशन का उपयोग करने से आप असुरक्षित हो जाएंगे।
- रिपोजैकिंग आपके द्वारा विकसित किए जा रहे एप्लिकेशन को जोखिम में डाल सकती है। यदि आप GitHub रिपॉजिटरी को एक निर्भरता के रूप में संदर्भित करते हैं और रिपॉजिटरी का नाम बदलने पर इसे नोटिस करने या अपडेट करने में विफल रहते हैं, तो आपका एप्लिकेशन रिपॉजैकिंग कारनामों के प्रति संवेदनशील होगा।
रिपोजैकिंग से उपयोगकर्ताओं के लिए कोई बड़ा खतरा पैदा नहीं होता है, लेकिन यह मानने का वैध कारण है कि यह गंभीर आपूर्ति श्रृंखला हमले के लिए तंत्र के रूप में काम कर सकता है। यदि किसी एप्लिकेशन में एक निर्भरता है जो रिपॉजिटरी को संदर्भित करती है, तो यह रिपॉजिटरी से कोड मांगेगा और प्राप्त करेगा जिसमें मैलवेयर हो सकता है।
यदि आप GitHub पर विकास करते हैं, तो जानें कि आप कैसे कर सकते हैं आपूर्ति श्रृंखला हमलों के अपने जोखिम को कम करें और रिपॉजैकिंग - अपहृत रिपॉजिटरी होने और निर्भरता वाला तीसरा पक्ष होने दोनों के संदर्भ में - महत्वपूर्ण है।
रेपोजैकिंग जोखिम को कैसे कम करें
रिपोजैकिंग हमले एक अत्यंत पूर्वानुमानित तंत्र पर निर्भर करते हैं: अपहर्ता एक लावारिस भंडार का नियंत्रण लेते हैं और फिर किसी भी एप्लिकेशन का लाभ उठाते हैं जो इसे निर्भरता के रूप में संदर्भित करता है। सौभाग्य से, इससे री-जैकिंग से निपटना आसान हो जाता है।
रिपॉजिटरी के निजी क्लोन बनाएं
एक भंडार क्लोनिंग यह आपके प्रोजेक्ट में निर्भरता से जुड़े जोखिम को कम करने का एक शानदार तरीका है क्योंकि आपकी निजी प्रतिलिपि पर आपका पूर्ण नियंत्रण होगा। जैसा कि दस्तावेज़ में बताया गया है, आप किसी सार्वजनिक भंडार की क्लोनिंग और मिरर पुशिंग द्वारा उसकी एक निजी प्रतिलिपि बना सकते हैं GitHub.
अपनी परियोजना निर्भरताओं को सावधानीपूर्वक ट्रैक करें
यदि आप तय करते हैं कि आप परेशानी से बचना पसंद करेंगे और सार्वजनिक रिपॉजिटरी का संदर्भ लेंगे, तो आपको यह सुनिश्चित करना चाहिए कि आप अपनी परियोजना निर्भरताओं का बार-बार ऑडिट करें। वर्ष में कुछ बार अपनी निर्भरता की स्थिति की जाँच करने में अधिकतम एक घंटे से भी कम समय लगेगा—और यह आपको बहुत अधिक तनाव से बचाएगा।
अपने खाते का नाम बदलने पर पुनर्विचार करें
आदर्श रूप से, अपना उपयोगकर्ता नाम अद्यतन रखना चिंता का कोई कारण नहीं होगा। हालाँकि, री-जैकिंग के जोखिम को देखते हुए, आपको अपना पुराना नाम रखने पर विचार करना चाहिए। यदि आपको अपना उपयोगकर्ता नाम बदलना है, तो आपको किसी अन्य खाते को पंजीकृत करके पुराने नाम पर दावा करना चाहिए और उसे आरक्षित करना चाहिए।
बाहरी संसाधनों का बुद्धिमानी से उपयोग करें
निर्भरताएं एक अंतर्निहित जोखिम पैदा करती हैं क्योंकि वे आपके एप्लिकेशन में तृतीय-पक्ष पहुंच बिंदु बनाती हैं। हालाँकि वे आम तौर पर बचाए गए समय के लायक होते हैं, नियमित रूप से आपकी परियोजना निर्भरताओं का ऑडिट करना महत्वपूर्ण है। शोषण को रोकने के लिए आपको अन्य सुरक्षा उपाय भी करने चाहिए, जैसे एसएसएच प्रमाणीकरण का उपयोग करना।