فریمورک Sliver C2 که یک ابزار متنباز به زبان Go است و از سال ۲۰۲۰ در دسترس متخصصان امنیت تهاجمی قرار دارد، به دلیل ویژگیهای قدرتمندش برای کنترل سیستمهای هدف، مورد استقبال زیادی قرار گرفته است. اما با پیشرفت ابزارهای دفاعی و EDRها (راهکارهای تشخیص و پاسخ به تهدیدات در نقاط انتهایی)، استفاده از نسخه خام و بدون تغییر Sliver بهراحتی قابل شناسایی شده است.
🔧 تغییرات در کد منبع برای عبور از EDR
محققان امنیتی توانستهاند با تغییرات جزئی اما هدفمند در سورسکد Sliver، توانایی فرار از سیستمهای مدرن EDR را بهطور چشمگیری افزایش دهند.
یکی از چالشهای اصلی Sliver، اندازه بزرگ باینریها (تا ۳۰ مگابایت) و امضاهای ایستا در فایلهای protocol buffer آن است که بهراحتی با قوانین YARA قابل شناسایی هستند. برای مثال، رشتههایی مانند ScreenshotReq
در فایل sliver.proto
با عباراتی مانند ScShotReq
جایگزین شدند و تغییرات به فایلهای خودکار تولیدشده نیز اعمال گردید.
💥 فرار از امضاهای رفتاری
یکی از راههای محبوب EDRها برای شناسایی، امضاهای رفتاری است. Sliver بهطور پیشفرض از bypass معروف Donut برای عبور از AMSI استفاده میکند، که این خود توسط بسیاری از EDRها شناسایی میشود. محققان با غیرفعالسازی این bypass و استفاده از لودرهای shellcode اختصاصی که پِیلود را بهصورت داینامیک در حافظه نگاشت میکردند، توانستند در زمان اجرا نیز شناسایی نشوند.
⚙️ دور زدن تشخیصهای پیشرفتهتر
حتی پس از حذف امضاهای ایستا، برخی از رفتارهای زمان اجرا، مانند استفاده از نوع LazyDLL
در زبان Go برای فراخوانی API ویندوزی LoadLibraryExW
، هشدارهایی را در EDRهایی مانند Elastic Agent ایجاد میکرد.
برای حل این مشکل، محققان ابتدا تکنیکهایی مثل module stomping و API hooking را بررسی کردند، اما در نهایت با روش سادهتری پیش رفتند: نوشتن کتابخانههای DLL بر روی دیسک با exportهای تغییریافته.
همچنین، توابع export نشده حذف و توابع کلیدی مانند GetJitter
تغییر نام داده شدند تا در حافظه قابل شناسایی نباشند.
📈 اتوماتسازی تغییرات
تمامی این تغییرات با استفاده از اسکریپتهایی انجام شد که رشتههای حساس را بهصورت خودکار در کل کد جایگزین کرده و در هنگام کامپایل ثبات و هماهنگی را حفظ میکردند.
✅ نتیجه تست
پس از اعمال این اصلاحات، پیلودهای تولیدشده تحت تست با چندین EDR قرار گرفتند:
-
در اسکن ایستا: هیچ شناساییای صورت نگرفت.
-
در تحلیل دینامیک با ابزارهایی مانند LitterBox: هیچ هشداری در زمان اجرا گزارش نشد.
-
در سیستمهایی با EDR مانند Elastic Agent: پیلود بدون هیچگونه رفتار مشکوک، اتصال برقرار کرد.
🔍 نتیجهگیری امنیتی
این تحقیق نشان میدهد که چگونه ابزارهای متنباز مانند Sliver با تغییرات جزئی و هدفمند میتوانند در عملیات Red Team بسیار مؤثر عمل کنند. در حالی که این ابزار برای تست نفوذ قانونی و آموزشی مفید است، این نتایج زنگ خطری برای تیمهای Blue Team نیز هست.
افزایش هوشمندی و وابسته نبودن صرف به امضاهای ایستا و رفتارهای پیشبینیشده، کلید مقابله با این نسل جدید از ابزارهای مهاجمان خواهد بود.
یک نظر