کارشناسان کسپرسکی در جریان بررسیهای متداول خود، یک فایل DLL با نام HrServ (hrserv.dll) را کشف کردند که قبلاً یک shell وب ناشناخته بوده و ویژگیهای پیچیدهای مانند متدهای رمزگذاری سفارشی را برای ارتباط کلاینت و اجرای درون حافظه از خود به نمایش گذاشته است. تحلیل و بررسی کارشناسان از این نمونه، منجر به کشف انواع مرتبط گردآوری شده در سال ۲۰۲۱ گردید که نشان دهنده یک ارتباط بالقوه بین این رویدادهای جداگانه فعالیتهای مخرب میباشد.
نفوذ اولیه
با توجه به دادههای تلهمتری کسپرسکی، فرآیند PAExec.exe، ایجاد یک task زمانبندی شده در سیستم به نام MicrosoftsUpdate (sic) را آغاز میکند، که به نوبه خود برای اجرای یک فایل “BAT .” طراحی شده است.
"schtasks" /create /sc DAILY /tn MicrosoftsUpdate /tr "$system32\cmd.exe /c
$public\JKNLA.bat $public\hrserv.dll" /ru system /f
فایل “BAT .”، مسیر یک فایل DLL را به عنوان آرگومان میپذیرد. در این مثال، اسکریپت به همراه فایل public\hrserv.dll$ ارائه میشود که در پوشه System32 کپی میگردد. اسکریپت پس از این عملیات، یک سرویس را از طریق رجیستری سیستم و ابزار sc پیکربندی کرده و سپس سرویس جدید ایجاد شده را فعال می کند.
شل وب HrServ
توالی عملیات با ثبت یک کنترل کننده سرویس آغاز میشود. HrServ سپس یک سرور HTTP را با استفاده از API سرور HTTP برای عملکرد خود راه اندازی میکند که تابع HttpAddUrlToGroup را به منظور ثبت URL زیر و هدایت درخواست های منطبق به صف درخواست، فراخوانی میکند.
http://+:80/FC4B97EB-2965-4A3B-8BAD-B8172DE25520/
ارتباط کلاینت-سرور از تکنیک های رمزگذاری سفارشی استفاده میکند که شامل کدگذاری Base64 و الگوریتم های هش FNV1A64 است.
بر اساس نوع و اطلاعات موجود در یک درخواست HTTP، توابع خاصی فعال میشوند. این توابع با پارامتر GET به نام cp متمایز میشوند. علاوه بر این، فایل DLL از مقدار کوکی NID برای اهداف مختلف استفاده میکند. استفاده از الگوی پارامتر GET و مقدار کوکی با رویههای استفاده شده توسط Google سازگار است. ما گمان میکنیم که این شباهت عمدی در قراردادهای نامگذاری به منظور پنهان نمودن این درخواستها در ترافیک شبکه میباشد که شناسایی چنین فعالیتهای مخربی را چالشبرانگیزتر میکند. نمونهای از چنین درخواستی بصورت زیر خواهد بود:
&cp=1&client=desktop-gws-wiz-on-focus-serp&xssi=t&hl=en-TW&authuser=0&pq=
اجرای کد
اگر مقدار cp در درخواست ۶ باشد، این نشان دهنده یک فرآیند اجرای کد است؛ آنگاه:
- در ابتدا، مقدار کوکی NID را استخراج و تکنیک رمزگشایی سفارشی آن را اعمال می کند.
- مقدارِ رمزگشایی شده را در مسیر رجیستری مشخص شده مینویسد که به عنوان ” HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\IdentityStore\RemoteFile” نشان داده شده است.
- سپس داده های POST رمزگشایی شده سفارشی در حافظه کپی میگردد و پس از آن یک رشته جدید ایجاد و فرآیند وارد حالت sleep میشود.
مقدار cp در یک سناریوی مشاهده شده خاص، ناشناخته است. یک ایمپلنت چند منظوره در حافظه سیستم فعال میشود. ایمپلنت، یک فایل در دایرکتوری “%temp%” ایجاد و اطلاعات را از رجیستری بازیابی میکند، برخی اقدامات را بر اساس این اطلاعات انجام میدهد و خروجی این اقدامات را در فایل ایجاد شده ثبت می کند. در نتیجه، رجیستری و فایل موقت به عنوان کانال ارتباطی بین ایمپلنت و HrServ استفاده میشود.
بر اساس دادههای تلهمتری کسپرسکی، پس از ایجاد دسترسی و قرار دادن ایمپلنت حافظه در حافظه سیستم، اقدامات بعدی پاک کردن ردپاهای قبلی توسط حذف task برنامه ریزی شده ” MicrosoftsUpdate” و هر دو فایل DLL اولیه و batch است:
schtasks /delete /tn MicrosoftsUpdate /f
cmd /c "del /f/s/q $public\hrserv.dll & del /f/s/q $public\JKNLA.bat"
انواع قدیمیتر
کسپرسکی همچنین انواع قبلی HrServ را با نامهای متفاوت کشف کرد. این فایلهای DLL به اوایل سال ۲۰۲۱ باز میگردند. آنها همچنین از الگوریتم رمزگذاری سفارشی استفاده میکنند و پس از خطای خواندن فایل، به همان شیوه رفتار میکنند. با این حال، تفاوتهای ظریفی نیز وجود دارد.
- URL شل وب این انواع قدیمیتر با آدرس فعلی متفاوت میباشند:
https://+:443/owa/MSExchangeService.svc
- این نمونهها با ایجاد یک فرآیند و بازیابی خروجی آن از طریق یک pipe ، برخلاف تخصیص یک بخش حافظه و ایجاد یک رشته از آن، رفتاری متمایز از خود نشان میدهند.
قربانیان
تنها قربانی شناخته شده بر اساس تله متری کسپرسکی، یک نهاد دولتی در افغانستان میباشد.
انتساب
TTPهای تحلیل شده در این تحقیق با هیچ عامل تهدید شناخته شدهای مطابقت ندارند، اما شواهد زیر جمع آوری شدهاند:
- پارامترهای GET مورد استفاده در فایل dll که برای پیروی از سرویسهای گوگل نیز استفاده میشوند، شامل ” hl” میباشند. این، زبان میزبان اینترفیس کاربر را مشخص میکند. اگرچه این پارامتر هیچ عملکردی در بردار حمله ندارد، اما مقدار اختصاص داده شده ” en-TW” مشخص میکند که اینترفیس جستجوی گوگل باید به زبان انگلیسی و نتایج جستجو باید به زبان چینی سنتی نمایش داده شوند:
&cp=1&client=desktop-gws-wiz-on-focus-serp&xssi=t&hl=en-TW&authuser=0&pq=
- نمونهها شامل رشتههای راهنما برای شرایط خاص، به زبان انگلیسی هستند. چندین اشتباه تایپی نیز مشاهده شده است که نشان میدهد زبان مادری عامل تهدید پشت این نمونهها، انگلیسی نیست.
نمونه تحلیل شده نشان دهنده یک shell وب توانمند است و بر اساس timestamp های کامپایل، منشأ آن حداقل به سال ۲۰۲۱ باز میگردد. این نوع بدافزار پیچیده، دارای توانایی آغاز اجراهای درون حافظه میباشد. ارتباط در سناریوی مشاهده شده، از طریق دستکاری رجیستری و فایلهای موقت برقرار میشود.
قابل ذکر است که shell وب و ایمپلنت حافظه از رشتههای مختلفی برای شرایط خاص استفاده میکنند. علاوه بر این، ایمپلنت حافظه دارای یک پیام کمکی است که با دقت ساخته شده است. ویژگیهای بدافزار با در نظر گرفتن این عوامل، با فعالیت مخرب دارای انگیزه مالی سازگارتر میباشد. با این حال، روش عملیاتی آن شباهتهایی با رفتار APT نشان میدهد. علیرغم فعالیت طولانی مدت این بدافزار طی چندین سال، موارد متعددی که این نمونهها را شامل گردد، مستند نشده است.
IoCها
هشهای فایل
b9b7f16ed28140c5fcfab026078f4e2e
418657bf50ee32acc633b95bac4943c6
d0fe27865ab271963e27973e81b77bae
890fe3f9c7009c23329f9a284ec2a61b