paint-brush
पायथन में आरएटी म्यूटेंट कैसे डेटा चोरी करते हैं और जांच से बचते हैंद्वारा@hernanortiz
3,732 रीडिंग
3,732 रीडिंग

पायथन में आरएटी म्यूटेंट कैसे डेटा चोरी करते हैं और जांच से बचते हैं

द्वारा Hernán Ortiz7m2023/02/02
Read on Terminal Reader

बहुत लंबा; पढ़ने के लिए

भले ही दुर्भावनापूर्ण पायथन पैकेज हमारे सुरक्षा शोधकर्ताओं द्वारा हर दिन पाए जाते हैं, एक नए प्रकार का मैलवेयर जिसे हम आरएटी म्यूटेंट कहते हैं, हमारा ध्यान आकर्षित कर रहा है। वे समय के साथ अधिक विकसित और खतरनाक होने के लिए स्थानांतरित और अनुकूलित हो गए हैं। यहां कहानी है कि कैसे वे आपके क्रिप्टोक्यूरेंसी वॉलेट और व्यक्तिगत डेटा को चुरा सकते हैं, आपके माउस और कीबोर्ड को दूर से नियंत्रित कर सकते हैं, और पता लगाने से बचने के लिए विकसित हो सकते हैं।
featured image - पायथन में आरएटी म्यूटेंट कैसे डेटा चोरी करते हैं और जांच से बचते हैं
Hernán Ortiz HackerNoon profile picture



"एक बुद्धिमान निंजा एक ऐसे दुश्मन की तलाश नहीं करता है जिसे वह पूरी तरह से नहीं समझता है।" - टीनेज म्यूटेंट निंजा टर्टल्स से स्प्लिंटर


एक तकनीकी लेखक के रूप में विज्ञान कथा के प्रति जुनूनी होने के नाते, सोनाटाइप में मेरी नौकरी के सबसे रोमांचक हिस्सों में से एक है जब मुझे सुरक्षा अनुसंधान टीम के साथ सहयोग करने का अवसर मिलता है।


जब से हमने पाया है  पिछले महीने पायथन पैकेज की एक श्रृंखला जिसे हम आरएटी म्यूटेंट कहते हैं - उपन्यास मैलवेयर जो रिमोट एक्सेस ट्रोजन और सूचना चोरी करने वालों की क्षमताओं का लाभ उठाता है - के अनुरूप है - हमारे सुरक्षा शोधकर्ताओं को déjà vu की एक भयावह भावना है।


यह कोई दुर्लभ घटना नहीं है: वे ओपन-सोर्स रजिस्ट्रियों से लगातार सैकड़ों संदिग्ध पैकेजों का आकलन करते हैं ताकि यह निर्धारित किया जा सके कि वे वास्तव में दुर्भावनापूर्ण हैं या नहीं। इस प्रक्रिया के दौरान, वे पैकेजों के बीच परिचित पैटर्न की पहचान करते हैं, और कभी-कभी, मजबूत समानताओं को पहचानने पर, वे उनके पीछे अभिनेता/अभियान को ट्रैक करने के लिए और अनुसंधान करते हैं।


2022 के अंतिम सप्ताह और 2023 की शुरुआत के बीच, हमारे AI सिस्टम ने Pyrologin , easytimestamp , disorder , discord-dev , discorder , और style.py सहित pyrologin रजिस्ट्री पर अपलोड किए गए संदिग्ध पैकेजों को pythonstyles किया। हमारे सुरक्षा शोधकर्ताओं ने उन्हें देखा और पुष्टि की कि वे वास्तव में दुर्भावनापूर्ण थे। और आगे के विश्लेषण के बाद, उन्होंने देखा कि इन पैकेजों में कई विशेषताएं शामिल हैं जो अक्सर पायथन मैलवेयर में नहीं देखी जाती हैं।


