Fileless attack

حملات بدون فایل(Fileless Attacks)

Fileless Attack چیست؟

حمله بدون فایل (Fileless Attack) یکی از انواع حملات سایبری است که از بدافزارهای بدون فایل(fileless malware) استفاده می‌کند تا بدون نیاز به نصب فایل‌های مخرب روی هارد دیسک، مستقیماً در حافظه سیستم، حمله‌ی مورد نظر اجرا شود. بدافزار بدون فایل نوعی کد مخرب است که از برنامه‌ها و نرم‌افزارهای قانونی و معمولی(مثل برنامه‌هایی مانند مایکروسافت ورد، مرورگر کروم یا نرم‌افزارهای موجود در سرورها) برای نفوذ به سیستم استفاده می‌کند. به همین دلیل، هنگامی که سیستم آلوده می‌شود، هیچ فایلی روی هارد دیسک دانلود نمی‌شود و این ویژگی باعث می‌شود که به آن “بدون فایل یا fileless” گفته شود. برخلاف حملات سنتی که معمولاً با بارگذاری بدافزارهای مخرب به سیستم و نصب فایل‌ها در هارد دیسک انجام می‌شوند، هیچ فایلی روی دستگاه قربانی دانلود نمی‌شود. این ویژگی باعث می‌شود که شناسایی این حملات دشوارتر از حملات معمولی باشد. مهاجمین در این نوع حملات از ابزارهای داخلی سیستم‌عامل مثل PowerShell یا ابزارهایی که دسترسی بالا و امتیازاتی برای اجرای دستورات در شبکه دارند، برای اجرای فعالیت‌های مخرب خود استفاده می‌کنند. این ابزارها به مهاجم اجازه می‌دهند تا کدهای مخرب را در سطح سیستم یا شبکه اجرا کرده و داده‌ها را از سیستم خارج کنند یا دستورات مخرب دیگری را اجرا کنند. یکی از چالش‌های اصلی در مقابله با حملات بدون فایل این است که ابزارهای آنتی‌ویروس سنتی قادر به شناسایی چنین حملاتی نیستند، زیرا این نوع حملات نیازی به فایل‌های مخرب ندارند و معمولاً هیچ رد مشخصی بر روی هارد دیسک باقی نمی‌گذارند. این مشکل باعث شده است که حملات بدون فایل به ‌طور فزاینده‌ای رایج شوند، زیرا مهاجمان از این ضعف‌ها برای نفوذ به سیستم‌ها استفاده می‌کنند. با این حال، شناسایی بدافزار بدون فایل غیرممکن نیست. این نوع بدافزار می‌تواند کارهایی مشابه ویروس‌های معمولی انجام دهد، مانند استخراج داده‌ها و دیگر فعالیت‌های مخرب. این اقدامات معمولاً می‌توانند باعث فعال شدن اسکن امنیتی شوند. پس از شناسایی فعالیت‌های مشکوک، تیم‌های امنیتی می‌توانند با استفاده از ابزارهای پیشرفته و اسکن‌های خاص مانند بررسی PowerShell یا دیگر ابزارهای مشابه، برای مقابله با این تهدید اقدام کنند. در نهایت، شناسایی و جلوگیری از چنین حملاتی نیازمند ابزارهای امنیتی پیشرفته‌تری است که قادر به شناسایی و نظارت بر فعالیت‌های مشکوک در سطح سیستم‌عامل و شبکه باشند.

چگونگی عملکرد حملات بدون فایل(fileless attack):

در اینجا مراحل متداولی که حملات fileless به طور معمول طی می‌کنند آورده شده است:
مرحله ۱: دسترسی به دستگاه هدف
برای انجام یک حمله، مهاجمان باید ابتدا به دستگاه هدف دسترسی پیدا کنند. در اینجا برخی از روش‌های رایجی که مهاجمان برای رسیدن به این هدف استفاده می‌کنند آورده شده است:

  • استفاده از یک روش مهندسی اجتماعی مانند ایمیل‌های فیشینگ.
  • استفاده از اعتبارنامه‌های به خطر افتاده، ابزارهای شکستن رمز عبور یا روش‌های دیگر برای به ‌دست آوردن آن‌ها.

