Nerbian به ترفندهای پیشرفته ضدتشخیص مجهز است
شرکت پروفپوینت از شناسایی بدافزاری جدید خبر داد که با بهکارگیری ترفندهای مختلف قادر بهدور زدن راهکارهای امنیتی و فرار از چنگ آنها است. نتایج بررسی و تحلیل محققان شرکت پروفپوینت حاکی از آن است که این بدافزار یک تروجان دسترسی از راه دور (Remote Access Trojan – بهاختصار RAT) بوده و از طریق کارزارهای مخرب ایمیلی با سوءاستفاده از سوژه COVID19 در حال گسترش است و برای این کار از ترفندهای مختلفی برای دورزدن راهکارهای امنیتی استفاده میکند. این بدافزار که Nerbian نامگذاری شده به زبان برنامهنویسی GO که سازگار با هر نوع سیستمعامل بوده، نوشته شده است و به طور قابلتوجهی از امکانات ضد تحلیل و ضد مهندسی معکوس استفاده میکند.
محققان پروفپوینت، نام این تروجان را بر اساس نام یکی از توابع موجود در کد بدافزار Nerbian گذاشتهاندکه به نظر میرسد از «Nerbia» نام مکانی تخیلی در رمان دنکیشوت (Don Quixote) اقتباس شده باشد. بر اساس مشاهدات، توزیع این تروجان برای نخستینبار از ۶ اردیبهشت با یک کارزار ایمیلی نهچندان حجیم آغاز و در پیامهایی به صنایع مختلف و عمدتاً در ایتالیا، اسپانیا و بریتانیا ارسال شده است. پیامهای ارسالی ادعا میکنند که از سوی سازمان بهداشت جهانی (World Health Organization – بهاختصار WHO) ارسال شدهاند و حاوی اطلاعات مهمی در مورد ویروس COVID19 هستند. مشابه این پیامها در یک کارزار «فریب سایبری» موسوم به فیشینگ (Phishing) ارسال میشد که در روزهای نخستین همهگیری کرونا در فروردین سال ۱۳۹۹ برپاشده بود.
در نمونه ایمیلهای منتشر شده، ایمیلهای ارسالی بهگونهای هستند که به نظر برسند از سوی سازمان بهداشت جهانی ارسال شدهاند. این ایمیلها از نشانیهای who.inter.svc@gmail[.]com یا announce@who-international[.]com و تحت عنوان World Health Organization یا WHO ارسال میشوند. این ایمیلها بهظاهر شامل اقدامات ایمنی مربوط به COVID19 بوده و همچنین شامل پیوستهایی هستند که عبارت «covid 19» در نام فایلها به کار رفته است. اما در واقع فایلهای پیوست، فایلهای Word حاوی ماکروهای مخرب هستند. در صورت فعالبودن ماکروها در نرمافزار Word، با کلیک کاربر بر روی فایلهای پیوست، اطلاعاتی در خصوص پیشگیری از COVID19 بهویژه قرنطینه کردن و مراقبت از افراد مبتلا به COVID19نمایش داده میشود. همچنین ماکرو جاسازی شده در فایل اجرا میشود که باعث ایجاد یک فایل بر روی سیستم قربانی شده و یک فرایند PowerShell را به جریان میاندازد. این فرایند فایل فراخوانیکننده Nerbian را در یک فایل اجرایی ۶۴ بیتی به نام UpdateUAV.exe که به زبان برنامهنویسی Go نوشته شده، بارگذاری میکند.
محققان معتقدند که زبان برنامهنویسی Go، احتمالاً به دلیل یادگیری آسان و سهولت استفاده از آن، در حال تبدیلشدن به زبان محبوب مهاجمان است. به نقل از محققان، تروجان Nerbian در چندین مرحله، از چند مؤلفه ضد تحلیل و چندین کتابخانه منبعباز استفاده میکند. در واقع، بدافزار در سه مرحله مجزا عمل میکند و بسیار پیچیده است. همانطور که توضیح داده شد، بدافزار با انتشار فایل مخرب فوق از طریق حملات فیشینگ شروع کرده و سپس با فایل اجراییUpdateUAV.exe ادامه میدهد. فایل فراخوانیکننده بدافزار قبل از اجرا و فعالسازی Nerbian، کنترلهای مختلفی را انجام میدهد تا مطمئن شود در محیط آزمایشگاهی، قرنطینه یا جعبه شنی اجرا نمیشود. در نهایت، تروجان از طریق یک فایل پیکربندی و رمزگذاری شده بااحتیاط بسیار اجرا میشود. بهمنظور اطمینان از رصد نشدن و دورزدن راهکارهای امنیتی، دادههای ارسالی به سرورهای کنترل و فرماندهی (Command-and-Control – بهاختصار 2C) رمزگذاری شده و از طریق ارتباطات امن منتقل میشوند.
محققان پروفپوینت اظهار داشتند که این بدافزار علاوه بر ارتباط و تبادل اطلاعات با سرورهای 2C، سایر کارهای معمول یک تروجان، همچون ضبط کلیدهای فشرده شده توسط کاربر (Keylogging) و تصویربرداری از صفحهنمایش (Screen Capture) را نیز به شیوه خود انجام میدهد. ضبط کلیدهای فشرده شده توسط کاربر را بهصورت رمزگذاری شده انجام میدهد؛ درحالیکه ابزار تصویربرداری از صفحهنمایش آن نیز در تمامی انواع سیستمهای عامل کار میکند. شاید پیچیدهترین بخش گریز از راهکارهای امنیتی در این فرایند سهمرحلهای، مرحله قبل از اجرای فایل فراخوانیکننده بدافزار Nerbian باشد. به گفته محققان، فایل فراخوانیکننده بدافزار، بهصورت دقیق و گسترده، سیستم قربانی را بررسی کرده و در صورت وجود هر یک از شرایط زیر، اجرای آن را متوقف میکند.
- اندازه دیسک سخت سیستم کمتر از یک اندازه معین (۱۰۰ گیگابایت) باشد.
- نام دیسک سخت حاوی «virtual»، «vbox» یا «vmware» باشد.
- آدرس MAC درخواست شده مقادیر OUI خاصی را برگرداند.
- چنانچه هر یک از برنامههای مهندسی معکوس/اشکالزدایی در فهرست فرایندها مشاهده شوند.
- اگر برنامههای تحلیل حافظه/ تخریب حافظه همچونDumplt.exe، RAMMap.exe، RAMMap64.exe و یا vmmap.exe در فهرست فرایندها وجود داشته باشند.
- و درنهایت چنانچه مقدار زمان سپری شده برای اجرای توابع خاص «بیش از حد» در نظر گرفته شود که نشاندهنده اجرا در محیط آزمایشگاهی است.
با اینحال، با وجود اینهمه پیچیدگی برای اطمینان از شناسایی نشدن تروجان Nerbian در مسیر نفوذ به دستگاه قربانی، فایل فراخوانیکننده بدافزار و خود بدافزار، بهغیر از استفاده از فشردهساز UPX، از روشهای مخفیسازی استفاده نمیکنند. بهکارگیری UPX نیز لزوماً منجر به مخفیسازی نمیشود و تنها باعث کاهش اندازه فایل اجرایی میشود. همچنین محققان اظهار داشتهاند که درک نحوه عملکرد برنامههای فراخوانیکننده بدافزار و خود بدافزار به دلیل وجود دادههایی در کد این برنامهها که به منابعی بر روی بستر برنامهنویسی GitHub اشاره دارند، آسان است.