पृष्ठभूमि
एक ओपन सोर्स बड़ा मॉडल डाउनलोड करें, आपकी चिंता आमतौर पर यह होती है कि क्या यह सही ढंग से काम करेगा या वजन वास्तविक हैं। इस बार, वास्तविक चिंता कहीं और छिपी है: 27B पैरामीटर के रूप में लेबल किए गए एक रिपॉजिटरी को आपके हाथों में मिलता है, लेकिन अंदर केवल 487 KB है—इसमें वजन नहीं, बल्कि चोरी करने वाला मैलवेयर है।
20 अगस्त, 2026 को, GitHub रिपॉजिटरी unburdened-jackinthebox365/qwen38-uncensored ने assets/ निर्देशिका में uncensored_qwen_v2.6.zip नाम का एक फ़ाइल सबमिट किया, जिसका आकार 487,153 बाइट्स था। रिपॉजिटरी ने इसे लगभग अदृश्य रूप से पैक किया: होमपेज पर Qwen 3.8 27B के स्थानीय क्वांटाइज्ड वेट्स प्रदान करने का दावा किया गया, README में पूरी तरह से ऑफलाइन चलाने, कोई टेलीमेट्री नहीं, और डेटा कभी स्थानीय मशीन से बाहर नहीं जाने को जोर देकर बताया गया, हर वाक्य स्थानीय मॉडल उपयोगकर्ताओं के लिए सही समय पर सटीक रूप से मेल खाता है। चार दिन बाद, 24 अगस्त को, README में फिर से परिवर्तन किया गया—डाउनलोड बटन, पाठ में डाउनलोड लिंक, और मूल रूप से Ollama और LM Studio की आधिकारिक वेबसाइट्स की ओर इशारा करने वाले दो बाहरी लिंक, सभी एक ही ZIP के raw पते की ओर रीडायरेक्ट कर दिए गए।

अब तक, कमी स्पष्ट हो चुकी है। एक 27B पैरामीटर वाला Q4_K_M क्वांटाइज्ड मॉडल, आमतौर पर 16 GB से अधिक स्थान लेता है, और रिपॉजिटरी के साथ आने वाले bin/install.cjs द्वारा प्रिंट किया गया संकेत भी लगभग 16.8 GB का उल्लेख करता है। लेकिन वास्तविक रूप से प्राप्त संपत्ति केवल 487 KB है, जिसे निकालने पर केवल तीन फ़ाइलें मिलती हैं—Application.cmd, util.exe और cert.txt, और कोई GGUF वेट्स नहीं।
हम इस आधार पर निष्कर्ष निकालते हैं कि यह एक छलावा रिपॉजिटरी है जो Qwen के नाम का दुरुपयोग करके फाइलें वितरित कर रही है, और Qwen का औपचारिक प्रोजेक्ट अभी तक सुरक्षित है। रिपॉजिटरी में Node.js स्थापना स्क्रिप्ट सतही रूप से 'Modelfile लिखें → ollama create को कॉल करें' प्रक्रिया को लागू करती है, लेकिन इसकी वर्तमान में गतिशील पुष्टि नहीं की गई है; रिपॉजिटरी का मुख्य कोड सामान्य प्रोजेक्ट के बाहरी रूप को बनाए रखता है, जबकि दुर्भावनापूर्ण ZIP को assets/ में डाउनलोड के संसाधन के रूप में प्रस्तुत किया गया है। केवल सामान्य स्रोत कोड की जाँच करना और डाउनलोड किए गए संसाधनों को अनजिप न करना, इस प्रवेश बिंदु को लापता कर सकता है।
यह लेख मुख्य रूप से स्थिर साक्ष्य पर आधारित है और कोई भी नमूना चलाया नहीं गया है। C2 अनुरोध को सिमुलेटेड होस्ट डेटा के साथ पुनर्निर्मित किया गया है, केवल प्रतिक्रिया पढ़ी गई और लोड डाउनलोड किया गया, लेकिन डाउनलोड किए गए सामग्री को नहीं चलाया गया है, और अंतिम अपलोड एंडपॉइंट पर भी जाना नहीं गया है; लेख में वर्णित व्यवहार का अर्थ है कि कोड में संबंधित कार्यान्वयन या कॉल पथ मौजूद है, लेकिन इसका अर्थ यह नहीं है कि ये क्रियाएँ वास्तविक होस्ट पर हुई हैं।
MistEye प्रतिक्रिया
MistEye, SlowMist द्वारा स्वयं विकसित एक Web3 खतरा सूचना और वास्तविक समय सुरक्षा मॉनिटरिंग सिस्टम है, जो सुरक्षा मॉनिटरिंग और सूचना संग्रह क्षमताओं को एकीकृत करता है और उपयोगकर्ताओं को वास्तविक समय में जोखिम चेतावनी और संपत्ति संरक्षण प्रदान करता है।
इस घटना में, MistEye ने बेस रिपॉजिटरी, डाउनलोड किए गए संसाधनों और बाद के लोड का स्टैटिक विश्लेषण किया, सिमुलेटेड होस्ट जानकारी का उपयोग करके C2 अनुरोध का पुनर्निर्माण किया और प्रतिक्रिया और डाउनलोड साक्ष्य को सहेजा, बहु-चरण डिलीवरी चेन को पुनर्स्थापित किया और नेटवर्क और फाइल IOC निकाले। 26 अगस्त को C2 की उपलब्धता और वितरण सुविधाओं के रोटेशन की पुनरावृत्ति की गई, साथ ही 23 रिपॉजिटरी में फैले 29 समान ZIP फ़ाइलों की ऑफ़लाइन व्यवहार तुलना की गई। संबंधित IOC को MistEye खतरा पता लगाने वाले इंजन में एकीकृत कर दिया गया है।

