इस अभियान में ऑटोमेशन और सोशल कैमोफ्लाज (छलावा) दोनों का इस्तेमाल किया गया ताकि मालिशियस कमिट सामान्य CI अपडेट जैसे दिखाई दें।
हमलावरों ने कई थ्रोअवे GitHub अकाउंट बनाए जिनके यूज़रनेम रैंडम थे और उन्हें ऑटोमेशन बॉट जैसा दिखाया गया। उदाहरण के तौर पर:
कमिट मैसेज और ऑथर जानकारी भी इस तरह बनाई गई कि वे सामान्य CI कॉन्फ़िगरेशन अपडेट जैसे लगें। इससे संदिग्ध गतिविधि तुरंत पकड़ में नहीं आई।
हमलावरों ने खास तौर पर उन रिपॉज़िटरी को चुना जिनमें ब्रांच प्रोटेक्शन नियम कमजोर थे या मौजूद ही नहीं थे। ऐसी स्थिति में बिना किसी पुल‑रिक्वेस्ट रिव्यू के वर्कफ़्लो फाइल सीधे डिफ़ॉल्ट ब्रांच में पुश की जा सकती थी।
हर मालिशियस कमिट में एक GitHub Actions वर्कफ़्लो फाइल डाली गई थी जिसमें Base64‑encoded Bash स्क्रिप्ट छिपी हुई थी। जब CI पाइपलाइन चलती, यह स्क्रिप्ट रनर के अंदर चलकर क्रेडेंशियल्स इकट्ठा करना शुरू कर देती थी।
इसका मतलब था कि कई मामलों में हमला तब तक निष्क्रिय रहता था जब तक अगली बार CI रन ट्रिगर न हो जाए।
वर्कफ़्लो में मौजूद Base64‑encoded स्क्रिप्ट का लक्ष्य CI वातावरण से संवेदनशील जानकारी इकट्ठा कर हमलावर के सर्वर तक भेजना था।
संभावित लक्ष्य थे:
स्क्रिप्ट CI रनर में उपलब्ध सिस्टम जानकारी और सीक्रेट्स इकट्ठा करके उन्हें कमांड‑एंड‑कंट्रोल सर्वर पर भेजने की कोशिश करती थी।
CI पाइपलाइन में अक्सर डिप्लॉयमेंट क्रेडेंशियल्स मौजूद होते हैं। इसलिए अगर बिल्ड वातावरण से समझौता हो जाए तो क्लाउड इंफ्रास्ट्रक्चर, पैकेज रजिस्ट्रियों और प्रोडक्शन सिस्टम तक पहुंच बन सकती है।
Megalodon हमले का एक बड़ा लक्ष्य GitHub Actions के OIDC टोकन थे।
आजकल कई CI/CD पाइपलाइन क्लाउड सेवाओं से कनेक्ट होने के लिए OpenID Connect (OIDC) फेडरेशन का उपयोग करती हैं। इसमें स्थायी API कुंजियाँ रखने की बजाय वर्कफ़्लो रन के दौरान एक अल्पकालिक पहचान टोकन बनाया जाता है जिसे क्लाउड प्रदाता अस्थायी एक्सेस क्रेडेंशियल्स में बदल देता है।
यह तरीका सुरक्षा के लिए बेहतर माना जाता है क्योंकि लंबे समय तक वैध रहने वाली कुंजियाँ स्टोर नहीं करनी पड़तीं। लेकिन अगर हमलावर पाइपलाइन के दौरान यह टोकन चुरा लें, तो वे अस्थायी रूप से उसी पहचान की नकल कर सकते हैं।
इससे संभावित खतरे शामिल हैं:
हालांकि OIDC टोकन जल्दी एक्सपायर हो जाते हैं, लेकिन उनके साथ जुड़े परमिशन हमलावरों के लिए काफी मूल्यवान हो सकते हैं।
Megalodon यह दिखाता है कि आधुनिक सप्लाई‑चेन हमले अब सिर्फ एप्लिकेशन कोड बदलने तक सीमित नहीं रहे। अब हमलावर ऑटोमेशन इंफ्रास्ट्रक्चर यानी CI/CD पाइपलाइन को निशाना बना रहे हैं।
CI वर्कफ़्लो को बदलकर हमलावर:
क्योंकि हजारों प्रोजेक्ट अपने बिल्ड और डिप्लॉयमेंट के लिए CI सिस्टम पर निर्भर हैं, इसलिए एक छोटा सा वर्कफ़्लो बदलाव कई डाउनस्ट्रीम सिस्टम को जोखिम में डाल सकता है।
लगभग इसी समय GitHub ने एक अलग सुरक्षा घटना का भी खुलासा किया। इसमें एक कर्मचारी के कंप्यूटर पर मालिशियस VS Code एक्सटेंशन इंस्टॉल हो गया था, जिसके जरिए हमलावरों को लगभग 3,800 आंतरिक GitHub रिपॉज़िटरी तक पहुंच मिल गई।
यह हमला एक ट्रोजनाइज्ड एक्सटेंशन के माध्यम से हुआ था जिसने डेवलपर सिस्टम से टोकन और अन्य क्रेडेंशियल्स चुरा लिए।
कुछ रिपोर्टों में दोनों घटनाओं के समय और तकनीकों में समानता की बात कही गई है। लेकिन अभी तक ऐसा कोई सार्वजनिक सबूत नहीं है जो यह साबित करे कि GitHub के आंतरिक ब्रीच ने सीधे Megalodon अभियान को संभव बनाया।
इसलिए फिलहाल इन्हें डेवलपर इकोसिस्टम में हुई दो अलग‑अलग लेकिन लगभग एक ही समय की सप्लाई‑चेन घटनाएँ माना जा रहा है।
Megalodon ने दिखाया कि ऑटोमेशन का इस्तेमाल करके हमलावर बहुत कम समय में हजारों रिपॉज़िटरी को प्रभावित कर सकते हैं। नकली बॉट अकाउंट, स्वचालित कमिट और जहरीले वर्कफ़्लो के संयोजन ने CI सिस्टम को ही क्रेडेंशियल चोरी का माध्यम बना दिया।
इस घटना के बाद सुरक्षा विशेषज्ञ कुछ प्रमुख सुरक्षा उपायों पर जोर दे रहे हैं:
जैसे‑जैसे सॉफ्टवेयर डिप्लॉयमेंट और क्लाउड इंफ्रास्ट्रक्चर अधिकतर CI/CD पाइपलाइन के जरिए नियंत्रित हो रहे हैं, वैसे‑वैसे CI/CD सुरक्षा अब सॉफ्टवेयर सप्लाई‑चेन सुरक्षा का एक केंद्रीय हिस्सा बन चुकी है।