एक वास्तविक रणनीति क्या बन गई है, खराब अभिनेता setup[.]py फ़ाइल में एक पेलोड छिपाते हैं, इसलिए डेवलपर्स को संक्रमित होने के लिए केवल एक साधारण पाइप इंस्टॉल का उपयोग करना पड़ता है। इस मामले में, वे अनजाने में एक PowerShell स्क्रिप्ट लॉन्च कर रहे होंगे जो लाइब्रेरी स्थापित करने के लिए एक ZIP फ़ाइल डाउनलोड करती है जो हमलावर को पीड़ित के माउस, कीबोर्ड को नियंत्रित करने, स्क्रीनशॉट लेने और छिपे हुए रिमोट कनेक्शन बनाने देती है। और उसके ऊपर, ये पैकेज संवेदनशील जानकारी जैसे पासवर्ड, कुकीज़, और क्रिप्टोक्यूरेंसी वॉलेट डेटा को भी बाहर निकालते हैं, और यहां तक कि रिमोट एक्सेस के लिए एक उपकरण स्थापित करने का प्रयास करते हैं। हमारे निष्कर्ष के अनुरूप थे फाइलम की तकनीकी रिपोर्ट उन्हीं पैकेजों में से।


फिर भी, सुरक्षा शोधकर्ता कार्लोस फर्नांडीज को déjà vu का भूतिया एहसास हो रहा था। सप्ताह के दौरान जब हमने पैकेजों का खुलासा किया, तो उसके दिमाग में इस मैलवेयर के पुराने संस्करणों को देखने की यादें कौंध गईं। हो सकता है कि एक खतरनाक अभिनेता समय के साथ अपने मैलवेयर को विकसित कर रहा हो, लेकिन हमें यह सुनिश्चित करने की आवश्यकता थी, इसलिए मैंने उसे यह देखने में मदद करने के लिए अपना OSINT हैट पहना कि क्या उसके अंतर्ज्ञान में कोई सच्चाई थी।

मूल कहानी

हमारे डेटाबेस पर पीछे मुड़कर देखें, तो 25 सितंबर, 2022 को PyPI रिपॉजिटरी में pygradient नामक एक पैकेज अपलोड किया गया था। हमारे एआई ने इसे संदिग्ध के रूप में फ़्लैग किया और हमारे सुरक्षा शोधकर्ताओं ने पुष्टि की कि इसमें मैलवेयर था और यह pystyle नामक एक अन्य पैकेज के स्रोतों को बंडल करता था। दोनों पुस्तकालयों द्वारा लेखक थे फ़ॉलो करें , उर्फ़ बिलीदगोट, उर्फ बिलीवी3 (loTus04 और BlueRed के योगदान के साथ)। फ्रांस के इस लेखक (कम से कम गिटहब में उसका स्थान और उसके डिस्कॉर्ड चैनलों के माध्यम से बोली जाने वाली भाषा का सुझाव है) को पीछे के व्यक्ति के रूप में श्रेय दिया जाता है हाइपीरियन , एक Python अस्पष्टकर्ता जो हमने हाल ही में अपलोड किए गए मालवेयर में अक्सर पाया है, साथ ही इसके निर्माताओं में से एक W4SP चोरी करने वाला , एक सूचना चुराने वाला है जो जुलाई से सक्रिय है चल रही आपूर्ति श्रृंखला हमला रजिस्ट्रियां खोलने के लिए।


W4SP स्टीलर दृढ़ता का दावा करता है (यह हर बार उपयोगकर्ताओं द्वारा पीसी को पुनरारंभ करने पर पुन: सक्रिय हो जाता है), अस्पष्टता (लेखक का वादा है कि यह पूरी तरह से undetectable है), और स्टेग्नोग्राफ़ी तकनीकों को एक छवि फ़ाइल के भीतर बहुरूपी और अत्यधिक अस्पष्ट पेलोड को छिपाने के लिए। मैलवेयर सभी पीड़ित के डिस्कॉर्ड खाते, क्रेडिट कार्ड, पासवर्ड और क्रिप्टो-वॉलेट हमलावर को हार्ड-कोडेड डिस्कॉर्ड वेबहुक पते के माध्यम से वापस भेजता है। इस मालवेयर में रुचि रखने वाले बैड एक्टर्स ने क्रिप्टो में लगभग 20 USD का भुगतान करके इसे खरीदा है।



