گروه APT 28 در September 2023 با استفاده از Lure Document توانستند بدافزار Graphite را در سیستم قربانی مستقر کنند که منجر به گرفتن دسترسی از سیستم قربانی شد. APT 28 یک عامل تهدید قدیمی است که وابسته به دولت روسیه میباشد و هدف آن جمعآوری اطلاعات و داده از سازمانهای مختلف است. Lure Document یک فایل PowerPoint است که مهاجم از آن برای اجرای کد استفاده میکند. این فایل طوری طراحی شده است که وقتی قربانی حالت ارائه را شروع میکند و ماوس را حرکت میدهد کد مخرب اجرا میشود. این کد مخرب یک اسکریپت PowerShell را اجرا میکند که یک Dropper را از OneDrive دانلود و اجرا میکند. سپس این Dropper یک فایل PE (Portable Executable) استخراج و تزریق میکند، این فایل PE همان بدافزار Graphite است. این بدافزار برای ارتباط با C2 سرور مهاجم از OneDrive و Microsoft Graph API استفاده میکند.
بر اساس Metadata Lure Document مهاجمان از الگویی استفاده کردند که به طور بالقوه به سازمان همکاری اقتصادی و توسعه (OECD) مرتبط است. این سازمان بهمنظور ایجاد استانداردهای بینالمللی مبتنی بر شواهد و یافتن راهحل برای طیف وسیعی از چالشهای اجتماعی، اقتصادی و زیستمحیطی با دولتها، سیاستگذاران و شهروندان همکاری میکند.
نحوه اجرای این تکنیک به این صورت است که مهاجم بهجای استفاده از Run Program / Macro از Hyperlinks استفاده میکند و زمانی که کاربر در حال ارائه فایل PowerPoint است و ماوس را حرکت میدهد اسکریپت PowerShell از طریق ابزار SyncAppvPublishingServer اجرا میشود، سپس فایلی را با پسوند JPEG (DSC0002) دانلود میکند و با استفاده از کلیدهای رمزنگاری RSA و AES آن را Decrypt میکند. این پسوند برای فریب قربانی استفاده شده اما در اصل این یک فایل DLL است که بعد از رمزگشایی در مسیر C:\ProgramData\lmapi2.dll قرار میگیرد. فایل Imapi2.dll یک فایل PE 64 بیتی است که در آن یک Mutex جدید به نام 56rd68kow ایجاد میکند. اگر Mutex از قبل وجود نداشته باشد، بدافزار یک درخواست دیگر به OneDrive فرستاده و مجدد فایل JPEG را دانلود و Decrypt میکند. سپس بدافزار بهصورت پویا API NtAllocateVirtualMemory را فراخوانی میکند و محتوای رمزگشایی شده را در Memory مینویسد و اجرا میکند. مهاجم برای مخفیشدن از دید سیستم امنیتی از یک حلقه XOR و با استفاده از یک کلید XOR متفاوت برای هر رشته، رشتهها را مبهم میکند. بدافزار برای ارتباط با C2 سرور با سوء استفاده از سرویس Microsoft Graph که یک API Web RESTful است که دسترسی به سرویس Microsoft Cloud را فراهم میکند تا بتواند به دامنه graph[.]Microsoft[.]com متصل بشود.
در مرحله بعدی این نرمافزار بهعنوان یک Downloader عمل میکند و یک FrameWork مانند Cobalt Strike را دانلود و اجرا میکند.
راه هایی برای کاهش این خطر پذیری
- عدم دانلود فایلهای Office از منابع نامعتبر
- نظارت بد ترافیک خروجی شبکه
- نظارت بر PowerShell
روش های تشخیص این حمله
در صورت استفاده از سیستم شناسایی و پاسخ در نقاط پایانی هوپان (EDR) که یکی از اساسی ترین ماژول های راهکار گسترده شناسایی و پاسخ نخجیرپان (XDR) میباشد، تحلیل فعالیت های مرتبط و هشدارهای زیر مشاهده می گردد:
- مشاهده DLL های مخرب اجرا شده
- مشاهده پروسسهای غیرمعمول اجرا شده
- مشاهده ترافیک غیرعادی شبکه
این تهدید از تکنیک های زیر که در جدول مایتر اتک موجود می باشد استفاده نموده است.
Initial Access | Execution | Persistence | Privilege Escalation | Defense Evasion | Credential Access | Discovery | Collection | Command And Control | Exfiltration |
Drive-by Compromise | AppleScript | .bash_profile and .bashrc | Access Token Manipulation | Access Token Manipulation | Account Manipulation | Account Discovery | Audio Capture | Commonly Used Port | Automated Exfiltration |
Exploit Public-Facing Application | CMSTP | Accessibility Features | Accessibility Features | Binary Padding | Bash History | Application Window Discovery | Automated Collection | Communication Through Removable Media | Data Compressed |
External Remote Services | Command-Line Interface | Account Manipulation | AppCert DLLs | BITS Jobs | Brute Force | Browser Bookmark Discovery | Clipboard Data | Connection Proxy | Data Encrypted |
Hardware Additions | Compiled HTML File | AppCert DLLs | AppInit DLLs | Bypass User Account Control | Os Credential Dumping | Domain Trust Discovery | Data from Information Repositories | Custom Command and Control Protocol | Data Transfer Size Limits |
Replication Through Removable Media | Component Object Model and Distributed COM | AppInit DLLs | Application Shimming | Clear Command History | Credentials from Web Browsers | File and Directory Discovery | Data from Local System | Custom Cryptographic Protocol | Exfiltration Over Alternative Protocol |
Spearphishing Attachment | Control Panel Items | Application Shimming | Bypass User Account Control | CMSTP | Credentials in Files | Network Service Scanning | Data from Network Shared Drive | Data Encoding | Exfiltration Over Command and Control Channel |
Spearphishing Link | Dynamic Data Exchange | Authentication Package | Boot or Logon Autostart Execution | Code Signing | Credentials in Registry | Network Share Discovery | Data from Removable Media | Data Obfuscation | Exfiltration Over Other Network Medium |
Spearphishing via Service | Execution through API | BITS Jobs | Dylib Hijacking | Compile After Delivery | Exploitation for Credential Access | Network Sniffing | Data Staged | Domain Fronting | Exfiltration Over Physical Medium |
Supply Chain Compromise | Execution through Module Load | Bootkit | Elevated Execution with Prompt | Compiled HTML File | Forced Authentication | Password Policy Discovery | Email Collection | Domain Generation Algorithms | Scheduled Transfer |
Trusted Relationship | Exploitation for Client Execution | Boot or Logon Autostart Execution | Emond | Component Firmware | Hooking | Peripheral Device Discovery | Input Capture | Encrypted Channel | |
Valid Accounts | Graphical User Interface | Change Default File Association | Exploitation for Privilege Escalation | Component Object Model Hijacking | Input Capture | Permission Groups Discovery | Man in the Browser | Multi-hop Proxy | |
InstallUtil | Component Firmware | Extra Window Memory Injection | Connection Proxy | Input Prompt | Process Discovery | Screen Capture | Multi-Stage Channels | ||
Launchctl | Component Object Model Hijacking | File System Permissions Weakness | Control Panel Items | Kerberoasting | Query Registry | Video Capture | Multiband Communication | ||
Local Job Scheduling | Create Account | Hooking | DCShadow | Keychain | Remote System Discovery | Multilayer Encryption | |||
LSASS Driver | DLL Search Order Hijacking | Image File Execution Options Injection | Deobfuscate/Decode Files or Information | LLMNR/NBT-NS Poisoning and Relay | Security Software Discovery | Port Knocking | |||
Mshta | Dll Side-Loading | Launch Daemon | Disabling Security Tools | Network Sniffing | Software Discovery | Remote Access Tools | |||
PowerShell | Emond | New Service | DLL Search Order Hijacking | Password Filter DLL | System Information Discovery | Remote File Copy | |||
Regsvcs/Regasm | External Remote Services | Parent PID Spoofing | DLL Side-Loading | Private Keys | System Network Configuration Discovery | Standard Application Layer Protocol | |||
Regsvr32 | File System Permissions Weakness | Path Interception | Execution Guardrails | Securityd Memory | System Network Connections Discovery | Standard Cryptographic Protocol | |||
Rundll32 | Hidden Files and Directories | Plist Modification | Exploitation for Defense Evasion | Steal Web Session Cookie | System Owner/User Discovery | Standard Non-Application Layer Protocol | |||
Scheduled Task | Hooking | Port Monitors | Extra Window Memory Injection | Two-Factor Authentication Interception | System Service Discovery | Uncommonly Used Port | |||
Scripting | Hypervisor | PowerShell Profile | File and Directory Permissions Modification | System Time Discovery | Web Service | ||||
Service Execution | Image File Execution Options Injection | Process Injection | File Deletion | Virtualization/Sandbox Evasion | |||||
Signed Binary Proxy Execution | Kernel Modules and Extensions | Scheduled Task | File System Logical Offsets | ||||||
Signed Script Proxy Execution | Launch Agent | Service Registry Permissions Weakness | Gatekeeper Bypass | ||||||
Source | Launch Daemon | Setuid and Setgid | Group Policy Modification | ||||||
Space after Filename | Launchctl | SID-History Injection | Hidden Files and Directories | ||||||
Third-party Software | LC_LOAD_DYLIB Addition | Startup Items | Hidden Users | ||||||
Trap | Local Job Scheduling | Sudo | Hidden Window | ||||||
Trusted Developer Utilities | Login Item | Sudo Caching | HISTCONTROL | ||||||
User Execution | Logon Scripts | Valid Accounts | Image File Execution Options Injection | ||||||
Windows Management Instrumentation | LSASS Driver | Web Shell | Indicator Blocking | ||||||
Windows Remote Management | Modify Existing Service | Indicator Removal from Tools | |||||||
XSL Script Processing | Netsh Helper DLL | Indicator Removal on Host | |||||||
New Service | Indirect Command Execution | ||||||||
Office Application Startup | Install Root Certificate | ||||||||
Path Interception | InstallUtil | ||||||||
Plist Modification | Launchctl | ||||||||
Port Knocking | LC_MAIN Hijacking | ||||||||
Port Monitors | Masquerading | ||||||||
PowerShell Profile | Modify Registry | ||||||||
Rc.common | Mshta | ||||||||
Re-opened Applications | Network Share Connection Removal | ||||||||
Redundant Access | NTFS File Attributes | ||||||||
Registry Run Keys / Startup Folder | Obfuscated Files or Information | ||||||||
Scheduled Task | Parent PID Spoofing | ||||||||
Screensaver | Plist Modification | ||||||||
Security Support Provider | Port Knocking | ||||||||
Server Software Component | Process Doppelgänging | ||||||||
Service Registry Permissions Weakness | Process Hollowing | ||||||||
Setuid and Setgid | Process Injection | ||||||||
Shortcut Modification | Reflective Code Loading | ||||||||
SIP and Trust Provider Hijacking | Regsvcs/Regasm | ||||||||
Startup Items | Regsvr32 | ||||||||
System Firmware | Rootkit | ||||||||
Systemd Service | Rundll32 | ||||||||
Time Providers | Scripting | ||||||||
Trap | Signed Binary Proxy Execution | ||||||||
Valid Accounts | Signed Script Proxy Execution | ||||||||
Web Shell | SIP and Trust Provider Hijacking | ||||||||
Windows Management Instrumentation Event Subscription | Software Packing | ||||||||
Winlogon Helper DLL | Space after Filename | ||||||||
Template Injection | |||||||||
Timestomp | |||||||||
Trusted Developer Utilities | |||||||||
Valid Accounts | |||||||||
Virtualization/Sandbox Evasion | |||||||||
Web Service | |||||||||
XSL Script Processing | |||||||||