در اکثر دستورالعملهای پاسخ به حادثه (Incident Response) برای موارد سرقت هویت، اولین گام ابطال توکنها (Token Revocation)، بازنشانی رمز عبور و پایان دادن به نشستهای فعال (Sessions) است. در حالی که این رویکرد در برابر حملات Phishing از نوع Adversary-in-the-Middle موثر است، اما تحلیل بدافزار GraphWorm نشان میدهد که در برخی سناریوهای پیشرفته، این اقدام عملاً بیاثر است.
تحلیل مکانیزم C2 در GraphWorm
بدافزار GraphWorm که توسط گروه APT چینی موسوم به Webworm استفاده میشود، از یک استراتژی هوشمندانه برای ارتباط با سرور فرماندهی و کنترل (C2) بهره میبرد. این بدافزار هیچ دامنه خاص یا VPS اجارهای ندارد؛ در عوض، از Microsoft Graph API برای احراز هویت به عنوان یک اپلیکیشن OAuth استفاده کرده و یک حساب OneDrive را به عنوان Dead Drop برای دریافت دستورات و ارسال نتایج به کار میگیرد.
- پنهانسازی در ترافیک عادی: ارتباطات از طریق
graph.microsoft.comو روی پروتکل TLS انجام میشود، بنابراین برای Firewallها و سیستمهای تشخیص نفوذ، این ترافیک کاملاً مشابه فعالیتهای عادی Microsoft 365 به نظر میرسد. - شناسایی سختافزاری: بدافزار برای شناسایی قربانی از Hostname استفاده نمیکند، بلکه هش ترکیبی از MAC Address، سریال CPU و Disk را از طریق WMI استخراج میکند. بنابراین تغییر IP یا نام سیستم، تأثیری در شناسایی قربانی توسط مهاجم ندارد.
نقطه ضعف در Runbookهای سنتی: قابلیت Upgrade
بحرانیترین بخش این بدافزار، تابعی به نام upgrade است. این تابع به مهاجم اجازه میدهد تا در یک دستور ساده، تمامی رشتههای مربوط به اعتبارنامهها (Client ID, Client Secret, Tenant ID و Refresh Token) را در حافظه بدافزار جایگزین کرده و اتصال را به یک حساب OneDrive جدید منتقل کند.
نتیجه عملیاتی: اگر تیم SOC متوجه نفوذ شود و توکنهای فعلی را ابطال کند، بدافزار در اولین تلاش برای ارتباط با خطا مواجه میشود. اما اگر مهاجم در حال رصد باشد، بلافاصله یک دستور upgrade ارسال میکند و هویت جدید را جایگزین میکند. در این حالت، هیچ فایل جدیدی روی سیستم نصب نمیشود و هیچ مکانیزم Persistence جدیدی ایجاد نمیگردد؛ تنها «هویت» پشت بدافزار تغییر کرده است.
توصیههای استراتژیک برای مدیران امنیت و تیمهای IR
برای مقابله با این نوع تهدیدات، تغییر در رویکرد پاسخ به حادثه ضروری است:
- ابطال توکن را به عنوان «تأخیر» ببینید، نه «اخراج»: وقتی C2 بر پایه یک Application Identity است، ابطال توکن تنها یک وقفه کوتاه ایجاد میکند. هدف اصلی باید حذف ثبتنام اپلیکیشن (Registration) باشد.
- همزمانی در عملیات: هرگز ابتدا توکن را ابطال نکنید و سپس به دنبال ایزوله کردن سیستم بگردید. باید ایزولاسیون Host یا مسدود کردن دسترسی اپلیکیشن در Tenant خود را دقیقاً در همان لحظه ابطال اعتبارنامهها انجام دهید تا مهاجم فرصت ارسال دستور Upgrade را نداشته باشد.
- شکار در لایه هویت (Identity Plane): از آنجایی که لایه شبکه در این حملات کور است، باید روی Telemetryهای ابری تمرکز کنید. جستجو برای Application IDهای ناشناس در Sign-in logs یا شناسایی User-Agentهای غیرمرورگر که به OneDrive متصل میشوند، تنها راه شناسایی این بدافزارهاست.