پس از اینکه مهاجم اعتبارنامه‌ها را به ‌دست آورد، این امکان فراهم می‌شود که به سیستم هدف و یا حتی به محیط‌های دیگر نیز دسترسی پیدا کند.

مرحله ۲: اجرا
پس از اینکه بدافزار بدون فایل(Fileless malware) به سیستم دسترسی پیدا کرد، هدف آن اجرای کد با دستکاری نرم‌افزار، کتابخانه‌ها یا دیگر منابع موجود در سیستم محلی است.

مرحله ۳: پایداری
پس از اینکه بدافزار کنترل سیستم محلی را به دست گرفت، معمولاً یک درب پشتی (backdoor) برای ایجاد دسترسی مجدد به دستگاه هدف ایجاد می‌کند. هدف از این کار جلوگیری از ازدست دادن دسترسی به دستگاه است تا مهاجم بتواند اطلاعات را در طولانی ‌مدت جمع‌آوری کند.

مرحله ۴: اهداف
پس از پیدا کردن اطلاعات هدف‌گذاری شده، مهاجم می‌تواند اهداف خود را به ‌دست آورد. این اهداف معمولاً شامل استخراج داده‌های حساس به یک محیط دیگر می‌باشند.

انواع حملات بدافزار بدون فایل(fileless malware):

حملات بدافزار fileless انواع مختلفی دارند، اما به طور کلی در دو دسته اصلی قرار می‌گیرند: تزریق کد به حافظه(Memory Code Injection) و دستکاری رجیستری ویندوز(Windows Registry Manipulation).

  • Memory Code Injection

در حملات تزریق کد به حافظه، کد بدافزاری که مسئول اجرای بدافزار بدون فایل است، در داخل حافظه برنامه‌های بی‌ضرر مخفی می‌شود. معمولاً برنامه‌هایی که برای این نوع حمله استفاده می‌شوند، برنامه‌های حیاتی و ضروری برای فرایندهای مهم هستند. در این فرایندهای مجاز، بدافزار کد خود را اجرا می‌کند.
در بسیاری از موارد، این حملات از آسیب‌پذیری‌های موجود در برنامه‌هایی مانند مرورگرها استفاده می‌کنند. همچنین رایج است که هکرها از یک کمپین فیشینگ برای نفوذ به سیستم قربانی استفاده کنند.

  • Windows Registry Manipulation

در حملات دستکاری رجیستری ویندوز، مهاجم از یک لینک یا فایل مخرب استفاده می‌کند تا از یک فرایند مورد اعتماد ویندوز بهره‌برداری ‌کند. به عنوان مثال، پس از اینکه کاربر روی لینک کلیک کرد، از فرایند ویندوز برای نوشتن و اجرای کد fileless در رجیستری استفاده می‌شود. مشابه با بدافزارهای تزریق کد به حافظه، با دستکاری رجیستری به جای کار از طریق یک برنامه مخرب، این نوع بدافزار بدون فایل می‌تواند از ابزارهای شناسایی سنتی مانند نرم‌افزارهای آنتی‌ویروس پنهان بماند.

۵ روش مختلف اجرای کد در حافظه توسط حملات بدون فایل(fileless attacks):

