ازگر پیکج دھاگے سے چلنے والاPyPI پر دریافت کیا گیا، اس کی شناخت کے طور پر کی گئی ہے۔ بدقسمتی سے، ایک روایتی infostealer میلویئر پر مشتمل ہے۔ تاہم، اس کی وضاحتی خصوصیت اعلیٰ درجے کی کوڈ کی مبہم تکنیکوں کا استعمال ہے جو اس کے پے لوڈ کو غیر واضح کرتی ہے، جس سے تجزیہ خاص طور پر مشکل ہوتا ہے۔ یہ میلویئر اپنی اٹیک چین میں مبہم کی تین تہوں کو بار بار استعمال کرتا ہے، جس سے دستی ڈی کنسٹرکشن کے لیے اہم رکاوٹیں پیدا ہوتی ہیں۔
ہماری مالویئر ارلی وارننگ ٹیم نے پیکج کی اطلاع PyPI سیکیورٹی ٹیم کو دی، جس نے اسے فوری طور پر ہٹا دیا۔ اس مضمون میں، ہم کے مراحل کی وضاحت دھاگے سے چلنے والاکا حملہ اور وہ طریقے جو یہ اپنے مقصد کو چھپانے کے لیے استعمال کرتا ہے، اس بات پر توجہ مرکوز کرتے ہوئے کہ انفوسٹیلر میلویئر اور کوڈ کی مبہمیت ایک ساتھ کیسے کام کرتی ہے۔
چیٹ شیٹ: انفوسٹیلر میلویئر اور کوڈ کی رکاوٹ
Infostealer Malware کیا ہے؟
Infostealer میلویئر آپ کی ڈیجیٹل دنیا میں ایک ڈرپوک چور کی طرح کام کرتا ہے۔ یہ خاموشی سے حساس معلومات جیسے کہ آپ کے پاس ورڈز، کریڈٹ کارڈ نمبرز، یا ذاتی تفصیلات کو آپ کے نوٹس میں لائے بغیر حاصل کر لیتا ہے۔ یہ پروگرام ریکارڈ کرتے ہیں کہ آپ کیا ٹائپ کرتے ہیں (کی لاگنگ)، آپ کے براؤزر کو ہائی جیک کرتے ہیں، یا قیمتی ڈیٹا اکٹھا کرنے کے لیے آپ کے آلے پر فائلیں اسکین کرتے ہیں۔ سب سے خوفناک حصہ؟ وہ ریڈار کے نیچے رہنے میں مہارت رکھتے ہیں۔
کوڈ Obfuscation کیا ہے؟
کوڈ Obfuscation بنیادی طور پر چیزوں کو سادہ نظروں میں چھپانے کا فن ہے، جو اکثر ہیکرز اپنے بدنیتی پر مبنی کوڈ کو تلاش کرنے یا سمجھنا مشکل بنانے کے لیے استعمال کرتے ہیں۔ تصور کریں کہ کوئی اس طرح سے کوڈ لکھ رہا ہے جو جان بوجھ کر الجھا رہا ہو، اس کے کچھ حصوں کو خفیہ کر رہا ہو، یا یہ گھماؤ پھراؤ کہ یہ اینٹی وائرس ٹولز یا محققین کو پھینکنے میں کیسا لگتا ہے۔ یہ ایک چالاک لیکن مایوس کن حربہ ہے جو میلویئر کو زیادہ دیر فعال رہنے اور پتہ لگانے سے بچنے میں مدد کرتا ہے۔
ThreadFluent Infostealer Malware کی مبہم پرتیں۔
1. ٹرپل انکرپشن
مبہم ہونے کا عمل ایک بھاری خفیہ کردہ پے لوڈ کے ساتھ شروع ہوتا ہے جو میں سرایت کرتا ہے۔ fluent.py فائل ابتدائی انکوڈنگ اور ڈکرپشن کے عمل کا خلاصہ اس طرح کیا جا سکتا ہے:
encoded_data = base64_module.b64decode("... BASE-6 with encrypted payload, IV and RSA-encrypted keys…”); # … Sequential decryption: ChaCha20, Blowfish and AES … encrypted_payload = AES_Cipher.new(aes_key, AES_Cipher.MODE_CBC, iv=aes_iv).decrypt(encrypted_payload[16:]) final_payload = unpad_function(encrypted_payload, AES_Cipher.block_size) exec( zlib_module.decompress(bz2_module.decompress(final_payload)) ) اس مبہم عمل میں شامل ہیں:
- سمپیڑن: gzip اور bzip کا استعمال۔
- ہم آہنگی خفیہ کاری: ChaCha20، Blowfish، اور AES کے ساتھ زنجیروں سے بند انکرپشن۔
- غیر متناسب خفیہ کاری: RSA ہم آہنگ کلیدوں کو خفیہ کرنے کے لیے استعمال ہوتا ہے۔
نتیجہ بیس 64 میں انکوڈ کیا گیا ہے اور بطور داخل کیا گیا ہے۔ encoded_data. ہر تکرار پچھلے پر بناتا ہے، ایک نیسٹڈ انکرپشن ڈھانچہ بناتا ہے جو ریورس انجینئرنگ کے بغیر اصل پے لوڈ کو ننگا کرنا غیر معمولی طور پر مشکل بنا دیتا ہے۔
2. Gzip ڈیکمپریشن
بہت سے درمیانی مراحل میں، میلویئر ایک سیدھا سادہ لیکن مؤثر طریقہ استعمال کرتا ہے: Gzip کمپریشن کو Base64 انکوڈنگ کے ساتھ ملا کر۔
import base64, zlib; eval(zlib.decompress(base64.b64decode(<STR>).decode('utf-8')) یہ تکنیک یقینی بناتی ہے کہ مبہم پے لوڈ تمام مراحل میں پوشیدہ رہے۔
3. کوڈ کنکٹنیشن اور ڈائنامک کمپلیشن
حتمی پرت میں متعدد متغیرات میں مبہم پے لوڈ کو تقسیم کرنا شامل ہے، جو عمل درآمد کے دوران متحرک طور پر مربوط اور ڈی کوڈ ہوتے ہیں:
import base64, zlib FEQXCBDOZKHVIhT = '...' # ....(111 other variables with base-64 encoded values) ... zZytWuvuEdBXSrO = eval(<FEQXCBDOZKHVIhT' encoded with '\x>) + eval(<next variable, encoded>) + eval( ' zlib.decompress(base64.b64decode(<VAR>)).decode('utf-8') ') + ... eval(compile(base64.b64decode(eval(zZytWuvuEdBXSrO)).decode('utf-8'), ‘<app>', 'exec')) یہ مرحلہ دستی طور پر ریورس انجینئر کرنے کے لیے خاص طور پر بوجھل ہے، کیونکہ ہر متغیر کو ڈی کوڈ کیا جانا چاہیے اور اگلے پے لوڈ کو ظاہر کرنے کے لیے دوبارہ ملایا جانا چاہیے۔
ان مبہم تکنیکوں کو یکجا کرکے، infostealer میلویئر in دھاگے سے چلنے والا کے اہم کردار کی نمائش کرتے ہوئے پتہ لگانے سے بچ جاتا ہے۔ کوڈ کی رکاوٹ جدید سائبر حملوں میں۔
ThreadFluent کی ملٹی اسٹیج اٹیک چین
۔ دھاگے سے چلنے والا infostealer میلویئر چار الگ الگ مراحل پر مشتمل ہے، ہر ایک کی اضافی تہوں کا تعارف کوڈ کی رکاوٹ. یہ مراحل نہ صرف پے لوڈ فراہم کرتے ہیں بلکہ اسے کھوج اور تجزیہ سے بھی بچاتے ہیں۔

مرحلہ 0: ابتدائی کوڈ پر عمل درآمد
انٹری پوائنٹ ہے۔ __init__.py فائل، جس میں مبہم پے لوڈ پر عمل درآمد شروع ہوتا ہے۔ fluent.py. یہ فائل اسٹیج 1 ڈراپر تیار کرنے کے لیے ملٹی لیئرڈ مبہم (جیسا کہ مراحل 1–3 میں بیان کیا گیا ہے) کا استعمال کرتی ہے:
import os,threading def main(): if os.name == 'nt': from . import fluent fluent.main() thread = threading.Thread(target=main , daemon=True) thread.start() مرحلہ 1: ابتدائی ڈراپر
پہلا ڈراپر، ایک بار صاف ہوجانے کے بعد، اضافی نقصان دہ کوڈ کو ڈاؤن لوڈ اور ایمبیڈ کرتا ہے، puts.py، ایک GitHub ذخیرہ سے سرخ بالوں والی پنڈلی-1337/ریپوسٹ (انتباہ: ممکنہ بدنیتی پر مبنی کوڈ یہاں)۔
ڈراپر سرایت کرتا ہے۔ puts.py مقبول کی مقامی تنصیب میں درخواستوں لائبریری، اس میں ترمیم کرنا __init__.py deobfuscation کو چلانے اور اگلے مرحلے کو انجام دینے کے لیے فائل۔ یہ deobfuscation مبہم پرتوں 1 … 3 کی بہت سی ایپلی کیشنز کو ریورس کرنے پر مشتمل ہے۔
مرحلہ 2: دوسرا ڈراپر
دوسرا ڈراپر، ایک بار اسی عمل کے بعد غیر واضح ہوجاتا ہے، ایک اور پے لوڈ ڈاؤن لوڈ کرتا ہے، ssl.py GitHub ذخیرہ سے، اس کا نام تبدیل کر دیتا ہے۔ udp.py، اور یہ یقینی بنانے کے لیے ایک لاک فائل تیار کرتا ہے کہ میلویئر بار بار انسٹال نہ ہو۔ پھر اسے ڈی اوبسکیٹ کرنے کے لیے چلایا جاتا ہے، جس کے نتیجے میں حتمی انفوسٹیلر پے لوڈ پر عمل درآمد ہوتا ہے۔
مرحلہ 3: فائنل انفوسٹیلر
آخری مرحلہ ایک مکمل طور پر فعال انفوسٹیلر ہے جو چوری کی جدید تکنیکوں کو استعمال کرتا ہے:
- اینٹی تجزیہ خصوصیات:
- اینٹی میل ویئر ٹولز کا پتہ لگاتا ہے اور اگر کسی بلیک لسٹ شدہ عمل، IPs، میزبان ناموں، یا ورچوئل ماحول کا پتہ چل جاتا ہے تو اسے ختم کر دیتا ہے۔
- ڈیٹا کا اخراج:
- مکمل معلومات حاصل کرتا ہے۔ اسکرین شاٹ سمیت، آئی پی، میک ایڈریس، وی پی این ڈیٹا، براؤزر کوکیز/ہسٹری، کریڈٹ کارڈ ڈیٹا اور کریپٹو والیٹ کی اسناد سے لے کر۔
- یہاں دکھائے گئے ٹیمپلیٹ کا استعمال کرتے ہوئے ٹیلیگرام چینل کے ذریعے چوری شدہ ڈیٹا (انکرپٹڈ) بھیجتا ہے:

Deobfuscation کی حکمت عملی
اسی طرح کے پیکجوں کا تجزیہ کرنے کے لیے، محققین کو اس کی مبہم تہوں کو منظم طریقے سے ریورس کرنا چاہیے:
- مبہم اقدامات کی تقلید کریں: پے لوڈ پر عمل کیے بغیر تبدیلیوں (مثلاً، ڈکرپشن، ڈیکمپریشن) کی نقل کرنے کے لیے اسکرپٹ لکھیں۔
- ریورس انکرپشن پرتیں: ایمبیڈڈ کیز اور الگورتھم کا استعمال کرتے ہوئے پے لوڈ کو نکالیں اور ڈکرپٹ کریں۔
- تکراری تجزیہ: حتمی پے لوڈ کی تشکیل نو کے لیے ہر درمیانی مرحلے کو تکراری طور پر عمل کریں۔
اس تجزیہ کو ہموار کرنے کے لیے خودکار ٹولز اور سینڈ باکس والے ماحول ضروری ہیں۔
حقیقی وقت میں خطرات سے آگے رہنے کے بارے میں مزید جاننا چاہتے ہیں؟
ہمارا وائٹ پیپر ڈاؤن لوڈ کریں، 'ابتدائی انتباہ: حقیقی وقت میں خطرے کی نشاندہی اور ترجیح،' اور دریافت کریں کہ اپنے سافٹ ویئر سپلائی چین کی حفاظت کیسے کی جائے۔
دھمکی آمیز اداکار
بظاہر پیکیج دو PyPI اکاؤنٹس سے شائع کیا گیا تھا، ابیر حسین 10 اور anomilano785، فی الحال ہٹا دیا گیا ہے۔
ایک (فی الحال فعال) GitHub اکاؤنٹ ہے جس کا نام ہے۔ ابیر حسین 10جس کا تعلق مہم سے ہو سکتا ہے۔ دی سرخ بالوں والی پنڈلی۔1337 گٹ ہب صارف جو اسٹیج 2 اور 3 پے لوڈز کو ڈاؤن لوڈ کرنے کے لیے استعمال ہونے والے ریپوزٹری کا مالک ہے بھی تجزیہ کے تحت ہے۔
اگرچہ انتساب ہمیشہ پیچیدہ ہوتا ہے اور سرخ ٹیم کی رکنیت ایک امکان ہے، لیکن معلومات کی قسم اور حجم ایک بدنیتی پر مبنی اداکار کی طرف اشارہ کرتا ہے۔
نتیجہ: میلویئر ارتقاء میں کوڈ کی رکاوٹ کا کردار
۔ دھاگے سے چلنے والا پیکج اپنی ملٹی اسٹیج ڈیلیوری میں جدید میلویئر کی الجھن کی مثال دیتا ہے۔ استعمال شدہ چوری کی تکنیکوں کے ساتھ مل کر، یہ پیکج پتہ لگانے سے بچنے اور تجزیہ کے خلاف مزاحمت کرنے کی واضح کوشش کو ظاہر کرتا ہے۔
یہ تجزیہ اس طرح کے خطرات سے نمٹنے کے لیے مشترکہ کوششوں اور خودکار آلات کی اہمیت کو واضح کرتا ہے۔ ان طریقوں کو الگ کرنے اور سمجھنے سے، سیکورٹی پیشہ ور مستقبل میں اسی طرح کے میلویئر کے خلاف بہتر دفاع تیار کر سکتے ہیں۔
کس طرح Xygeni کے MEW سسٹم نے نقصان دہ تھریڈ فلوئنٹ پیکیج کو پیداوار تک پہنچنے سے روکا
Xygeni کی میلویئر ارلی وارننگ (MEW) نظام کو روکنے میں اہم کردار ادا کیا۔ دھاگے سے چلنے والا Python پیکیج، ایک بدنیتی پر مبنی انحصار جس میں ایڈوانس ہے۔ کوڈ کی الجھن اور ایک کثیر مرحلہ infostealer میلویئراس سے پہلے کہ یہ پیداواری ماحول سے سمجھوتہ کر سکے۔ یہ ہے طریقہ:
- جامد تجزیہ کے ذریعے پتہ لگانا
MEW نے دیکھا دھاگے سے چلنے والاکا پوشیدہ کوڈ، مشکوک علامات جیسے تہہ دار خفیہ کاری اور غیر معمولی انحصاری سرگرمی کا پتہ لگانا۔ - رن ٹائم ریچ ایبلٹی اسیسمنٹ
سسٹم نے پایا کہ پیکج کا کوڈ استعمال کے دوران چل سکتا ہے، اسے اصل میں چلائے بغیر ایک سنگین خطرہ کے طور پر نشان زد کر رہا ہے۔ - CI/CD Pipeline تحفظ
MEW بلاک کر دیا گیا۔ دھاگے سے چلنے والا اصل وقت میں، اسے تعمیرات میں شامل ہونے سے روکا، اور اسے پیداوار تک پہنچنے سے روکا۔ اس نے ڈیولپرز کو قابل عمل انتباہات بھیجے، قیمتی وقت کی بچت کی۔ - دھمکی انٹیلی جنس شیئرنگ
Xygeni نے فوری طور پر پیکج کی اطلاع PyPI کو دی اور اس کے نتائج کو اپنے عالمی سیکیورٹی نیٹ ورک کے ساتھ شیئر کیا، اور اسے مزید پھیلنے سے روک دیا۔
پکڑ کر دھاگے سے چلنے والا ابتدائی طور پر، Xygeni کے MEW سسٹم نے اس بات کو یقینی بنایا کہ بدنیتی پر مبنی کوڈ سافٹ ویئر سپلائی چینز کو نقصان نہیں پہنچاتا یا CI/CD workflows.
اپنی حفاظت کرو CI/CD Pipelines مفت میں
جیسے دھمکیوں کو روکیں۔ دھاگے سے چلنے والا Xygeni کے مالویئر ارلی وارننگ سسٹم کے ساتھ۔ اپنا شروع کریں۔ مفت جانچ آج ہی اور اپنے سافٹ ویئر سپلائی چین کو محفوظ بنائیں۔
لوئس روڈریگز
Luis Rodriguez ایک طبیب ہے۔cist + ریاضی دان اور CISایس پی فی الحال Xygeni Security میں شریک بانی اور CTO ہیں۔ اس کے پاس سافٹ ویئر سیکیورٹی میں 20 سال سے زیادہ کا تجربہ ہے اور اس نے جیسے پروجیکٹس میں حصہ لیا۔ SAST اور SCA. وہ فی الحال توجہ مرکوز کرتا ہے۔ software supply chain security.
ڈینیئل مارٹن
ڈینیئل مارٹن سائبر سیکیورٹی کے ماہر اور Xygeni ریسرچ سیکیورٹی ٹیم کے رکن ہیں، SDLC سیکورٹی اور ایپلیکیشن کے خطرے میں کمی۔






