در عصری که تهدیدات سایبری با سرعتی بیسابقه تکامل پیدا میکنند، شناخت و رویارویی با بدافزارهای پیچیده همچون Xeno RAT بسیار حیاتی است. در این مقاله به بررسی بدافزار Xeno Rat میپردازیم. بد افزاری که با زبان #C نوشته شده و قابلیتهای بیهمتایی را داراست. از جمله این قابلیتها میتوان قابلیت تکثیر در سیستمهای مختلف، تکنیکهای مخفیسازی فعالیتهای مخرب و پروسه ایجاد پیلودهای منعطف و سازگار را نام برد.
توسعهدهنده بدافزار Xeno RAT آن را به شکل منبعباز (Open Source) و رایگان از طریق گیتهاب در اختیار عموم قرار داده است. به همین دلیل با دسترسی آزاد عموم، یک عامل تهدید تنظیمات برنامه را طبق استفاده خود شخصیسازی کرده و از طریق CDN دیسکورد آن را برای حمله به قربانیان آماده کرده است. پیلود اولیه به شکل یک فایل Shortcut که در ظاهر شبیه یک اسکرینشات از واتساپ بوده که به سیستم قربانی منتقل میشده و بهعنوان یک دانلودر عمل میکرده است.
دانلودر، یک فایل zip را از CDN دیسکورد دانلود و استخراج میکرده و مرحله بعدی پیلود را اجرا میکرده.
برنامه اجرا شده یک پروسه چندمرحلهای در سیستم اجرا میکند تا پیلود نهایی بدافزار را ایجاد کند.
قبل از اینکه مرحله نهایی اجرا شود، سیستم را برای وجود دیباگرها، سیستمهای مانیتورینگ و تحلیلگر بررسی میکند تا مبادا بدافزار اصلی شناسایی شود.
در ادامه با استفاده از تکنیکهای Anti-Debugging عملیات خود را به شکل مخفیانه ادامه میدهد و خود را بهعنوان یک Scheduled Task برای ایجاد دسترسی دائمی در سیستم ثبت میکند.
سپس با استفاده از قابلیت جستجو DLL، و کشف Function های موجود در ویندوز، فایل DLL حاوی کد مخرب را به پروسه اجرایی قابلاطمینان (مثل فایلهای سیستمی) تزریق میکند. تمامی کدها و دستورات بکار رفته در بدافزار تا حد بالایی مبهم شدهاند تا توسط نرمافزارهای امنیتی شناسایی نشوند.
بعد از تزریق کد مخرب به شکل منظم سیستم قربانی تحتنظر و مانیتورینگ قرار میگیرد.
و در نهایت برای ارسال اطلاعات سیستم قربانی و دریافت دستورات برای ارتباط با سرور C2 از ترافیک شبکه مبهمسازی شده استفاده میشود که به شکل مرتب در بازه زمانی خاص این ارسال و دریافت رخ میدهد.
راه هایی برای کاهش این خطر پذیری
- عدم دانلود و استفاده از فایلهای مشکوک
- بررسی مرتب سیستم برای رفتار مشکوک و ترافیک اینترنت
- استفاده از نرمافزارهای امنیتی برای شناسایی رفتار مشکوک مانند دانلود فایل زیپ توسط یک پروسه سیستمی
روش های تشخیص این حمله
در صورت استفاده از سیستم شناسایی و پاسخ در نقاط پایانی هوپان (EDR) که یکی از اساسی ترین ماژول های راهکار گسترده شناسایی و پاسخ نخجیرپان (XDR) میباشد، تحلیل فعالیت های مرتبط و هشدارهای زیر مشاهده می گردد:
- مشاهده و جلوگیری از دانلود قسمت اولیه پیلود به دلیل مشکوک بودن مشاهده این فعالیت از سمت یک پروسه
- جلوگیری از اجرای دستورات مبهمسازی شده
- جلوگیری از تزریق کد مخرب به سیستم
این تهدید از تکنیک های زیر که در جدول مایتر اتک موجود می باشد استفاده نموده است.
Execution | Persistence | Defense Evasion | Discovery | Command and control |
AppleScript | .bash_profile and .bashrc | Access Token Manipulation | Account Discovery | Web protocols |
CMSTP | Accessibility Features | Binary Padding | Application Window Discovery | |
Command and scripting interpreter | Account Manipulation | BITS Jobs | Browser Bookmark Discovery | |
Command-Line Interface | AppCert DLLs | Bypass User Account Control | Debugger evasion | |
Compiled HTML File | AppInit DLLs | Clear Command History | Domain Trust Discovery | |
Component Object Model and Distributed COM | Application Shimming | CMSTP | File and Directory Discovery | |
Control Panel Items | Authentication Package | Code Signing | Network Service Scanning | |
Dynamic Data Exchange | BITS Jobs | Compile After Delivery | Network Share Discovery | |
Execution through API | Bootkit | Compiled HTML File | Network Sniffing | |
Execution through Module Load | Browser Extensions | Component Firmware | Password Policy Discovery | |
Exploitation for Client Execution | Change Default File Association | Component Object Model Hijacking | Peripheral Device Discovery | |
Graphical User Interface | Component Firmware | Connection Proxy | Permission Groups Discovery | |
InstallUtil | Component Object Model Hijacking | Control Panel Items | Process Discovery | |
Launchctl | Create Account | DCShadow | Query Registry | |
Local Job Scheduling | DLL Search Order Hijacking | Debugger evasion | Remote System Discovery | |
LSASS Driver | Dylib Hijacking | Deobfuscate/Decode Files or Information | Security Software Discovery | |
Malicious File | Emond | Disabling Security Tools | Software Discovery | |
Malicious link | External Remote Services | DLL Search Order Hijacking | System Information Discovery | |
Mshta | File System Permissions Weakness | DLL Side-Loading | System Network Configuration Discovery | |
PowerShell | Hidden Files and Directories | Execution Guardrails | System Network Connections Discovery | |
Regsvcs/Regasm | Hooking | Exploitation for Defense Evasion | System Owner/User Discovery | |
Regsvr32 | Hypervisor | Extra Window Memory Injection | System Service Discovery | |
Rundll32 | Image File Execution Options Injection | File and Directory Permissions Modification | System Time Discovery | |
Scheduled Task | Kernel Modules and Extensions | File Deletion | Virtualization/Sandbox Evasion | |
Scripting | Launch Agent | File System Logical Offsets | ||
Service Execution | Launch Daemon | Gatekeeper Bypass | ||
Signed Binary Proxy Execution | Launchctl | Group Policy Modification | ||
Signed Script Proxy Execution | LC_LOAD_DYLIB Addition | Hidden Files and Directories | ||
Source | Local Job Scheduling | Hidden Users | ||
Space after Filename | Login Item | Hidden Window | ||
Third-party Software | Logon Scripts | HISTCONTROL | ||
Trap | LSASS Driver | Image File Execution Options Injection | ||
Trusted Developer Utilities | Modify Existing Service | impair defenses | ||
User Execution | Netsh Helper DLL | Indicator Blocking | ||
Windows Management Instrumentation | New Service | Indicator Removal from Tools | ||
Windows Remote Management | Office Application Startup | Indicator Removal on Host | ||
XSL Script Processing | Path Interception | Indirect Command Execution | ||
Plist Modification | Install Root Certificate | |||
Port Knocking | InstallUtil | |||
Port Monitors | Launchctl | |||
PowerShell Profile | LC_MAIN Hijacking | |||
Rc.common | Masquerading | |||
Re-opened Applications | Modify Registry | |||
Redundant Access | Mshta | |||
Registry Run Keys / Startup Folder | Network Share Connection Removal | |||
Scheduled Task | NTFS File Attributes | |||
Screensaver | Obfuscated Files or Information | |||
Security Support Provider | Parent PID Spoofing | |||
Server Software Component | Plist Modification | |||
Service Registry Permissions Weakness | Port Knocking | |||
Setuid and Setgid | Process Doppelgänging | |||
Shortcut Modification | Process Hollowing | |||
SIP and Trust Provider Hijacking | Process Injection | |||
Startup Items | Redundant Access | |||
System Firmware | Regsvcs/Regasm | |||
Systemd Service | Regsvr32 | |||
Time Providers | Rootkit | |||
Trap | Rundll32 | |||
Valid Accounts | Scripting | |||
Web Shell | Signed Binary Proxy Execution | |||
Windows Management Instrumentation Event Subscription | Signed Script Proxy Execution | |||
Winlogon Helper DLL | SIP and Trust Provider Hijacking | |||
Software Packing | ||||
Space after Filename | ||||
Template Injection | ||||
Timestomp | ||||
Trusted Developer Utilities | ||||
Valid Accounts | ||||
Virtualization/Sandbox Evasion | ||||
Web Service | ||||
XSL Script Processing | ||||