छवि को डिकोड करने के बाद, एक छिपा हुआ बेस 64 अस्पष्ट पायथन कोड प्रकट होता है।



मूल रूप से, pystyle में दुर्भावनापूर्ण प्रकृति नहीं थी - पठनीयता और उपयोगकर्ता अनुभव को बढ़ाने के लिए शैली और रंग कंसोल आउटपुट के लिए एक हानिरहित पैकेज। लेकिन फाइलम शोध के अनुसार, एक बार यह लोकप्रिय हो गया (पैकेज अभी भी PyPI पर सक्रिय है और यह हर महीने 40,000 से अधिक डाउनलोड जमा करता है), उन्होंने कुछ रिलीज में W4SP मैलवेयर जोड़ने का फैसला किया।


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


कार्लोस के साथ करीब से देखने के बाद, हमने पाया कि इस प्रोटो-आरएटी म्यूटेंट मैलवेयर में दिसंबर के संस्करणों की कुछ विशेषताओं का अभाव था: भले ही इसने एक पॉवरशेल स्क्रिप्ट लॉन्च की और संवेदनशील डेटा को एक्सफ़िल्टर्ड किया, इसने बेस 64 एन्कोडेड पेलोड या अनुमति सूची का उपयोग नहीं किया txt फ़ाइल स्वयं-संक्रमण से बचने के लिए। एक तरह से यह एक हल्का, कम परिष्कृत संस्करण था।


लेकिन फिर हमने नवंबर की शुरुआत में अपलोड किए गए पैकेजों को देखा, जिसमें paintpy , devicespoof और devicespoofer शामिल थे, और गहराई से गोता लगाने के बाद, हमें अपने संदेह की पुष्टि मिली: मैलवेयर वास्तव में विकसित हो रहा था।

एक नकलची पीछा करने वाला मालवेयर

भले ही BillyTheGoat नवंबर से GitHub पर सक्रिय नहीं है, हम अभी भी मैलवेयर ढूंढ रहे हैं जो उनकी रचनाओं पर आधारित है या उनसे सीधे चोरी कर रहा है, ज्यादातर एक उपयोगकर्ता द्वारा जो स्पष्ट रूप से पुर्तगाल में स्थित है जिसे कहा जाता है zeekt .


इस उपयोगकर्ता ने PyPI में हाल ही में हटाए गए पैकेज को pystilez नाम से अपलोड किया है, जो pystilez को गलत तरीके से क्रेडिट किया गया था जो दिखने में ऐसा था स्टार्टजैकिंग —एक लोकप्रिय GitHub लाइब्रेरी से जोड़कर अपने नए पैकेज की प्रतिष्ठा बढ़ाने की एक तकनीक, इस प्रकार इसके सैकड़ों सितारों और कांटे से जुड़ा हुआ है।


चेकमार्क्स ट्रैक किया गया है यह बुरा अभिनेता apicolor (समान नाम वाली विविधताओं के साथ) नामक पैकेज में W4SP हमले को खोजने के बाद जिसमें उनके दुर्भावनापूर्ण कोड के भीतर एक डिस्कॉर्ड सर्वर लिंक शामिल था। व्यवस्थापक प्रोफ़ाइल एक सत्यापित स्टीम खाते से जुड़ा हुआ है और नाम "ज़ीकट" हमलावर के स्टीम उपनामों में से एक के रूप में दिखाई दिया।


चेक प्वाइंट यह भी बताया कि यह धमकी देने वाला अभिनेता वैधता बढ़ाने के लिए लोकप्रिय GitHub खातों की प्रोफाइल कॉपी करके नकली उपयोगकर्ता बना रहा था। और उनके पीड़ितों में से एक ने बनाने का फैसला किया एक YouTube वीडियो उनके एक फर्जी प्रोफाइल के झांसे में आने के बाद लोगों को इस हमले के बारे में चेतावनी देना।