وقتی یک مهاجم از طریق فیشینگ یا با بهره‌برداری از آسیب‌پذیری‌ها به سیستم دسترسی پیدا می‌کند، می‌تواند از روش‌های مختلفی برای اجرای کد مخرب در حافظه سیستم استفاده کند. این روش‌ها به ‌طور کلی بدون نیاز به فایل‌های اجرایی هستند و ممکن است برخی از آن‌ها با تکنیک‌های Living off the Land(LOTL) همپوشانی داشته باشند. در اینجا پنج روش رایج برای اجرای کد در حافظه در حملات بدون فایل آورده شده است:

  • PowerShell: PowerShell یک ابزار قانونی و کاربردی در سیستم‌های ویندوز است که برای خودکارسازی وظایف استفاده می‌شود. مهاجمان می‌توانند از آن برای اجرای کد مخرب مستقیماً در حافظه بهره ببرند. این روش با حملات LOTL همپوشانی دارد زیرا از ابزاری استفاده می‌شود که در خود سیستم موجود است و نیازی به نصب ابزار جدید ندارد.
  • Process Hollowing: در این روش، مهاجم یک فرآیند جدید ایجاد می‌کند و آن را در حالت معلق قرار می‌دهد. سپس محتوای حافظه این فرآیند را با کد مخرب جایگزین می‌کند و فرآیند را از سر می‌گیرد. کد مخرب در حافظه اجرا می‌شود و هیچ رد پایی در هارد دیسک باقی نمی‌گذارد.
  • Reflective DLL Injection: در این روش، مهاجم یک فایل DLL مخرب را مستقیماً به حافظه یک فرآیند قانونی (که به ‌طور معمول در حال اجرا است) بارگذاری می‌کند، بدون اینکه آن را روی هارد دیسک بنویسد. DLL مخرب در حافظه اجرا می‌شود و به‌ طور معمول از شناسایی توسط نرم‌افزارهای امنیتی سنتی فرار می‌کند.
  • JavaScript و VBScript: مهاجمان می‌توانند از زبان‌های اسکریپتی مثل JavaScript یا VBScript برای اجرای کد مخرب مستقیماً در حافظه استفاده کنند. این روش معمولاً در مرورگرهای وب یا دیگر برنامه‌هایی که از این زبان‌ها پشتیبانی می‌کنند، به کار می‌رود و هیچ فایلی بر روی سیستم قربانی ذخیره نمی‌شود.
  • Microsoft Office macros: یکی دیگر از روش‌های حملات بدون فایل استفاده از ماکروهای مخرب در اسناد Microsoft Office است. هنگامی که کاربر این اسناد را باز می‌کند، کد مخرب به ‌طور مستقیم در حافظه اجرا می‌شود. این روش از ویژگی‌های قانونی ماکروها استفاده می‌کند و می‌تواند به ‌طور همزمان یک حمله LOTL هم باشد.

این روش‌ها معمولاً به‌ طور خاص از آسیب‌پذیری‌های موجود در سیستم‌عامل یا برنامه‌های کاربردی مانند Microsoft Office یا مرورگرهای وب سوءاستفاده می‌کنند تا کد مخرب خود را اجرا کنند. حملات بدون فایل معمولاً از ابزارهای قانونی سیستم برای اجرای فعالیت‌های مخرب استفاده می‌کنند، به‌ طوری که این فعالیت‌ها کمتر توسط ابزارهای امنیتی سنتی شناسایی می‌شوند.

چگونه حملات بدافزار بدون فایل(fileless malware) را شناسایی کنیم؟

وقتی می‌خواهید بفهمید چگونه حملات بدافزار بدون فایل را پیشگیری کنید، اولین نکته‌ای که باید به خاطر داشته باشید این است که نرم‌افزارهای آنتی‌ویروس معمولی ممکن است کارساز نباشند. همچنین روش‌هایی مانند استفاده از سندباکس (sandbox) یا whitelisting نیز موثر نخواهند بود، چرا که این نوع حملات فاقد امضای فایل مشخصی هستند که این برنامه‌ها بتوانند آن‌ها را شناسایی و از آن‌ها جلوگیری کنند.
در اینجا چند روش برای شناسایی حملات بدافزار بدون فایل آورده شده است:

  • استفاده از شاخص‌های حمله(IoAs) به جای شاخص‌های نفوذ(IOCs):

جستجو برای شاخص‌های حمله (IOAs) یک روش مؤثر برای شناسایی بدافزار بدون فایل است، زیرا در این روش تمرکز شما بر شناسایی فعالیت‌های مشکوک و مرتبط با بدافزار است، نه یافتن فایلی خاص که به سیستم شما نفوذ کرده باشد.
برخی از نمونه‌های فعالیت مشکوک شامل اجرای غیرعادی کد و حرکات جانبی (lateral movements) هستند. حرکات جانبی به معنای جابجایی کد از یک بخش به بخش دیگر بعد از نفوذ آن به شبکه است. با بررسی این عناصر از حمله، شما بر روی رفتار بدافزار تمرکز می‌کنید، نه روی امضای فایل‌هایی که ممکن است نشان‌دهنده وجود ویروسی سنتی باشند.

  • استفاده از جستجوی مدیریت شده تهدیدها:

جستجوی مدیریت‌شده تهدیدها (Managed Threat Hunting) وظیفه جستجو و شناسایی تهدیدات را از دوش شما برمی‌دارد. به جای اینکه خودتان به‌ صورت دستی سیستم را برای شناسایی بدافزار بدون فایل بررسی کنید، یک شرکت متخصص در این زمینه را استخدام می‌کنید تا این کار را به‌ طور حرفه‌ای انجام دهد. علاوه بر این، می‌توانید از خدمات جستجوی مدیریت‌شده تهدیدها بهره‌مند شوید تا به ‌طور مستمر سیستم شما را نظارت کنند. بدین‌ ترتیب، هرگاه فعالیت مشکوکی شناسایی شود، به‌ سرعت اقدام به رفع آن خواهند کرد.

چگونه از حملات بدافزار بدون فایل(fileless malware) جلوگیری کنیم؟

پیشگیری از حملات بدافزار بدون فایل نیازمند تمرکز بر روی نقاط ضعف و آسیب‌پذیری‌هایی است که این نوع حملات معمولاً از آن‌ها بهره‌برداری می‌کنند. به عنوان مثال، بدافزارهای بدون فایل به طور معمول از برنامه‌های معتبر و شناخته‌شده استفاده می‌کنند. در این راستا، شرکت‌های امنیت سایبری می‌توانند با شناسایی برنامه‌هایی که به طور غیرعادی در محیط شما فعال هستند، به وجود احتمال حمله پی ببرند. این شناسایی می‌تواند نشانه‌ای از سوءاستفاده از این برنامه‌ها در یک حمله بدافزار بدون فایل باشد. همچنین، با به کارگیری شاخص‌های حمله (IOAs)، نه تنها امکان شناسایی بدافزارهای بدون فایل وجود دارد، بلکه می‌توان از گسترش آن‌ها جلوگیری کرده و حتی حمله را متوقف کرد. همچنین یکی از ساده‌ترین و مؤثرترین راهکارها برای مقابله با این نوع حملات، به‌روزرسانی منظم نرم‌افزارها است. به ویژه برنامه‌های مایکروسافت باید به طور مداوم آپدیت شوند، زیرا مجموعه Microsoft 365 با قابلیت‌های امنیتی جدید خود، خطرات را شناسایی و احتمال وقوع آن‌ها را کاهش می‌دهد. علاوه بر این، مایکروسافت Windows Defender را بهبود بخشیده تا بتواند فعالیت‌های مشکوک در PowerShell را شناسایی کند. با این حال، برای مقابله‌ای واقعی و مؤثر با حملات بدون فایل، نیاز به یک رویکرد جامع و یکپارچه داریم که تمامی مراحل تهدید را پوشش دهد. با استفاده از دفاع چندلایه، می‌توان با شناسایی و تجزیه‌ و تحلیل هر مرحله از حمله، از آغاز تا پس از وقوع آن، پیشی گرفت و از اقدامات مهاجمین جلوگیری کرد. دو نکته کلیدی در این فرآیند اهمیت دارد:

  • توانایی مشاهده و نظارت دقیق: برای شناسایی حملات، باید قادر باشید تکنیک‌های استفاده ‌شده، فعالیت‌های مشکوک در PowerShell یا دیگر ابزارهای اسکریپتی را بررسی کنید. همچنین، داشتن دسترسی به داده‌های تهدید و نظارت بر رفتارهای کاربران می‌تواند به شما در شناسایی حملات کمک کند.
  • توانایی کنترل سیستم هدف: در مرحله بعد، باید بتوانید فرآیندهای غیرمجاز را متوقف کنید، مشکلات ایجادشده توسط حمله را اصلاح کنید و دستگاه‌های آلوده را ایزوله کنید تا از گسترش بیشتر تهدید جلوگیری شود.