नीचे विस्तृत तकनीकी विश्लेषण है।
487 KB डाउनलोड पैकेज में तीन फाइलें
Application.cmd की पूरी सामग्री एक आदेश है:
start util.exe cert.txt
न्यूलाइन सहित कुल 25 बाइट्स। इसने मॉडल को अनजिप नहीं किया है और ओलामा को भी कॉल नहीं किया है, बस समान डायरेक्टरी में मौजूद util.exe को एक टेक्स्ट फाइल पढ़ने के लिए भेजा गया है, और नियंत्रण cert.txt में मौजूद Lua स्क्रिप्ट को सौंप दिया गया है। आर्काइव में कोई अन्य फाइल नहीं है, ये तीनों ही सामग्री हैं।
util.exe का आकार 759,808 बाइट है, जो LuaJIT 2.1 इंटरप्रेटर का नाम बदला गया संस्करण है। LuaJIT स्वयं एक व्यापक रूप से वैध सॉफ़्टवेयर द्वारा उपयोग किया जाने वाला Lua रनटाइम है। PE में शेष PDB पथ D:\a\defold\...\luajit.pdb लिखा हुआ है, जो Defold गेम इंजन के बन्डल प्रोडक्ट की ओर संकेत करता है। स्टैटिक विश्लेषण ने util.exe में स्क्रिप्ट पर निर्भर न होने वाले कोई दुर्भावनापूर्ण व्यवहार नहीं पाया है; यह फ़ाइल केवल समान डायरेक्टरी में मिश्रित Lua को निष्पादित करती है।
cert.txt का नाम प्रमाणपत्र की तरह है, और इसकी सामग्री 182,116 बाइट्स की एकल पंक्ति Lua है। पूरी स्क्रिप्ट में कोई नई पंक्ति नहीं है, सभी स्ट्रिंग्स दशमलव एस्केप और टेबल कॉल के रूप में विभाजित हैं, इसलिए सीधे पढ़ने पर केवल संख्याएँ और छोटे चर नाम दिखाई देते हैं। नीचे फ़ाइल का शुरुआती हिस्सा है, जिसे पढ़ने में सुविधा के लिए पंक्ति-तोड़कर दर्शाया गया है, और अंत में बिंदुओं से काटा गया है:

पहले दो फ़ंक्शन इंडेक्स के आधार पर वर्ण लेने और क्रम को पुनर्व्यवस्थित करने के लिए जिम्मेदार हैं, तीसरी पंक्ति से शुरू होकर अलग-अलग किए गए स्ट्रिंग टेबल हैं। स्क्रिप्ट में सैकड़ों स्पष्ट पाठ स्ट्रिंग्स इस फॉर्म में संग्रहीत हैं, और रनटाइम पर उन्हें मूल रूप में जोड़ा जाता है।
इसलिए जोखिम प्रवेश बिंदु उस संदर्भित मॉडल प्रोग्राम पर नहीं है। संपीड़ित फ़ाइल में एक सामान्य व्याख्याता और एक पाठ फ़ाइल शामिल है, और सभी दुष्ट तर्क cert.txt में स्थित हैं।
C2 ने अगली डिप्लॉयमेंट चेन को पूरा किया
ऑफ़लाइन डिकॉन्फ़्यूज़िंग के बाद, cert.txt की संरचना स्पष्ट हो गई। इसमें कई सौ प्रविष्टियों की एक स्ट्रिंग तालिका होती है, जिसमें सभी पाठ संख्यात्मक एस्केप के रूप में विभाजित होते हैं और निष्पादन के दौरान बाइट-बाइट पुनर्स्थापित किए जाते हैं। स्क्रिप्ट LuaJIT FFI के माध्यम से VirtualAlloc, CreateThread आदि Windows API को पार्स करती है और कॉल करती है।
लोडर में अंकित संख्या 845 है। इसे शुरू करने के बाद, यह होस्टनेम, यूजरनेम, GUID और सिस्टम संस्करण एकत्र करता है, एक स्क्रीनशॉट बिटब्ल्ट के माध्यम से बीएमपी के रूप में सहेजता है, और फिर भौगोलिक स्थिति के लिए आईपी लोकेशन इंटरफ़ेस पर एक अनुरोध करता है, और इन सभी जानकारियों को मल्टीपार्ट अनुरोध के रूप में हार्डकोडेड 217[.]119[.]129[.]122 पर POST करता है। नीचे हमने स्क्रिप्ट के आधार पर पुनर्निर्मित किया गया वास्तविक अनुरोध है:

/api/ के बाद की श्रृंखला को डिकोड करने पर क्लाइंट आईडी 517b7c5e5663656a057f प्राप्त होता है। स्क्रीनशॉट file खंड में रखा गया है, जिसमें BM से शुरू होने वाला BM प्रारूप हेडर है; होस्ट जानकारी data खंड में स्थित है, और दोनों एक ही अनुरोध में हैं। data को डिकोड करने पर computer=SIMULATED-PC&user=simulated-user&query=203.0.113.10 जैसे सिमुलेटेड मान प्राप्त होते हैं, जो किसी वास्तविक होस्ट से मेल नहीं खाते।
सर्वर द्वारा भेजे गए कार्यों को विस्तार नाम के आधार पर अलग-अलग संसाधित किया जाता है, जो मेमोरी में सीधे निष्पादित होने वाले लोड, स्वतंत्र कार्यक्रम, DLL और स्क्रिप्ट चार प्रकार को कवर करते हैं। एक लोडर के माध्यम से लगभग सभी सामान्य लोड फॉर्मेट्स को संभाला जा सकता है। स्क्रिप्ट में Defender को अपवर्जित करना, नियोजित कार्य के माध्यम से स्थायीकरण और कार्य पूर्ण होने पर प्रतिक्रिया भेजना शामिल है, जो सभी शर्तों पर आधारित शाखाओं में स्थित हैं, और इनका सक्रियण सर्वर के loader कॉन्फ़िगरेशन और स्थानीय शर्तों पर निर्भर करता है। इस बार प्राप्त कॉन्फ़िगरेशन में केवल स्थायीकरण सक्रिय है, अन्य सभी अक्रिय हैं। ये शर्त-आधारित कार्य हैं, जिसका अर्थ है कि वास्तविक होस्ट पर इन कार्रवाइयों को पहले ही पूरा किया गया है।
जब हार्डकोडेड पता अमान्य हो जाता है, तो लोडर के पास एक बैकअप पथ भी होता है। यह Polygon चेन पर eth_call भेजता है और कॉन्ट्रैक्ट 0x1823A9a0Ec8e0C25dD957D0841e3D41a4474bAdc पर selector 0x3bc5de30 का उत्तर पढ़ता है, जिससे बैकअप C2 को पार्स किया जाता है; इस परीक्षण में 194[.]48[.]248[.]94 प्राप्त हुआ:
लंबाई प्रीफिक्स 0x14, जो 20 के बराबर है, जो डिकोड किए गए पते के अक्षरों की संख्या के बराबर है, जिससे दोनों स्थानों की पुष्टि होती है। यह hex डेटा हमारे डिकोडिंग स्क्रिप्ट पर निर्भर नहीं है; एक बार ASCII टेबल चेक करके आप स्वयं पुष्टि कर सकते हैं। हमारे स्क्रिप्ट में कॉन्फ़िगर किए गए पाँच RPC एंडपॉइंट्स में से तीन ने ऊपर दिया गया डेटा वापस किया, जो बाइट-बाइट समान है, एक ने पेड सब्सक्रिप्शन की मांग की, और एक ने सीधे अस्वीकार कर दिया। पते को पब्लिक चेन कॉन्ट्रैक्ट में लिखने के बाद, सर्वर बदलने के लिए केवल एक ट्रांजैक्शन भेजना पर्याप्त है; वर्तमान बैकअप IP को अलग से ब्लॉक करना कॉन्ट्रैक्ट को भविष्य में नए पते वापस करने से नहीं रोक सकता।
स्क्रिप्ट के फॉर्मेट को सुधारने के बाद, 845 का सिमुलेटेड बेकन ने HTTP 200 और 1248 बाइट्स का JSON प्राप्त किया।
रिस्पॉन्स फील्ड तीन स्तरों पर एन्कोड किए गए हैं, डिकोडिंग दिशा Base64 → लोअरकेस हेक्स → 32 बाइट्स साइक्लिक XOR है, XOR की ECe6VGLRJum2qYtl79OiOU7aHot7Zhbn स्क्रिप्ट में लिखी गई है। नीचे दो पंक्तियाँ एक ही रिस्पॉन्स के एन्कोडेड और डिकोडेड संस्करण हैं, प्रत्येक के पहले 56 वर्ण काटे गए हैं:

एक लोडर रणनीति और एक कार्य निकाला गया है:

pump फील्ड यह नियंत्रित करता है कि क्या लैंडिंग फाइल को सर्वर द्वारा निर्दिष्ट आकार तक यादृच्छिक डेटा के साथ विस्तारित किया जाए, और वर्तमान कार्य में यह स्विच बंद है।
एक `tool.log` फ़ाइल को `%TEMP%\dist.lua` पर डाउनलोड करें और निष्पादित करें। यह फ़ाइल 396,616 बाइट्स की है और पूरी तरह ASCII हेक्साडेसिमल है; हेक्स डिकोड करने के बाद XOR करने पर 198,308 बाइट्स का ओबफ़ुस्केटेड Lua प्राप्त होता है। यह दूसरा लोडर है, जिसकी संख्या 847 है, और इसका प्रारंभिक C2 `217[.]119[.]129[.]97` पर बदल दिया गया है, जिसकी ओबफ़ुस्केशन संरचना 845 के समान है। समान सिमुलेटेड होस्ट डेटा का उपयोग करके 847 लोडर को निष्पादित करने के बाद, यह `217[.]119[.]129[.]97` पर बीकन भेजता है, जिसके उत्तर में सर्वर दो कार्य प्रतिक्रिया के रूप में भेजता है।
दो कार्यों में से एक अभी भी `tool.log` है, और दूसरा एक ही रिपॉजिटरी के `verb.log` की ओर इशारा करता है, जिसका स्थान `AppData\..\Local\Programs\Chromium\Application\Chromium.exe` के रूप में लिखा गया है। मध्यवर्ती `..` पथ को LocalAppData तक ले जाता है, और अंतिम फ़ाइल का नाम Chromium ब्राउज़र के मुख्य कार्यक्रम के रूप में छिपाया गया है।
tool.log, verb.log और अगले दो PE फाइलें C2 प्रतिक्रिया और डाउनलोड के साथ डिस्क पर सहेजी गईं, मूल ZIP में ये फाइलें नहीं थीं। ZIP खुद केवल यह साबित करता है कि लोडर की डाउनलोड और निष्पादन क्षमता है; सहेजी गई C2 प्रतिक्रिया दिखाती है कि सर्वर ने संग्रहण के समय loaderId 845 को अगले डाउनलोड कार्य भेजे।
verb.log द्वारा निकाला गया StealC लोड
अनपैक और लोड
verb.log 3,089,408 बाइट्स, यह भी ASCII hex है, और परिवर्तन श्रृंखला है: hex/XOR → बाहरी PE → Base64URL/AES → आंतरिक PE। एक ही XOR कुंजी का उपयोग करके खोलने पर 1,544,704 बाइट्स का 64-बिट बाहरी PE प्राप्त होता है, जिसके संसाधन खंड में Base64URL पाठ को डिकोड करने पर 797,728 बाइट्स का AES-256-ECB एन्क्रिप्टेड डेटा मिलता है। कुंजी bFYh8UMQGZOBUlvrpS3M4ZJybbubVbvg बाहरी PE द्वारा दो स्थिर अरेज़ के आधार पर निकाली गई है, जिसे स्थिर रूप से पुनः प्राप्त किया जा सकता है, और इसे डिक्रिप्ट करने पर एक ही 797,728 बाइट्स का दूसरा 64-बिट PE प्राप्त होता है।
बाहरी PE अपने प्रक्रिया में आंतरिक PE को हस्ताक्षरित रूप से मैप करता है: मेमोरी आवंटित करें, हेडर और सेक्शन कॉपी करें, रिलोकेशन और इम्पोर्ट टेबल को सुधारें, थ्रेड बनाएं और एंट्री पॉइंट पर शुरू करें। स्थिर कॉल चेन में CreateProcess, WriteProcessMemory, SetThreadContext, ResumeThread जैसे क्रॉस-प्रक्रिया इंजेक्शन API नहीं होते—पूरी प्रक्रिया प्रक्रिया-अंतर्गत प्रतिबिंबित लोडिंग है।
Environment Check
अंतर्निहित लोड पहले वातावरण की जांच करता है: यदि सिस्टम की डिफ़ॉल्ट भाषा रूसी, यूक्रेनी, बेलारूसी, कजाक, या उज़बेक में से कोई एक है, तो यह बंद हो जाता है; फिर होस्ट जानकारी से बनाए गए नाम के साथ Event का उपयोग करके सिंगल इंस्टेंस कंट्रोल किया जाता है, फिर अंतर्निहित समाप्ति तिथि की जांच की जाती है, और केवल सभी जांच पास होने के बाद ही मुख्य लॉजिक में प्रवेश किया जाता है।
कॉलेक्शन लक्ष्य
ब्राउज़र: Chrome, Edge, Brave — लॉगिन डेटा, कुकीज़, इतिहास और संबंधित डेटाबेस प्राप्त करें; Firefox NSS इंटरफ़ेस को कॉल करके सहेजे गए लॉगिन जानकारी को डिक्रिप्ट करता है। डेटाबेस लॉक होने पर Restart Manager द्वारा प्रक्रिया को समाप्त कर दिया जाता है।
ईमेल और ऑपरेशन: Foxmail और Outlook खाते के पासवर्ड, WinSCP सेशन जानकारी, जिसमें WinSCP सेशन पीड़ित के द्वारा एक्सेस किए जा सकने वाले सर्वर से सीधे संबंधित हैं।
Steam: लॉगिन कॉन्फ़िगरेशन, टोकन और सेंटिनेल फ़ाइलें।
Chrome 127 से शुरू होकर, कुकी और सहेजे गए पासवर्ड App-Bound Encryption द्वारा सुरक्षित होते हैं, जिसकी कुंजी सिस्टम स्तरीय सेवा में संग्रहीत होती है, और केवल डेटाबेस फ़ाइल कॉपी करने से मूल पाठ प्राप्त नहीं होता। इस लोड के लिए एक सहायक PE अंतर्निहित है, जो Early-bird APC का उपयोग करके निलंबित chrome.exe, brave.exe या msedge.exe में इंजेक्ट किया जाता है; सहायक मॉड्यूल ब्राउज़र प्रक्रिया के भीतर एप्प-बाउंड कुंजी को पढ़ता है, और प्रत्येक ब्राउज़र के संबंधित COM Elevation सेवा इंटरफ़ेस के माध्यम से 32 बाइट्स की स्पष्ट कुंजी निकालता है, जिससे पहले संग्रहीत डेटाबेस फ़ाइलें पुनः पठनीय हो जाती हैं।
वॉलेट संग्रह पूरी तरह से सर्वर-ओरिएंटेड है: रिकर्सिव कलेक्टर C2 द्वारा जारी फाइल टास्क को प्रकार के आधार पर विभाजित करता है, जहां wallets शाखा टास्क नाम और फाइल नाम के आधार पर स्थानीय डायरेक्टरी की जांच करती है; C2 विस्तारित ID भी जारी कर सकता है, जिससे Chromium एक्सटेंशन के स्टोरेज और IndexedDB का संग्रह होता है। नमूने के स्पष्ट पाठ में कोई वॉलेट ब्रांड नाम या स्थापना पथ नहीं है, और न ही BIP39, secp256k1 जैसे मैनेमोनिक या निजी कुंजी विश्लेषण कार्यान्वयन हैं—कौन सा वॉलेट संग्रहित किया जाएगा, इसका निर्णय सर्वर द्वारा टास्क जारी करते समय किया जाता है, स्थिर नमूने में इस चरण के लक्ष्यों की सूची नहीं है।
अपलोड और अट्रिब्यूट
लोड में स्क्रीनशॉट, सिस्टम जानकारी और प्रक्रिया सूची एकत्र करना, PowerShell के साथ द्वितीयक डाउनलोड और निष्पादन, अधिकार बढ़ाना, और बंद होने पर स्वयं को हटाने जैसे कार्य शामिल हैं।
डेटा अपलोड 512 KiB टुकड़ों में JSON POST के माध्यम से किया जाता है। अपलोड एंडपॉइंट फाइल में RC4 द्वारा एन्क्रिप्ट किया गया है और फिर Base64 में सहेजा गया है, जिसे कॉन्फ़िगरेशन कुंजी 55uUe45tr1x1xy1lSK का उपयोग करके डिक्रिप्ट करने पर http[:]//89[.]169[.]12[.]194 प्राप्त होता है, और अनुरोध शरीर को अलग RC4 कुंजी से एन्क्रिप्ट किया गया है।
StealC एक Windows इनफॉर्मेशन स्टीलिंग ट्रोजन है जो ब्राउज़र पासवर्ड, कुकीज़, क्रिप्टो वॉलेट और अन्य संवेदनशील डेटा को चुराकर उसे हमलावर C2 को भेजता है। इंटरनल पेलोड के कलेक्शन स्कोप, App-Bound डिक्रिप्शन असिस्टेंस, वॉलेट ब्रांचिंग और RC4 एन्क्रिप्शन के साथ अपलोड जैसे विशेषताएँ StealC के ज्ञात लक्षणों के साथ मेल खाती हैं, इसलिए हम इसे StealC के रूप में वर्गीकृत करते हैं।
यदि इन सामग्रियों को सफलतापूर्वक प्राप्त कर लिया जाता है, तो परिणाम अलग-अलग होते हैं: ब्राउज़र कुकीज़ के मामले में पहले से लॉग इन सत्र को हथिया लिया जाता है, ईमेल और Steam पासवर्ड के मामले में खाते का नुकसान होता है, WinSCP सत्र के मामले में पीड़ित द्वारा संचालित सर्वर प्रभावित होते हैं; यदि वॉलेट की प्राइवेट की या मैनेमोनिक फ्रेज़ लीक हो जाती है, तो संपत्ति का स्थानांतरण वापस नहीं किया जा सकता।
Verify that the distribution facility is rotating.
26 अगस्त को, हमने समान सिमुलेटेड होस्ट डेटा के साथ तीनों बेकन को पुनः भेजा। तीनों एंडपॉइंट्स ने HTTP 200 लौटाया, और लोडर नीति क्षेत्र अपरिवर्तित रहा। परिवर्तन कार्य में डाउनलोड एड्रेस में दिखाई दिया।

