गिटहब क्रियाओं में आर्टिफैक्ट जहर सॉफ्टवेयर पाइपलाइनों के माध्यम से मैलवेयर आयात करता है

स्रोत नोड: 1769941

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

यह सॉफ्टवेयर सप्लाई चेन सिक्योरिटी फर्म लेगिट सिक्योरिटी के अनुसार है, जिसने 1 दिसंबर को प्रकाशित एक एडवाइजरी में कहा था कि यह "आर्टिफैक्ट पॉइज़निंग" कमजोरी उन सॉफ्टवेयर प्रोजेक्ट्स को प्रभावित कर सकती है जो GitHub क्रियाओं का उपयोग करते हैं - विकास पाइपलाइनों को स्वचालित करने के लिए एक सेवा - निर्माण प्रक्रिया को ट्रिगर करके जब सॉफ़्टवेयर निर्भरता में परिवर्तन का पता चला है। 

भेद्यता सैद्धांतिक नहीं है: लेगिट सिक्योरिटी ने रस्ट का प्रबंधन करने वाली परियोजना पर एक हमले का अनुकरण किया, जिससे परियोजना लोकप्रिय जीसीसी सॉफ्टवेयर लाइब्रेरी के एक अनुकूलित - और दुर्भावनापूर्ण - संस्करण का उपयोग करके पुन: संकलित हो गई, कंपनी ने सलाहकार में कहा।

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

"यह आज एक सामान्य पैटर्न है," वे कहते हैं। "बहुत सारे ओपन सोर्स प्रोजेक्ट आज, एक परिवर्तन अनुरोध पर, वे अनुरोध को मान्य करने के लिए परीक्षणों का एक समूह चलाते हैं क्योंकि अनुरक्षक पहले कोड की समीक्षा नहीं करना चाहता है। इसके बजाय, यह स्वचालित रूप से परीक्षण चलाता है।"

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

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

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

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

लेगिट सिक्योरिटी ने कहा कि गिटहब ने इस मुद्दे की पुष्टि की और सूचना के लिए एक इनाम का भुगतान किया, जबकि रस्ट ने अपनी कमजोर पाइपलाइन को ठीक कर दिया।

स्रोत: कानूनी सुरक्षा

सॉफ़्टवेयर आपूर्ति श्रृंखला को सुरक्षा की आवश्यकता है

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

उदाहरण के लिए, मई 2021 में, बिडेन प्रशासन ने राष्ट्र की साइबर सुरक्षा में सुधार पर अपना कार्यकारी आदेश जारी किया, यह एक संघीय नियम है, जिसमें अन्य आवश्यकताओं के साथ-साथ यह अनिवार्य है कि सरकार किसी भी सॉफ्टवेयर की खरीद के लिए आधारभूत सुरक्षा मानकों की आवश्यकता होती है. निजी उद्योग पक्ष में, Google और Microsoft के पास है अरबों डॉलर देने का वादा किया ओपन सोर्स इकोसिस्टम में सुरक्षा बढ़ाने के लिए, जो कोड प्रदान करता है औसत एप्लिकेशन के कोडबेस के तीन-चौथाई से अधिक शामिल हैं.

तार्किक, लेकिन कमजोर

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

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

"जब आप ओपन सोर्स डेवलपमेंट कर रहे हैं, तो समस्या बड़ी है, क्योंकि आप दुनिया में किसी से भी योगदान स्वीकार कर रहे हैं," कैस्पी कहते हैं। "आप उन चीजों को अंजाम दे रहे हैं जिन पर आप भरोसा नहीं कर सकते।"

गिटहब ने इस मुद्दे को स्वीकार किया और बाहरी सहयोगियों से सबमिशन को एक्शन पाइपलाइन में स्वचालित रूप से डालने से रोकने के तरीकों का विस्तार किया। कंपनी अपने GetArtifact और ListArtifacts API को अपडेट किया यह निर्धारित करने में सहायता के लिए अधिक जानकारी प्रदान करने के लक्ष्य के साथ कि किसी आर्टिफैक्ट पर भरोसा किया जा सकता है या नहीं।

"कोई भी जो रस्ट प्रोजेक्ट की तरह कुछ भी करता है - किसी तीसरे पक्ष से इनपुट पर भरोसा करते हुए - फिर भी वे कमजोर हैं," कैस्पी कहते हैं। "यह एक तर्क समस्या है। गिटहब ने सुरक्षित स्क्रिप्ट लिखना आसान बना दिया है।"

समय टिकट:

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