مقابله مؤثر با حملات بدون فایل نیازمند رویکردی همه‌جانبه است که بتواند در مواقع ضروری به‌ سرعت اقدامات صحیح را انجام دهد و در برابر تهدیدات مقاوم باشد. حال ممکن است نگران باشید که چگونه می‌توانید خود را از این تهدید جدی در امان نگه دارید. در اینجا چند روش برای ایمن ماندن آورده شده است:

  • به‌روزرسانی نرم‌افزارها:

همان‌طور که پیش‌تر گفته شد، بدافزارهای بدون فایل از آسیب‌پذیری‌های موجود در برنامه‌های نرم‌افزاری قانونی بهره‌برداری می‌کنند. به‌روزرسانی نرم‌افزارها با آخرین پچ‌ها و به‌روزرسانی‌های امنیتی می‌تواند به جلوگیری از بهره‌برداری مهاجمین از آسیب‌پذیری‌های شناخته‌شده کمک کند.

در حالی که نرم‌افزارهای آنتی‌ویروس سنتی ممکن است در شناسایی و مقابله با تهدیدات پیچیده‌ای مانند بدافزارهای بدون فایل، ناکارآمد باشند، راه‌حل‌های تخصصی حفاظت از نقطه پایانی(endpoint protection) می‌توانند به ‌طور مؤثری از این نوع تهدیدات جلوگیری کنند. تکنیک‌هایی مانند تشخیص مبتنی بر رفتار و کنترل‌ دقیق برنامه‌ها، امکان شناسایی و مسدود کردن فعالیت‌های مخرب بدون وابستگی به فایل‌های اجرایی سنتی را فراهم می‌آورند. این روش‌ها قادرند تهدیداتی را که از طریق روش‌های نوآورانه و غیرمعمول حمله، نظیر حملات بدون فایل، وارد شبکه‌ها و سیستم‌ها می‌شوند، شناسایی کرده و از آن‌ها جلوگیری کنند.

  • استفاده از حداقل دسترسی ممتاز:

بدافزارهای بدون فایل اغلب برای اجرای حملات و گسترش خود به سطوح بالای دسترسی سیستم، مانند امتیازات مدیریتی، نیاز دارند. این نوع تهدیدات معمولاً از تکنیک‌های پیچیده‌ای استفاده می‌کنند که مستلزم توانایی کنترل و دسترسی به منابع حساس سیستم است. با اعمال اصل کمترین امتیاز، که دسترسی کاربران و برنامه‌ها را تنها به حداقل سطح لازم برای انجام وظایف خود محدود می‌کند، می‌توان به ‌طور قابل ‌ملاحظه‌ای تأثیر این حملات را کاهش داد. این رویکرد به کاهش سطح آسیب‌پذیری سیستم‌ها کمک می‌کند و در نتیجه، اگر یک حمله بدون فایل موفق به نفوذ شود، حتی در صورت به ‌دست آوردن دسترسی به برخی از منابع، توانایی‌اش برای انجام اقدامات مخرب به ‌شدت محدود خواهد شد.

  • پیاده‌سازی تقسیم‌بندی شبکه:

تقسیم‌بندی شبکه فرآیندی است که طی آن یک شبکه به بخش‌های کوچکتر و ایزوله تقسیم می‌شود، به ‌طوری‌که هر بخش دارای سیاست‌ها و کنترل‌های امنیتی خاص خود است. این روش به سازمان‌ها امکان می‌دهد تا دسترسی به منابع و سیستم‌های مختلف را به ‌طور دقیق مدیریت کنند و از انتقال غیرمجاز اطلاعات جلوگیری کنند. پیاده‌سازی مؤثر تقسیم‌بندی شبکه می‌تواند به ‌ویژه در مقابله با تهدیدات پیچیده مانند بدافزارهای بدون فایل مؤثر باشد. با ایجاد محدودیت‌های دسترسی در هر بخش از شبکه، حتی اگر یک مهاجم موفق به نفوذ در یکی از بخش‌ها شود، امکان گسترش حمله به دیگر قسمت‌های شبکه به‌ شدت کاهش می‌یابد. این استراتژی نه ‌تنها از گسترش حملات جلوگیری می‌کند، بلکه تأثیر کلی این حملات بر سازمان را نیز به حداقل می‌رساند، چرا که دسترسی به منابع حیاتی و حساس برای مهاجم محدود می‌شود.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *