ما به سری مقالات خود که به تجزیه و تحلیل بدافزار اختصاص دارد ادامه می دهیم. که در
Agent Tesla یک نرم افزار جاسوسی مدولار است که با استفاده از یک مدل بدافزار به عنوان یک سرویس تحت پوشش یک محصول قانونی Keylogger توزیع شده است. عامل تسلا قادر به استخراج و انتقال اعتبار کاربر از مرورگرها، کلاینت های ایمیل و سرویس گیرندگان FTP به سرور به مهاجمان، ضبط داده های کلیپ بورد و گرفتن صفحه نمایش دستگاه است. در زمان تجزیه و تحلیل، وب سایت رسمی توسعه دهندگان در دسترس نبود.
فایل پیکربندی
جدول زیر لیست می کند که کدام عملکرد برای نمونه ای که استفاده می کنید اعمال می شود:
شرح | ارزش |
پرچم استفاده از KeyLogger | درست |
پرچم استفاده از ScreenLogger | غلط |
فاصله ارسال گزارش KeyLogger در چند دقیقه | 20 |
فاصله ارسال گزارش ScreenLogger در چند دقیقه | 20 |
پرچم مدیریت کلید Backspace. نادرست - فقط ورود به سیستم. درست - کلید قبلی را پاک می کند | غلط |
نوع CNC گزینه ها: smtp، webpanel، ftp | SMTP |
پرچم فعالسازی رشته برای پایان دادن به فرآیندها از لیست "%filter_list%" | غلط |
UAC غیرفعال کردن پرچم | غلط |
Task Manager پرچم را غیرفعال می کند | غلط |
CMD غیرفعال کردن پرچم | غلط |
پرچم غیرفعال کردن پنجره را اجرا کنید | غلط |
نمایشگر رجیستری غیرفعال کردن پرچم | غلط |
پرچم نقاط بازیابی سیستم را غیرفعال کنید | درست |
صفحه کنترل غیرفعال کردن پرچم | غلط |
MSCONFIG غیرفعال کردن پرچم | غلط |
برای غیرفعال کردن منوی زمینه در Explorer پرچم گذاری کنید | غلط |
پرچم سنجاق | غلط |
مسیر کپی کردن ماژول اصلی هنگام پین کردن آن به سیستم | %startupfolder% %insfolder%%insname% |
پرچم برای تنظیم ویژگی های "System" و "Hidden" برای ماژول اصلی اختصاص داده شده به سیستم | غلط |
برای انجام راهاندازی مجدد هنگام پین شدن به سیستم، پرچمگذاری کنید | غلط |
پرچم برای انتقال ماژول اصلی به یک پوشه موقت | غلط |
پرچم دور زدن UAC | غلط |
فرمت تاریخ و زمان برای ورود به سیستم | yyyy-MM-dd HH:mm:ss |
برای استفاده از فیلتر برنامه برای KeyLogger پرچم گذاری کنید | درست |
نوع فیلترینگ برنامه 1- نام برنامه در عنوان پنجره جستجو می شود 2- نام برنامه در نام فرآیند پنجره جستجو می شود |
1 |
فیلتر برنامه | "فیس بوک" "توییتر" "gmail" "اینستاگرام" "فیلم سینما" "اسکایپ" "پورن" "هک" "واتساپ" "اختلاف" |
ماژول اصلی را به سیستم متصل کنید
اگر پرچم مربوطه تنظیم شده باشد، ماژول اصلی در مسیر مشخص شده در پیکربندی به عنوان مسیری که باید به سیستم اختصاص داده شود، کپی می شود.
بسته به مقدار پیکربندی، ویژگی های "Hidden" و "System" به فایل داده می شود.
Autorun توسط دو شعبه رجیستری ارائه می شود:
- نرم افزار HKCUMicrosoftWindowsCurrentVersionRun%insregname%
- HKCUSOFTWAREMicrosoftWindowsCurrentVersionExplorerStartupApprovedRun %insregname%
از آنجایی که بوت لودر به فرآیند تزریق می کند RegAsm، تنظیم پرچم ثابت برای ماژول اصلی منجر به عواقب بسیار جالبی می شود. بدافزار به جای کپی کردن خود، فایل اصلی را به سیستم پیوست کرد RegAsm.exe، که طی آن تزریق انجام شد.
تعامل با C&C
صرف نظر از روش مورد استفاده، ارتباط شبکه با به دست آوردن IP خارجی قربانی با استفاده از منبع آغاز می شود
در ادامه روش های تعامل شبکه ارائه شده در نرم افزار توضیح داده شده است.
وب پنل
این تعامل از طریق پروتکل HTTP انجام می شود. بدافزار یک درخواست POST را با هدرهای زیر اجرا می کند:
- عامل کاربر: Mozilla/5.0 (Windows U Windows NT 6.1 ru rv:1.9.2.3) Gecko/20100401 Firefox/4.0 (NET CLR 3.5.30729)
- اتصال: Keep-Alive
- نوع محتوا: application/x-www-form-urlencoded
آدرس سرور با مقدار مشخص می شود %PostURL%. پیام رمزگذاری شده در پارامتر ارسال می شود "پ". مکانیسم رمزگذاری در بخش توضیح داده شده است "الگوریتم های رمزگذاری" (روش 2).
پیام ارسال شده به شکل زیر است:
type={0}nhwid={1}ntime={2}npcname={3}nlogdata={4}nscreen={5}nipadd={6}nwebcam_link={7}nclient={8}nlink={9}nusername={10}npassword={11}nscreen_link={12}
پارامتر نوع نوع پیام را نشان می دهد:
hwid - یک هش MD5 از مقادیر شماره سریال مادربرد و شناسه پردازنده ثبت می شود. به احتمال زیاد به عنوان شناسه کاربری استفاده می شود.
زمان - برای انتقال زمان و تاریخ فعلی خدمت می کند.
pcname - که تعریف میشود <نام کاربری>/<نام رایانه>.
logdata - داده های ثبت نام
هنگام انتقال رمزهای عبور، پیام به صورت زیر است:
type={0}nhwid={1}ntime={2}npcname={3}nlogdata={4}nscreen={5}nipadd={6}nwebcam_link={7}nscreen_link={8}n[passwords]
در زیر توضیحاتی در مورد داده های سرقت شده در قالب ارائه شده است client[]={0}nlink[]={1}نام کاربری[]={2}npassword[]={3}.
SMTP
این تعامل از طریق پروتکل SMTP انجام می شود. نامه ارسال شده در قالب HTML است. پارامتر BODY به نظر می رسد مانند:
سرفصل نامه به شکل کلی است: <نام کاربر>/<نام رایانه> <نوع محتوا>. محتویات نامه و همچنین پیوست های آن رمزگذاری نشده است.
تعامل از طریق پروتکل FTP انجام می شود. یک فایل با نام به سرور مشخص شده منتقل می شود <CONTENT TYPE>_<نام کاربر>-<نام کامپیوتر>_<تاریخ و ساعت>.html. محتویات فایل رمزگذاری نشده است.
الگوریتم های رمزگذاری
این مورد از روش های رمزگذاری زیر استفاده می کند:
روش 1
این روش برای رمزگذاری رشته ها در ماژول اصلی استفاده می شود. الگوریتم مورد استفاده برای رمزگذاری است AES.
ورودی یک عدد اعشاری شش رقمی است. تبدیل زیر بر روی آن انجام می شود:
f(x) = (((x >> 2 - 31059) ^ 6380) - 1363) >> 3
مقدار حاصل، شاخص آرایه داده های جاسازی شده است.
هر عنصر آرایه یک دنباله است DWORD. هنگام ادغام DWORD آرایه ای از بایت ها به دست می آید: 32 بایت اول کلید رمزگذاری است و به دنبال آن 16 بایت از بردار اولیه سازی است و بایت های باقی مانده داده های رمزگذاری شده هستند.
روش 2
الگوریتم استفاده شده 3DES در حالت بانک مرکزی اروپا (ECB) با بالشتک در بایت کامل (PKCS7).
کلید توسط پارامتر مشخص می شود %urlkey%با این حال، رمزگذاری از هش MD5 خود استفاده می کند.
عملکرد مخرب
نمونه مورد مطالعه از برنامه های زیر برای اجرای عملکرد مخرب خود استفاده می کند:
کلید نگار
اگر یک پرچم بدافزار مربوطه با استفاده از تابع WinAPI وجود دارد SetWindowsHookEx کنترل کننده خود را برای رویدادهای فشار کلید روی صفحه کلید اختصاص می دهد. تابع handler با گرفتن عنوان پنجره فعال شروع می شود.
اگر پرچم فیلتر برنامه تنظیم شده باشد، فیلتر بسته به نوع مشخص شده انجام می شود:
- نام برنامه در عنوان پنجره جستجو می شود
- نام برنامه در نام فرآیند پنجره جستجو می شود
در مرحله بعد، یک رکورد با اطلاعات مربوط به پنجره فعال در قالب به گزارش اضافه می شود:
سپس اطلاعات مربوط به کلید فشرده شده ثبت می شود:
کلید | رکورد |
Backspace | بسته به پرچم پردازش کلید Backspace: False – {BACK} درست - کلید قبلی را پاک می کند |
کلید CAPS LOCK | {کلید CAPS LOCK} |
ESC | {خروج} |
صفحه بالا | {PageUp} |
پایین | ↓ |
حذف | {DEL} |
" | " |
F5 | {F5} |
& | و |
F10 | {F10} |
TAB | {TAB} |
< | < |
> | > |
فضا | |
F8 | {F8} |
F12 | {F12} |
F9 | {F9} |
ALT + TAB | {ALT+TAB} |
END | {پایان} |
F4 | {F4} |
F2 | {F2} |
CTRL | {CTRL} |
F6 | {F6} |
درست | → |
Up | ↑ |
F1 | {F1} |
ترک کرد | ← |
صفحه پایین | {PageDown} |
قرار دادن | {درج} |
پیروزی | {پیروزی} |
شماره گذاری | {NumLock} |
F11 | {F11} |
F3 | {F3} |
صفحه اصلی | {HOME} |
ENTER | {وارد} |
ALT + F4 | {ALT+F4} |
F7 | {F7} |
کلید دیگر | بسته به موقعیت کلیدهای CapsLock و Shift، نویسه با حروف بزرگ یا کوچک است |
در یک فرکانس مشخص، گزارش جمع آوری شده به سرور ارسال می شود. اگر انتقال ناموفق باشد، گزارش در یک فایل ذخیره می شود %TEMP%log.tmp در قالب:
هنگامی که تایمر فعال می شود، فایل به سرور منتقل می شود.
ScreenLogger
در یک فرکانس مشخص، بدافزار یک اسکرین شات در قالب ایجاد می کند JPEG با معنی کیفیت برابر با 50 است و آن را در یک فایل ذخیره می کند %APPDATA %<توالی تصادفی 10 کاراکتری>.jpg. پس از انتقال، فایل حذف می شود.
ClipboardLogger
اگر پرچم مناسب تنظیم شده باشد، مطابق جدول زیر در متن رهگیری شده جایگزین می شود.
پس از این، متن در گزارش وارد می شود:
PasswordStealer
بدافزار می تواند رمزهای عبور را از برنامه های زیر دانلود کند:
مرورگرها | مشتریان ایمیل | مشتریان FTP |
کروم | چشم انداز | فایلزیلا |
فایرفاکس | الاگزنه استرالیایی | WS_FTP |
IE/Edge | فاکس میل | WinSCP |
سیاحت اکتشافی در افریقا | اپرا ایمیل | CoreFTP |
مرورگر اپرا | با IncrediMail | FTP Navigator |
Yandex | پوکومیل | FlashFXP |
Comodo را | یودورا | SmartFTP |
کروم پلاس | خفاش | FTP Commander |
کروم | Postbox | |
مشعل | ClawsMail | |
7Star | ||
آمیگو | ||
نرم افزار Brave | مشتریان جابر | مشتریان VPN |
CentBrowser | Psi/Psi+ | VPN را باز کنید |
چدوت | ||
CocCoc | ||
مرورگر عناصر | دانلود منیجر | |
مرورگر حریم خصوصی حماسی | اینترنت مدیریت دانلود | |
کومتا | JDownloader | |
اوربیتوم | ||
قمر مصنوعی | ||
uCozMedia | ||
ویوالدی | ||
SeaMonkey | ||
مرورگر Flock | ||
مرورگر UC | ||
بلک هاوک | ||
سایبر فاکس | ||
کی-ملون | ||
گربه یخی | ||
اژدهای یخی | ||
ماه رنگ پریده | ||
واترفاکس | ||
مرورگر فالکون |
مقابله با تحلیل پویا
- با استفاده از تابع خواب. به شما امکان میدهد با مهلت زمانی، برخی از جعبههای شنی را دور بزنید
- از بین بردن یک نخ منطقه. شناسه. به شما امکان می دهد واقعیت بارگیری یک فایل از اینترنت را پنهان کنید
- در پارامتر %filter_list% فهرستی از فرآیندهایی را که بدافزار در فواصل زمانی یک ثانیه خاتمه می دهد، مشخص می کند
- قطع ارتباط UAC
- غیرفعال کردن مدیر وظیفه
- قطع ارتباط CMD
- غیرفعال کردن یک پنجره «ويپلينتь»
- غیرفعال کردن کنترل پنل
- غیرفعال کردن یک ابزار RegEdit
- غیرفعال کردن نقاط بازیابی سیستم
- منوی زمینه را در Explorer غیرفعال کنید
- قطع ارتباط MSCONFIG
- میان بر UAC:
ویژگی های غیرفعال ماژول اصلی
در طول تجزیه و تحلیل ماژول اصلی، توابعی شناسایی شدند که مسئول پخش در سراسر شبکه و ردیابی موقعیت ماوس بودند.
کرم
رویدادهای مربوط به اتصال رسانه های قابل جابجایی در یک موضوع جداگانه بررسی می شوند. هنگام اتصال، بدافزار با نام در ریشه سیستم فایل کپی می شود scr.exe، پس از آن فایل های با پسوند را جستجو می کند lnk. تیم همه lnk تغییرات cmd.exe /c شروع به scr.exe&start <فرمان اصلی> و خروج.
به هر دایرکتوری در ریشه رسانه یک ویژگی داده می شود "پنهان" و یک فایل با پسوند ایجاد می شود lnk با نام دایرکتوری مخفی و دستور cmd.exe /c start scr.exe&explorer /root"%CD%<DIRECTORY NAME>" و خروج.
MouseTracker
روش انجام رهگیری مشابه روشی است که برای صفحه کلید استفاده می شود. این قابلیت هنوز در حال توسعه است.
فعالیت فایل
مسیر | شرح |
%Temp%temp.tmp | دارای یک شمارنده برای تلاش های دور زدن UAC |
%startupfolder%%insfolder%%insname% | مسیری که باید به سیستم HPE اختصاص داده شود |
%Temp%tmpG{زمان کنونی بر حسب میلی ثانیه}.tmp | مسیر برای پشتیبان گیری از ماژول اصلی |
%Temp%log.tmp | ورود به سیستم فایل |
%AppData%{یک دنباله دلخواه از 10 کاراکتر}.jpeg | تصاویر |
C:UsersPublic{توالی دلخواه از 10 کاراکتر}.vbs | مسیر فایل vbs که بوت لودر می تواند از آن برای پیوست کردن به سیستم استفاده کند |
%Temp%{نام پوشه سفارشی}نام فایل} | مسیری که بوت لودر برای اتصال خود به سیستم استفاده می کند |
مشخصات مهاجم
به لطف دادههای احراز هویت رمزگذاری شده، ما توانستیم به مرکز فرماندهی دسترسی پیدا کنیم.
این به ما امکان داد تا ایمیل نهایی مهاجمان را شناسایی کنیم:
junaid[.]in***@gmail[.]com.
نام دامنه مرکز فرماندهی در نامه ثبت شده است sg***@gmail[.]com.
نتیجه
طی تجزیه و تحلیل دقیق بدافزار مورد استفاده در حمله، ما توانستیم عملکرد آن را مشخص کنیم و کاملترین فهرست از شاخص های سازش مربوط به این مورد را بدست آوریم. درک مکانیسم های تعامل شبکه بین بدافزارها امکان ارائه توصیه هایی برای تنظیم عملکرد ابزارهای امنیت اطلاعات و همچنین نوشتن قوانین IDS پایدار را فراهم کرد.
خطر اصلی عامل تسلا مانند DataStealer که برای انجام وظایف خود نیازی به تعهد به سیستم یا منتظر فرمان کنترلی ندارد. هنگامی که روی دستگاه قرار می گیرد، بلافاصله شروع به جمع آوری اطلاعات خصوصی می کند و آن را به CnC منتقل می کند. این رفتار تهاجمی از جهاتی شبیه رفتار باج افزارها است، با تنها تفاوت این که این باج افزارها حتی به اتصال شبکه هم نیاز ندارند. اگر با این خانواده مواجه شدید، پس از پاکسازی سیستم آلوده از خود بدافزار، قطعاً باید تمام رمزهای عبوری را که حداقل از نظر تئوری میتوانند در یکی از برنامههای ذکر شده در بالا ذخیره شوند، تغییر دهید.
با نگاه کردن به آینده، فرض کنید که مهاجمان ارسال می کنند عامل تسلا، بوت لودر اولیه اغلب تغییر می کند. این به شما امکان می دهد در زمان حمله مورد توجه اسکنرهای استاتیک و تحلیلگرهای اکتشافی قرار نگیرید. و تمایل این خانواده به شروع فوری فعالیت، مانیتورهای سیستم را بی استفاده می کند. بهترین راه برای مبارزه با AgentTesla، تجزیه و تحلیل اولیه در جعبه شنی است.
در سومین مقاله از این مجموعه به بررسی سایر بوت لودرهای مورد استفاده می پردازیم عامل تسلا، و همچنین روند بسته بندی نیمه اتوماتیک آنها را مطالعه کنید. از دست نده!
مخلوط
SHA1 |
A8C2765B3D655BA23886D663D22BDD8EF6E8E894 |
8010CC2AF398F9F951555F7D481CE13DF60BBECF |
79B445DE923C92BF378B19D12A309C0E9C5851BF |
15839B7AB0417FA35F2858722F0BD47BDF840D62 |
1C981EF3EEA8548A30E8D7BF8D0D61F9224288DD |
C&C
URL |
sina-c0m[.]icu |
smtp[.]sina-c0m[.]icu |
RegKey
ثبت |
HKCUSoftwareMicrosoftWindowsCurrentVersionRun{نام اسکریپت} |
HKCUSoftwareMicrosoftWindowsCurrentVersionRun%insregname% |
HKCUSOFTWAREMicrosoftWindowsCurrentVersionExplorerStartupApprovedRun%insregname% |
موتکس
هیچ شاخصی وجود ندارد.
فایل ها
فعالیت فایل |
%Temp%temp.tmp |
%startupfolder%%insfolder%%insname% |
%Temp%tmpG{زمان کنونی بر حسب میلی ثانیه}.tmp |
%Temp%log.tmp |
%AppData%{یک دنباله دلخواه از 10 کاراکتر}.jpeg |
C:UsersPublic{توالی دلخواه از 10 کاراکتر}.vbs |
%Temp%{نام پوشه سفارشی}نام فایل} |
اطلاعات نمونه ها
نام | ناشناخته |
MD5 | F7722DD8660B261EA13B710062B59C43 |
SHA1 | 15839B7AB0417FA35F2858722F0BD47BDF840D62 |
SHA256 | 41DC0D5459F25E2FDCF8797948A7B315D3CB0753 98D808D1772CACCC726AF6E9 |
نوع | PE (.NET) |
اندازه | 327680 |
اسم اصلی | AZZRIDKGGSLTYFUUBCCRRCUMRKTOXFVPDKGAGPUZI_20190701133545943.exe |
مهر تاریخ | 01.07.2019 |
کامپایلر | VB.NET |
نام | IELibrary.dll |
MD5 | BFB160A89F4A607A60464631ED3ED9FD |
SHA1 | 1C981EF3EEA8548A30E8D7BF8D0D61F9224288DD |
SHA256 | D55800A825792F55999ABDAD199DFA54F3184417 215A298910F2C12CD9CC31EE |
نوع | PE (.NET DLL) |
اندازه | 16896 |
اسم اصلی | IELibrary.dll |
مهر تاریخ | 11.10.2016 |
کامپایلر | Microsoft Linker (48.0*) |
منبع: www.habr.com