एक सुरक्षा शोधकर्ता ने शैक्षिक उद्देश्यों के लिए ज़ीकट के पेलोड में से एक को पोस्ट किया और उसे W4SP स्टीलर के सह-लेखक से एक दिलचस्प उत्तर मिला:




आपके चोरी करने वाले के लिए चोरी होना कितनी विडंबना है।


एक ही लेखक, जाहिरा तौर पर एक 17 वर्षीय पायथन डेवलपर, अपने गिटहब प्रोफाइल पर रीडमे फ़ाइल में अपनी निराशा को दोहराता है:



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


स्नीकियर वेरिएंट आपकी क्रिप्टो वेल्थ को कुतर देता है

कार्लोस को हाल ही में चार और पैकेज मिले हैं zeekt : forenitq , forenith , forenity और forenitz . आगे की जाँच के बाद, उन्होंने उन्हें दुर्भावनापूर्ण के रूप में टैग किया और उन्हें नीचे ले जाने के लिए PyPI को रिपोर्ट किया। सबसे तेज़ मामले को प्रकाशन से हटाने तक लगभग 20 मिनट लगे।


setup[.]py in forenitq को देखते हुए , कार्लोस ने निम्नलिखित प्रथम-चरण पेलोड पाया:




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


इस लेखन के समय, hxxp://20[.]226[.]18[.]203 पर होस्ट किया गया पेज अभी भी सक्रिय है और यह केवल एक डिस्कोर्ड आमंत्रण का लिंक दिखाता है जो पहले से ही समाप्त या निजी है।


कार्लोस ने देखा कि पैकेज लोकप्रिय होने का दिखावा कर रहा था रंगमा पैकेज, संभावित StarJacking प्रयास के लिए उनके मेटाडेटा का उपयोग करना।


RAT फ़ाइल को अस्पष्ट करने के बाद, उसे एक लाइन मिली जो एक संभावित क्लिपबोर्ड अपहर्ता को लोड करती है, लेकिन इसकी विशिष्टताएँ base64 एन्कोडेड थीं:


डिकोड करने पर, हमें एक पीड़ित के क्लिपबोर्ड को हाईजैक करने के लिए डिज़ाइन किया गया एक पायथन कोड मिलता है, जो हमलावर के पते के साथ इच्छित क्रिप्टोक्यूरेंसी वॉलेट पते को बदलने के लिए होता है:


यह बिटकॉइन (bc1), एथेरियम (0x), मोनेरो (4), और litecoin (L या M या 3) जैसे निर्दिष्ट पैटर्न की तलाश करता है, और जब एक पैटर्न पाया जाता है, तो यह इच्छित पते को हमलावर के क्रिप्टोक्यूरेंसी वॉलेट पते से बदल देता है। .


कोड का उपयोग करता है pyperclip क्लिपबोर्ड डेटा को कॉपी और पेस्ट करने के लिए लाइब्रेरी। यह पुस्तकालय स्थापित करेगा यदि यह पहले से स्थापित नहीं है और फिर क्लिपबोर्ड पर क्रिप्टोकुरेंसी वॉलेट पता कॉपी करें। वॉलेट एड्रेस पैटर्न के लिए क्लिपबोर्ड की निगरानी के लिए कोड को एक सतत लूप पर सेट किया जाता है।


इसके अतिरिक्त, हमने इस आरएटी उत्परिवर्ती का पता लगाने से बचने के लिए उपयोग की जाने वाली और तकनीकों को उजागर किया: एक प्रथम-चरण पेलोड फ़ाइल में जोड़ा गया forenitq/ansi[.]py setup[.]py और एक दूसरे चरण का बहुरूपी पेलोड जो हर बार आपके चलने पर बदल जाता है द्विआधारी।


हमलावर ने एक बहुत ही पूर्ण सहायता मेनू के साथ एक नया आदेश और नियंत्रण भी जोड़ा—और इस बार से फला पोर्टुगुएस:



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


IOCs (समझौता के संकेतक)

hxxp://20[.]226[.]18[.]203/inject/tCxFLYLT6ViY9ZnP

hxxp://20[.]226[.]18[.]203/clip

hxxp://20[.]226[.]18[.]203/rat