गिटहब में 35K दुर्भावनापूर्ण कोड सम्मिलन: हमला या बग-बाउंटी प्रयास? प्लेटोब्लॉकचैन डेटा इंटेलिजेंस। लंबवत खोज। ऐ.

गिटहब में 35K दुर्भावनापूर्ण कोड सम्मिलन: हमला या बग-बाउंटी प्रयास?

सॉफ़्टवेयर विशेषज्ञों ने आज कहा कि "Pl0xP" हैंडल से जाने वाले एक हैकर ने बड़ी संख्या में GitHub रिपॉजिटरी को क्लोन किया और क्लोन किए गए रिपॉजिटरी नामों को थोड़ा बदल दिया, जिससे वैध परियोजनाओं का प्रतिरूपण किया जा सके - इस प्रकार संभावित रूप से कोड आयात करने वाले किसी भी सॉफ़्टवेयर को संक्रमित किया जा सकता है।

व्यापक क्लोनिंग के परिणामस्वरूप विभिन्न कोड रिपॉजिटरी में 35,000 से अधिक दुर्भावनापूर्ण यूआरएल डाले गए, हालांकि प्रभावित सॉफ्टवेयर प्रोजेक्टों की सटीक संख्या बहुत कम होने की संभावना है, सॉफ्टवेयर इंजीनियर स्टीफन लेसी ने एक सुबह ट्विटर पोस्ट में कहा। आक्रमण, का एक प्रकार निर्भरता भ्रमउन्होंने कहा, सॉफ्टवेयर स्रोत के पर्याप्त सत्यापन के बिना नकली GitHub रिपॉजिटरी का उपयोग करने वाले डेवलपर्स के लिए समस्याएं पैदा हो सकती हैं।

लेसी के अनुसार, यदि आयात किया जाता है, तो दुर्भावनापूर्ण कोड सिस्टम पर कोड निष्पादित करता है। “यह हमला स्क्रिप्ट, एप्लिकेशन, लैपटॉप (इलेक्ट्रॉन ऐप्स) का संपूर्ण ENV हमलावर के सर्वर पर भेज देगा! ईएनवी में शामिल हैं: सुरक्षा कुंजी; AWS एक्सेस कुंजियाँ; क्रिप्टो कुंजियाँ... और भी बहुत कुछ। 

"ईएनवी" पर्यावरण चर हैं, जिनका उपयोग उन सूचनाओं को संग्रहीत करने के लिए किया जाता है जिन्हें डेवलपर्स अपने वर्कफ़्लो में संदर्भित करना चाहते हैं।

लैसी ने कहा कि सॉफ्टवेयर इंजीनियर को दुर्भावनापूर्ण कार्यक्षमता तब मिली जब उसने एक सॉफ्टवेयर लाइब्रेरी का ऑडिट किया जिसे वह अपने प्रोजेक्ट में शामिल करने पर विचार कर रहा था।

"जब मैं एक प्रोजेक्ट की समीक्षा कर रहा था तो मुझे इस कारनामे का पता चला, जो मुझे Google खोज से मिला," उन्होंने ट्वीट किया. "यही कारण है कि हम इंटरनेट से यादृच्छिक पैकेज इंस्टॉल नहीं करते हैं!"

क्लोनिंग - या "फोर्किंग" - कोई नई दुर्भावनापूर्ण तकनीक नहीं है, लेकिन यह एक पेचीदा तकनीक है।

एक्वा सिक्योरिटी सॉफ्टवेयर इंजीनियर मोर वेनबर्ग कहते हैं, "बुरे कलाकारों को पहले से ही दुर्भावनापूर्ण कोड के साथ क्लोन/फोर्क्ड लोकप्रिय रिपॉजिटरी बनाने के लिए जाना जाता है।" “इसे पहचानना काफी मुश्किल हो सकता है, क्योंकि क्लोन किए गए रिपॉजिटरी मूल लेखकों के उपयोगकर्ता नाम और ईमेल पते के साथ कोड कमिट बनाए रख सकते हैं, जिससे यह भ्रामक धारणा बनती है कि नए कमिट मूल प्रोजेक्ट लेखकों द्वारा भी किए गए थे। प्रामाणिक प्रोजेक्ट लेखकों की GPG कुंजी के साथ हस्ताक्षरित ओपन सोर्स कोड कमिट कोड की प्रामाणिकता को सत्यापित करने का एक तरीका है।

