NimDoor Malware
متخصصان امنیت سایبری یک خانواده بدافزار جدید و مخفیانه macOS به نام NimDoor را کشف کردهاند که به دلیل تکنیکهای پیشرفته پایداری، مکانیسمهای سرقت اطلاعات مخفیانه و قابلیتهای پیچیده فرار، تهدیدی جدی محسوب میشود. این کمپین مخرب به عوامل تهدید همسو با کره شمالی نسبت داده میشود که بخشهای Web3 و ارزهای دیجیتال را هدف قرار میدهند.
فهرست مطالب
هکرهای کره شمالی به Nim و macOS روی آوردند
عاملان تهدیدی که گمان میرود با کره شمالی مرتبط باشند، اکنون از زبان برنامهنویسی Nim در زرادخانه بدافزار خود استفاده میکنند. این نشاندهنده تکامل مداوم در مجموعه ابزارهای آنهاست، چرا که کمپینهای قبلی از زبانهایی مانند Go و Rust استفاده میکردند. استفاده جدید از Nim نشان دهنده قصد آنها برای نوآوری است، به خصوص در ایجاد تهدیدهای چند پلتفرمی که تشخیص و تجزیه و تحلیل آنها دشوار است.
در این کمپین، مهاجمان بهطور خاص سازمانهای متمرکز بر Web3 و ارزهای دیجیتال را هدف قرار میدهند و معتقدند که این عملیات با انگیزه مالی و با هدف ایجاد اختلال یا نفوذ در زیرساختهای مالی دیجیتال انجام میشود.
تکنیکهای بسیار غیرمعمول macOS
چیزی که NimDoor را به طور خاص نگرانکننده میکند، رویکرد نامتعارف آن برای آلودهسازی macOS است. به طور قابل توجهی، از موارد زیر استفاده میکند:
- تزریق فرآیند، یک تکنیک نادر برای بدافزارهای macOS، که به تهدید اجازه میدهد فرآیندهای مشروع را ربوده و دستکاری کند.
- کانالهای ارتباطی WSS (WebSocket Secure) برای تعاملات رمزگذاریشدهی C2.
- یک روش ماندگاری جدید که از کنترلکنندههای سیگنال SIGINT و SIGTERM بهره میبرد و به بدافزار اجازه میدهد تا پس از خاتمه یا راهاندازی مجدد سیستم، خود را مجدداً نصب کند.
این ویژگیها آن را قادر میسازد تا کمسروصدا باقی بماند و در برابر اختلالات رایج کاربر یا سیستم مقاوم بماند.
زنجیره حمله با سوخت مهندسی اجتماعی
این حمله با یک استراتژی مهندسی اجتماعی آغاز میشود:
- با قربانیان از طریق پلتفرمهایی مانند تلگرام تماس گرفته میشود و آنها را ترغیب میکنند تا با استفاده از Calendly یک جلسه زوم برنامهریزی کنند.
- آنها یک ایمیل جعلی حاوی اسکریپت بهروزرسانی SDK زوم دریافت میکنند که ظاهراً برای اطمینان از سازگاری با نرمافزار ویدئو کنفرانس است.
این منجر به اجرای یک AppleScript مخرب میشود که همزمان با هدایت کاربر به یک لینک معتبر Zoom، یک اسکریپت مرحله دوم را از یک سرور راه دور دانلود میکند. اسکریپت مرحله دوم، فایلهای فشرده ZIP حاوی موارد زیر را استخراج میکند:
- فایلهای باینری برای ایجاد پایداری
- اسکریپتهای Bash برای سرقت دادههای سیستم
نقش InjectWithDyldArm64
در قلب فرآیند آلودهسازی، یک لودر C++ به نام InjectWithDyldArm64 یا به اختصار InjectWithDyld وجود دارد. این مولفه برای استقرار مؤثر و مخفیانهی بدافزار بسیار مهم است. این فرآیند با رمزگشایی دو فایل باینری جاسازیشده، یکی با نامهای 'Target' و دیگری با نام 'trojan1_arm64'، آغاز میشود. پس از رمزگشایی، فرآیند Target را در حالت تعلیق اجرا میکند. با متوقف شدن فرآیند، لودر فایل باینری trojan1_arm64 را به آن تزریق میکند و سپس اجرا را از سر میگیرد. این روش به پیلودهای مخرب اجازه میدهد تا به شیوهای بسیار مخفیانه، با دور زدن دفاعهای استاندارد سیستم و به حداقل رساندن احتمال شناسایی، تحویل داده و فعال شوند.
سرقت اطلاعات کاربری و نظارت بر سیستم
پس از فعال شدن، این بدافزار با یک سرور فرماندهی و کنترل (C2) از راه دور ارتباط برقرار میکند و به آن اجازه میدهد چندین عملیات مخرب را انجام دهد. این عملیات شامل جمعآوری اطلاعات دقیق سیستم، اجرای دستورات دلخواه از راه دور، پیمایش در دایرکتوریهای مختلف و ارسال نتایج این اقدامات به مهاجم است.
این تهدید با دخالت مؤلفه trojan1_arm64 تشدید میشود، که با بازیابی دو payload دیگر از زیرساخت C2، حمله را تقویت میکند. این payloadها بهطور خاص برای جمعآوری اطلاعات حساس ساخته شدهاند. اهداف اصلی آنها اعتبارنامههای ورود به سیستم ذخیره شده در مرورگرهای وب پرکاربرد - Arc، Brave، Chrome، Edge و Firefox - و همچنین دادههای کاربر از برنامه پیامرسان تلگرام است.
مکانیسمهای پایداری
این بدافزار فراتر از اجزای اصلی خود، فایلهای اجرایی مبتنی بر Nim را نیز مستقر میکند که ماژولی به نام CoreKitAgent را فعال میکنند. این ماژول با نظارت بر هرگونه تلاش برای خاتمه دادن به عملکرد بدافزار، نقش مهمی در تضمین انعطافپذیری آن ایفا میکند. برای حفظ حضور خود، کنترلکنندههای سیگنال سفارشی را برای SIGINT و SIGTERM نصب میکند و به آن اجازه میدهد در صورت تلاش کاربر یا ابزار امنیتی برای خاموش کردن آن، به طور خودکار دوباره راهاندازی شود. این مکانیسم داخلی، پایداری بدافزار را به طور قابل توجهی تقویت میکند.
مهاجمان همچنین به طور گسترده از AppleScript استفاده میکنند و نه تنها در مرحله اولیه آلودگی، بلکه در طول عملیات بدافزار برای نظارت و کنترل مداوم از آن بهره میبرند. از طریق این قابلیت اسکریپتنویسی، بدافزار هر 30 ثانیه یک بار سیگنالهای دورهای را به سرورهای C2 کدگذاری شده ارسال میکند، جزئیات مربوط به فرآیندهای در حال اجرا را استخراج میکند و دستورات جدید صادر شده توسط عامل تهدید از راه دور را اجرا میکند.
چرا نیم، بدافزارها را خطرناکتر میکند؟
استفاده از زبان برنامهنویسی نیم (Nim) مزایای قابل توجهی به مهاجمان میدهد. توانایی نیم در اجرای توابع در زمان کامپایل به آنها اجازه میدهد تا:
- منطق پیچیدهای را جاسازی کنید که تشخیص آن دشوار است
- مبهمسازی جریان کنترل درون فایلهای باینری
- کد توسعهدهنده و کد زمان اجرا را با هم ترکیب میکند و تجزیه و تحلیل را به طور قابل توجهی سختتر میکند.
این امر منجر به فایلهای باینری فشرده و با عملکرد بالا میشود که قابلیت مشاهده آنها برای موتورهای تشخیص بدافزار سنتی کاهش مییابد.
نیمدور (NimDoor) یادآوری آشکاری است که macOS دیگر در برابر تهدیدات پیشرفته و مداوم مصون نیست. با توجه به اینکه اکنون هکرهای کره شمالی با استفاده از تکنیکهای در حال تکامل و زبانهای برنامهنویسی کمتر شناختهشده، این پلتفرم را هدف قرار میدهند، آگاه و هوشیار ماندن بیش از هر زمان دیگری حیاتی است.