vs.log और पुराना tool.log बाइट-बाइट समान हैं, केवल नाम बदल दिया गया है, 847 लोडर में कोई बदलाव नहीं हुआ है। ssl.log को डिकोड करने पर नया बाहरी PE मिलता है, 1,539,072 बाइट्स, एंट्री एड्रेस और इमेज साइज दोनों बदल गए हैं, AES कुंजी yK8-eM8KFA8Hl8cCybERmOLZupFvfCNZ में बदल गई है।
नए कुंजी से अनलॉक किया गया आंतरिक लोड अभी भी 797,728 बाइट्स है। पुराने संस्करण के साथ बाइट-बाइट तुलना करने पर, पूरी फ़ाइल में केवल एक अंतर है, जो केवल-पढ़ने योग्य डेटा सेगमेंट में है, जहां सर्वर को भेजा गया बिल्ड नंबर build5 से बदलकर build1 कर दिया गया है। अपलोड एंडपॉइंट, RC4 कॉन्फ़िगरेशन कुंजी और रिक्वेस्ट बॉडी कुंजी सभी समान हैं।
रिपॉजिटरी बदलना, फाइल नाम बदलना, बाहरी PE अपडेट करना, AES कुंजी बदलना—ये कार्रवाइयाँ पुरानी फाइल के सटीक हैश को अमान्य कर देती हैं। स्थिर संरचना और व्यवहार विशेषताएँ अभी भी मेल खाती हैं या नहीं, इसकी पुष्टि विशिष्ट नियमों द्वारा की जानी चाहिए। चोरी किए जाने वाले लोड का मूल इन दो दिनों में स्थिर रहा है, केवल एक संस्करण टैग बदला गया है; यह दो संग्रहण दिनों के बीच का प्रेक्षण है, जो लंबे समय तक स्थिरता का आकलन करने के लिए पर्याप्त नहीं है।
अधिक दुष्ट GitHub भंडार
हमने 23 GitHub रिपॉजिटरी में फैले 29 दुष्ट ZIP नमूनों को भी इकट्ठा किया है। प्रारंभिक जांच से पता चला है कि इन सभी नमूनों में Lua को निष्पादन श्रृंखला के एक हिस्से के रूप में उपयोग किया जाता है, जिसमें सामान्य रूप से .cmd या .bat लॉन्चर द्वारा स्थानीय LuaJIT या पुनर्नामकरण किए गए इंटरप्रेटर को कॉल किया जाता है, और फिर समान निर्देशिका में Lua स्क्रिप्ट को निष्पादित किया जाता है। संबंधित रिपॉजिटरी के बहाने के विषय AI मॉडल और उपकरण, MCP सेवाएँ, विकास स्क्रिप्ट और वॉलेट प्रोजेक्ट्स सहित कई श्रेणियों को कवर करते हैं।
ध्यान दें कि वर्तमान में इन 29 नमूनों में से प्रत्येक का पूर्ण कोड पुनर्स्थापित और अटैक चेन विश्लेषण नहीं किया गया है, इसलिए वर्तमान साक्ष्य केवल इतना ही पुष्टि कर सकते हैं कि वे सभी दुर्भावनापूर्ण व्यवहार दर्शाते हैं और Lua टेक स्टैक का उपयोग करते हैं, लेकिन इससे यह निष्कर्ष नहीं निकाला जा सकता कि सभी नमूने समान भ्रमित तरीके, निष्पादन प्रक्रिया, C2 बुनियादी ढांचे या अंतिम लोड का उपयोग करते हैं।
Summary
एक नकली Qwen GitHub रिपॉजिटरी डाउनलोड एंट्री को 487 KB के ZIP में निर्देशित करती है, जिसमें मॉडल वेट्स नहीं हैं, केवल एक LuaJIT इंटरप्रेटर और एक भ्रमित स्क्रिप्ट है। सहेजे गए C2 प्रतिक्रिया को आंतरिक चोरी लोड के साथ जोड़ा गया है, जिसे हम StealC के रूप में वर्गीकृत करते हैं।
जोखिम ब्राउज़र सत्र, ईमेल और ऑपरेशनल पासवर्ड, Steam टोकन और वॉलेट से संबंधित सामग्री तक सीमित है, जब तक कि इन सामग्रियों को सफलतापूर्वक प्राप्त न किया जाए। दो एक्सट्रैक्शन के बीच, डिस्ट्रीब्यूशन रिपॉजिटरी, फाइलनाम, बाहरी PE और AES कुंजी बदल गई हैं, जबकि आंतरिक पेलोड में केवल बिल्ड नंबर में एक ही अक्षर का अंतर है; 23 रिपॉजिटरी में फैली 29 ZIP फाइलें दर्शाती हैं कि यह डिप्लॉयमेंट स्केलेटन बड़े पैमाने पर पुनःउपयोग किया जा रहा है, और प्रत्येक वेरिएंट की पूर्ण अगली श्रृंखला की पुष्टि प्रति नमूने के आधार पर की जानी है।
सुझाव
1. अलग करें और डिजिटल साक्ष्य एकत्र करें: जब होस्ट इस लेख में सूचीबद्ध ZIP, स्क्रिप्ट हैश, C2 या डाउनलोड URL पर हिट करता है, तो डाउनलोड स्रोत, प्रक्रिया वृक्ष, नेटवर्क कनेक्शन लॉग और फाइल को सहेजें, फिर साफ करें।
2. होस्ट में बदलाव की जाँच करें: यदि स्टार्टर निष्पादन रिकॉर्ड, या LuaJIT, या नाम बदले गए इंटरप्रीटर द्वारा बड़े आकार के भ्रमित पाठ को लोड करने का रिकॉर्ड मिले, तो योजना कार्य, Run कुंजी, StartupApproved आइटम की जाँच करें और पुष्टि करें कि क्या Defender अपवाद सूची में सिस्टम ड्राइव या .exe, .dll विस्तार शामिल किए गए हैं।
3. प्रमाण पत्र का निपटान: नमूना निष्पादित होने या संबंधित लैंडिंग लोड की खोज होने पर, ब्राउज़र सत्र और सहेजे गए पासवर्ड, ईमेल खाते, Steam टोकन और WinSCP सत्र प्रमाण पत्र को रीसेट करें; यदि होस्ट पर वॉलेट प्राइवेट की या मैनेमोनिक फ्रेज सहेजी गई है, तो पहले संपत्ति को नए पते पर स्थानांतरित करें, फिर होस्ट का निपटान करें।
4. संयोजन जांच जोड़ें: 「छोटा स्टार्टर → स्थानीय LuaJIT या नाम बदला गया इंटरप्रेटर → एक ही निर्देशिका में बड़ा एकल पंक्ति टेक्स्ट → HTTP अनुरोध शुरू करना या निष्पादनयोग्य मेमोरी में लिखना」 इस अनुक्रम को मॉनिटरिंग नियमों में शामिल करें। यह लिंक कानूनी सेवाओं का उपयोग करती है, इसलिए निर्णय संयोजन के आधार पर होना चाहिए, और इस लेख में सूचीबद्ध सटीक दुष्ट URL के साथ मिलाकर, GitHub Raw या सार्वजनिक Polygon RPC के लिए अविवेकपूर्ण प्रतिबंध नहीं लगाना चाहिए।
IOC
IP
217[.]119[.]129[.]122
194[.]48[.]248[.]94
217[.]119[.]129[.]97
89[.]169[.]12[.]194
URL
http[:]//217[.]119[.]129[.]122/api/NTE3YjdjNWU1NjYzNjU2YTA1N2Y=
http[:]//217[.]119[.]129[.]97/api/NTE3YjdjNWU1NjYzNjU2YTA1N2Y=
https[:]//raw[.]githubusercontent[.]com/unburdened-jackinthebox365/qwen38-uncensored/main/assets/uncensored_qwen_v2[.]6[.]zip
https[:]//github[.]com/Minaadelfouad64/tools/raw/refs/heads/main/verbose/tool[.]log
https[:]//github[.]com/Minaadelfouad64/tools/raw/refs/heads/main/verbose/verb[.]log
https[:]//github[.]com/fuhuhlatoogan/mtp/raw/refs/heads/main/p/vs[.]log
https[:]//github[.]com/fuhuhlatoogan/mtp/raw/refs/heads/main/p/ssl[.]log
Malicious dependency
https[:]//github[.]com/unburdened-jackinthebox365/qwen38-uncensored
https[:]//github[.]com/Minaadelfouad64/tools
https[:]//github[.]com/fuhuhlatoogan/mtp
https[:]//github[.]com/0ogata0/qwen-php-client
https[:]//github[.]com/115th-discomfited211/Awesome-Harness-Engineering
https[:]//github[.]com/123affano1/claudetrack
https[:]//github[.]com/1sustgmboab/nexonco-mcp
https[:]//github[.]com/2josEx/claude-brain
https[:]//github[.]com/428alexander9/claude-skills-marketplace
https[:]//github[.]com/45d5r/databricks-mcp-server
https[:]//github[.]com/7ossamfarid/mcp-mindmesh
https[:]//github[.]com/Bean5789/bbd2api
https[:]//github[.]com/CleverPortal/CollabNote-Fullstack-App
https[:]//github[.]com/Juanvil9941/AI-Invoice-System
https[:]//github[.]com/Kalainilavann/takeout_downloader_script
https[:]//github[.]com/Prestonflatfooted659/Void-Tools-v2.0
https[:]//github[.]com/Walloperlioncub193/Canva-Resource
https[:]//github[.]com/archontelemetered604/clash-for-windows
https[:]//github[.]com/fantastic-interpolation620/ctx-wire
https[:]//github[.]com/mikenob39wang/phone-number-location-tracking-tool
https[:]//github[.]com/recognisable-riddance165/Portable-Offline-LLM
https[:]//github[.]com/sociologisttentcaterpillarmoth213/100xdev-ci-cd
https[:]//github[.]com/soldat-panther/qq-farm-cdp-auto
https[:]//github[.]com/thaddeusprobabilistic193/Xault-Wallet
https[:]//github[.]com/twelfth-puerperium297/tokenoptim
https[:]//github[.]com/wasila7220/multi-model-router
मैलिशियस फाइल
फाइलनाम: uncensored_qwen_v2.6.zip
MD5: bf21a07ad5743d3ae9f55ff526428a0a
SHA1: 8e3391c17c3f4fb6f42594de7425df96dbbbc01e
SHA256: 36d0bac5743ed9c6858258f28f2c2f9161dc06c4d5af73eb7eda1211ea610758
फाइलनाम: Application.cmd
MD5: 17d94f34b9d15449b03bc099a637782b
SHA1: eb474f898256e8e7baaf0d63b306d1169e637c73
SHA256: 7c4f3e09c6428d0a0d7d85615695f5fedb35bb4e7180d31e1f8a1bacf22e5639
फाइलनाम: cert.txt
MD5: ccfc0f145861f23c6850c691c4be54b9
SHA1: b88ac887493f31cf9f160ddbc6bc3a2aa298a0ca
SHA256: a75561a3224d9f836058a6d0204ed2e6c1f638275a59495935cd2a5e46fd28ca
फाइलनाम: tool.log, vs.log
MD5: 8063ba8ec896b52e5e6d435cc60e82f7
SHA1: f445bd4c5b65b7e013ec518f34f4cd64676201d2
SHA256: 7ebbb61733d8aefcf9401f00e8ff7e593c9f0edecb6609675aebd3eb78a5ae2d
filename: verb.log
MD5: 650a8ee5d091275040ae4dd02dcdd806
SHA1: 343d819ceb63c742912723c42fd158b82d0a90be
SHA256: 699af883d862d8949a494f69e2d300142ce506a0ac6c7a239193c111dfed241e
फाइलनाम: inner-payload.aes256-ecb-decrypted.bin
MD5: 01e433263a7fd50e812195ff4c11cc90
SHA1: ea53a41c53181374cade8d69882bb1390f0c2562
SHA256: ec981c45d494896037583c746543490176c9ce9a1482e62c4e8ab189c2650b1c
फाइलनाम: ssl.log
MD5: 9d11bce9c213924b53bcb986f07945c6
SHA1: 2abf1436933dc6b63a016661d5d16f1eda303b59
SHA256: 7b0d919bd510cbcc587cca4b74aad1e086fb1fc34882a39946e6db7d4361a746
फाइलनाम: inner-payload.build1.bin
MD5: 370f95bf40a9c9fe852b2e4bdd95689f
SHA1: 219a0e7c3907bb65ef7db7428400745570d4e105
SHA256: 5d63f3dc9371d4496ca0e728a794151978e94b69ae4b3c705cea4e67cc6cf208
फाइलनाम: client_qwen_php_v2.4.zip
SHA256: 073c6192ab4c2d5d25fc13acab4c216c96f9d5926064c534e3803bb31d527b28
फाइलनाम: Engineering_Harness_Awesome_1.9.zip
SHA256: 0870fe8a4d9e64e335047e16ed1d6b0805beab9686495a1e8c247cf2e1a8e930
फाइलनाम: Software_v1.6.zip
SHA256: 71b37b48f80106fc864be7e82481cd1a2f7decfeaf1dce45abb924d7f32da933
फाइलनाम: nexonco-mcp-v3.0-alpha.1.zip
SHA256: a866d90d6f1dd82ddcd2cbef4f5550c77bb58dbda87c02eedb441a117b7d89b9
फाइलनाम: claude-brain-v1.4-alpha.3.zip
SHA256: a271231ebf6174b11aeb3337c238abc0eac44b48b5fa8d2b168883601d8cc3a5
फाइलनाम: brain_claude_2.2-alpha.1.zip
SHA256: ca4babb4444af81cf93b34436de7a4a3c8e1a93f6233bcc8753ddd868b4c9eaa
फाइलनाम: claude-skills-marketplace_v3.4.zip
SHA256: 438033226b1bd1e26db8ab71a777e74cc90b5c31310139269fe8e52308f6c938
फाइलनाम: skills-marketplace-claude-2.9.zip
SHA256: f07a4eadd43513f56ae4fdf6f6dfc966de17f06093c75c1dec0dd426668779f9
फाइलनाम: server_databricks_mcp_1.6.zip
SHA256: 66afc7d87d10dbe392898c4e5c613e0442fabb396415c2bef3a5ef2ac752c5ad
फाइलनाम: mindmesh_mcp_1.0-alpha.5.zip
SHA256: e8da8c82ccb1c6fd68e7c03187485d6ebbd07a4946a7f07cac54fef65b00d2bf
फाइलनाम: bbd-api-3.1.zip
SHA256: 3524dc4a232c76067f8b2df9adf34ae1106dcc1528e5467c1abc285fc51d1e82
फाइलनाम: Note-Collab-App-Fullstack-v3.6-alpha.5.zip
SHA256: 6f823d15658b07d6d90f292848fcdd30fe840f83d653cc34966e2fd61d9c3117
फ़ाइलनाम: Invoice_A_System_3.9.zip
SHA256: 8332d91619563e46e248f427cf489f8bd61a83124eb4c95749ce284b443a2803
फाइलनाम: downloader-script-takeout-v1.1.zip
SHA256: 8412f2d2b47181f272b0c0e02fe619331e0c2c8d3b90f32e8ce08ac98aaec3f6
फाइलनाम: downloader_takeout_script_v3.8.zip
SHA256: b781102c6ff857fb45089a6b3d30c5ebb7699ec7e8771bfa0039bef28de782bd
फाइलनाम: takeout-downloader-script-galvanocauterization.zip
SHA256: 13dc7623c66d1fed51ae94b0d96e8ed45c93d893afabf9aceb4ef0a8da0243ee
फाइलनाम: Void-v-Tools-v1.7.zip
SHA256: 841d0c25137f35b60d940705ab7b5dc3e9936f37e0561934e72c5dafe93466d8
फाइलनाम: Resource-Canva-2.2.zip
SHA256: ac6a24d02209df94f56f67e7f3f19dc997f7a2625b91add1dd10cdec0a06d392
filename: for-clash-windows-3.2.zip
SHA256: 036062622f3a1fa2718afc91f8fe4edc693b757365dfc2c0958b70fe8c84c20d
फाइलनाम: wire-ctx-2.6-alpha.1.zip
SHA256: db0640eb414a89bb62953f0aa7603557f3b8de515e7c3696156abc10f835ecef
फाइलनाम: location-tracking-tool-phone-number-v3.3.zip
SHA256: 3fc5816afde3e58bf9fcaa1b3873f2d4bc8629ee7a8341a4a4979d2729cad5e6
फाइलनाम: location_number_tracking_tool_phone_v2.5.zip
SHA256: 398ea394f9a4242ebe9fd67a5ca62445fc4a34b1731d4f99b8eea5e65a98ddcb
फाइलनाम: tracking-tool-location-number-phone-3.2.zip
SHA256: b6e81d95c0c336e8b8bde3889f4df4ee17639f6ff055c631de19cab3c7efb63b
फाइलनाम: Offline_LLM_Portable_v2.1-alpha.1.zip
SHA256: 1313b6cfb1ea43367fdd845f64526b4972a3a345bb8b13cef7ebb678d59b5f55
फाइलनाम: ci_cd_xdev_v2.3-alpha.3.zip
SHA256: ed1ae6799ecb1fc7c5239c4ab95b3b9de9462f21219f144a25b91b6fd430a2c2
फाइलनाम: farm-cdp-qq-auto-1.1.zip
SHA256: 6145aeacba6533e10dcea287d0fff64c48a790c58ae266ed18ea5d13c36d27ca
फाइलनाम: v3.9.zip
SHA256: a0dd4924bec9bc077b1f98ddcb45b4e07b01e63ad703c2507d822b5b5130a077
फाइलनाम: Software-Lithodes.zip
SHA256: 40c2b7b8dcfa6bfe0a199af9ea4baa00a4b8ecd73afa326702cdc4197d64bdef
फाइलनाम: model-multi-router-v3.5-beta.1.zip
SHA256: 152929ae778e6ed9f358ca8590d2155e1a04137b109a5442891e1ba3fe1a7f82
MistEye के बारे में
MistEye, SlowMist द्वारा स्वयं विकसित एक Web3 खतरा सूचना और गतिशील सुरक्षा मॉनिटरिंग प्लेटफॉर्म है, जो API के माध्यम से ओपन सोर्स पैकेज इकोसिस्टम के लिए दुर्भावनापूर्ण गतिविधि का पता लगाने और सप्लाई चेन जोखिम की चेतावनी प्रदान करता है।
इस अभियान में शामिल सभी दुर्भावनापूर्ण पैकेज और IOC को MistEye खतरा पता लगाने वाले इंजन में एकीकृत कर दिया गया है, जिससे डेवलपर्स API के माध्यम से प्रोजेक्ट निर्भरताओं की स्वचालित जांच कर सकते हैं और त्वरित रूप से ज्ञात दुर्भावनापूर्ण पैकेज से मेल खाने की पहचान कर सकते हैं तथा उपचार सुझाव प्राप्त कर सकते हैं।
📖 API दस्तावेज़: https://app.misteye.io/api-docs
🛠️ MistEye-DepScan: https://github.com/slowmist/MistEye-DepScan
एक हल्का CLI टूल, जो एक ही कमांड से प्रोजेक्ट निर्भरताओं और ग्लोबल इंस्टॉल किए गए पैकेज में ज्ञात दुष्ट पैकेज स्कैन करता है, npm / PyPI / Cargo / Go / RubyGems इकोसिस्टम का समर्थन करता है
🛠️ MistEye-Skills: https://github.com/slowmist/misteye-skills
AI कोडिंग सहायक सुरक्षा कौशल पैक, निर्भरता स्थापित करने और URL एक्सेस से पहले मिस्टआई बुद्धिमान सुरक्षा जांच को स्वचालित रूप से ट्रिगर करता है
🛠️ MistEye-DNS-Guard: https://github.com/slowmist/MistEye-DNS-Guard
DNS सुरक्षा सुरक्षा उपकरण, दुर्भावनापूर्ण डोमेन और जोखिम वाले एक्सेस का पता लगाता है, फिशिंग, C2 आदि नेटवर्क खतरों की पहचान करता है
यह लेख SlowMist थ्रेट इंटेलिजेंस टीम द्वारा MistEye थ्रेट इंटेलिजेंस सिस्टम और SlowMist Agent AI ड्राइवन विश्लेषण के संयोजन से तैयार किया गया है। किसी भी प्रश्न के लिए कृपया संपर्क करें।
संदर्भ
[1]https://x.com/OpcodeIntel/status/2091578565628502324
[2]https://www.microsoft.com/en-us/security/blog/2026/06/24/stealc-and-amadey-breaking-down-infostealers-and-the-cybercrime-services-that-deliver-them/
[3]https://security.googleblog.com/2024/07/improving-security-of-chrome-cookies-on.html