आर्मोरकोड में उत्पादों के उपाध्यक्ष मार्क लैम्बर्ट कहते हैं, "यह...किसी के द्वारा 'फर्जी' वेबसाइट खड़ा करने या फ़िशिंग ईमेल भेजने जैसा था।" "यह उन लोगों को पकड़ने जा रहा है जो ध्यान नहीं दे रहे हैं।"

हमला या वैध अनुसंधान?

GitHub में यह सामूहिक फोर्किंग वास्तविक हमला नहीं हो सकता है। इस मुद्दे की जानकारी होने का दावा करने वाले एक व्यक्ति ने व्यापक टाइपोस्क्वैटिंग को एक वैध शोध प्रयास के रूप में स्थान दिया।

“यह महज बग-बाउंटी प्रयास है। कोई नुकसान नहीं किया। रिपोर्ट जारी की जाएगी,'' ए "pl0x_plox_chiken_p0x" नाम के ट्विटर उपयोगकर्ता ने 3 अगस्त को ट्वीट किया.

जबकि एक गलत कल्पना वाली शोध परियोजना हमले की व्याख्या कर सकती है, शोध के लिए हजारों कोड परिवर्तन करना अतार्किक रूप से जोखिम भरा लगता है। इसके अलावा, ट्विटर उपयोगकर्ता ने केवल पिछले तीन दिनों में खाता पंजीकृत किया था - कम खाता जीवनकाल अक्सर धोखाधड़ी वाले ऑनलाइन व्यक्तियों की विशेषता होती है।

सॉफ्टवेयर सुरक्षा फर्म चेकमार्क्स में आपूर्ति श्रृंखला सुरक्षा इंजीनियरिंग के प्रमुख जोसेफ हारुश ने डार्क को बताया कि हमले का बग बाउंटी का हिस्सा होने का दावा "साबित होने की प्रतीक्षा कर रहा है, क्योंकि गतिविधि में दुर्भावनापूर्ण इरादे वाले व्यक्ति की विशेषताएं हैं।" पढ़ना।

किसी भी घटना में, बग-बाउंटी प्लेटफ़ॉर्म बगक्राउड में सुरक्षा संचालन के वरिष्ठ निदेशक माइकल स्केल्टन कहते हैं कि कम से कम मूल कोड रिपॉजिटरी अप्रभावित रहीं।

“हालांकि यह स्पष्ट नहीं है कि Pl0xP की बग-बाउंटी खोज की प्रकृति क्या होगी (क्योंकि सोशल इंजीनियरिंग लगभग सभी बग-बाउंटी कार्यक्रमों के दायरे से बाहर है), ऐसा लगता है कि उन्होंने कई रिपॉजिटरी को क्लोन किया है, और उन क्लोनों में अपने बदलाव किए हैं केवल - किसी भी मामले में यह परिवर्तन क्लोन किए गए मूल रिपॉजिटरी में अपना रास्ता नहीं बना पाया,'' वे कहते हैं। "रिपॉजिटरी का क्लोन बनाना एक मानक क्रिया है जो मूल रिपॉजिटरी को तब तक प्रभावित नहीं करती जब तक कि मालिक परिवर्तन को वापस मर्ज नहीं कर देता (पुल अनुरोध के माध्यम से अनुरोध किया गया), जो यहां नहीं किया गया था।"

दुर्भावनापूर्ण सॉफ़्टवेयर निर्भरताएँ प्रचुर मात्रा में हैं

GitHub ने दुर्भावनापूर्ण कोड कमिट को साफ़ कर दिया है, और 3 अगस्त की दोपहर तक, एम्बेडेड ख़राब URL की खोज में शून्य परिणाम मिले। फिर भी यह हमला शायद पहली बार है कि ओपन सोर्स प्रोजेक्ट्स को हमलावरों से निपटना पड़ा है। सॉफ़्टवेयर आपूर्ति श्रृंखला के विरुद्ध हमलों की संख्या 650 में 2021% की छलांग लगाई, मुख्य रूप से निर्भरता-भ्रम हमलों से प्रेरित होता है, जहां हमलावर एक ओपन सोर्स कोड ब्लॉक के लगभग समान नामित संस्करण का उपयोग करता है, इस उम्मीद में कि डेवलपर्स वांछित लाइब्रेरी या घटक का नाम गलत टाइप कर देंगे, या नामकरण में मामूली अंतर नहीं देखेंगे। 

दुर्भावनापूर्ण, गलत नाम वाली परियोजनाओं के साथ रिपॉजिटरी को जोड़ने के लिए हमलावर को कुछ जमीनी काम करने की आवश्यकता होती है। जुलाई में, सॉफ़्टवेयर सुरक्षा फर्म चेकमार्क्स ने GitHub पर नकली डेवलपर खाते बनाने का एक तरीका प्रकट किया, कोड कमिट के सक्रिय इतिहास के साथ पूर्ण उनकी विश्वसनीयता बढ़ाने के लिए. हारुश का कहना है कि तकनीक, नवीनतम हमले के साथ, इस बात पर जोर देती है कि अनुरक्षकों को केवल हस्ताक्षरित कोड प्रतिबद्धताओं को स्वीकार करने के लिए कदम उठाने की जरूरत है। डेवलपर्स को "संदिग्ध असत्यापित प्रतिबद्धताओं वाले पुल अनुरोधों और योगदानों से सावधान रहना होगा, [और इसकी] समीक्षा करने की आवश्यकता है ... प्रतिबद्ध संदेश में अस्वीकरण की तुलना में योगदान की सामग्री और समान नामित निर्भरताओं के हिस्से के रूप में मौजूदा निर्भरताओं को जोड़ने या संशोधित करने में योगदान योगदान,'' वह आगे कहते हैं।

भरोसा मत करो, सत्यापित करो

अपनी परियोजनाओं को विषाक्त होने से बचाने के लिए, अनुरक्षकों और डेवलपर्स को केवल उन योगदानकर्ताओं पर भरोसा करना चाहिए जो उन्हें जानते हैं और जिनके पास व्यापक और सत्यापन योग्य प्रतिबद्ध इतिहास है। हरश का कहना है कि उन्हें अपने खातों को सुरक्षित करने के लिए उपलब्ध उपकरणों - जैसे डिजिटल हस्ताक्षर और मल्टीफैक्टर प्रमाणीकरण - का भी उपयोग करना चाहिए।

"जैसे आपको अजनबियों की कैंडी पर भरोसा नहीं करना चाहिए - वैसे ही अजनबियों के कोड पर भी भरोसा नहीं करना चाहिए," वे कहते हैं। "उम्मीदवार प्रोजेक्ट का मूल्यांकन करते समय उपयोगकर्ताओं को धोखा दिया जा सकता है और उन्हें लगता है कि वे वैध हैं, [इसलिए] वे इसका उपयोग अपने स्थानीय विकास कंप्यूटरों में करते हैं, वातावरण, उत्पादन वातावरण बनाते हैं और यहां तक ​​​​कि सॉफ़्टवेयर भी बनाते हैं, [अंततः ग्राहकों पर कुछ दुर्भावनापूर्ण निष्पादित करने तक] [ सिस्टम]।"

चेकमार्क्स की जुलाई की सलाह में पहचान की जानकारी को धोखा देने और जानकारी को प्रतिबद्ध करने पर Git कमांड-लाइन उपयोगिता, कंपनी ने सॉफ्टवेयर परियोजनाओं के जोखिमों को रेखांकित किया जब दुर्भावनापूर्ण कमिटर्स खुद को ज्ञात योगदानकर्ताओं के रूप में छिपाते हैं। यह "प्रोजेक्ट को भरोसेमंद बनाता है," फर्म ने कहा. "इस कमिट-स्पूफिंग को और भी चिंताजनक बनाने वाली बात यह है कि जिस उपयोगकर्ता को धोखा दिया जा रहा है, उसे सूचित नहीं किया जाता है और उसे पता नहीं चलेगा कि उनके नाम का उपयोग किया जा रहा है।"

GitHub ने योगदानकर्ता की पहचान को सत्यापित करने के लिए कोड कमिट के लिए पहले ही डिजिटल हस्ताक्षर जोड़ दिए हैं, लेकिन प्रोजेक्ट अनुरक्षकों को "सतर्क मोड" सक्षम करना चाहिए, GitHub की एक सुविधा जो प्रत्येक कमिट और उनके योगदानकर्ता की सत्यापन स्थिति का विवरण प्रदर्शित करती है, चेकमार्क्स ने कहा।

हरश कहते हैं, कम से कम, डेवलपर्स और प्रोजेक्ट अनुरक्षकों को कभी-कभी अपने प्रतिबद्ध लॉग की समीक्षा करनी चाहिए और अपने अन्य अनुरक्षकों से जीपीजी-हस्ताक्षरित प्रतिबद्धताओं को सक्षम करने के लिए कहना चाहिए। "हस्ताक्षरित प्रतिबद्ध लॉग रखने की आदत डालने से आपको असत्यापित योगदानों पर ध्यान देने में लाभ होगा।"

टिप्पणी के लिए GitHub से तुरंत संपर्क नहीं किया जा सका।

समय टिकट:

से अधिक डार्क रीडिंग