- خانه
- محصولات و خدمات
- امنیت نقاط پایانیامنیت نقاط پایانی پیشرفتهامنیت دادهامنیت زیر ساخت شبکهمدیریت فناوری اطلاعاتحفاظت الکترونیکدورههای آموزش فناوری اطلاعاتامنیت نقاط پایانی
امنیت نقاط پایانی (Endpoint Protection Platform)
(آنتی ویروس سازمانی پادویش بیس) Padvish Base
(آنتی ویروس سازمانی پادویش کورپوریت) Padvish Corporate
Kaspersky Small Office Security
Kaspersky Endpoint Security Select
Kaspersky Endpoint Security Advanced
Kaspersky Total Security for Business
Kaspersky Endpoint Security Cloud
Kaspersky Endpoint Security Cloud Plus
Kaspersky Hybrid Cloud Security
(ضد باجگیر سازمانی پادویش) Padvish Anticrypto
Kaspersky Security for Storage
امنیت نقاط پایانی پیشرفتهمرکز کشف و پاسخ نقاط پایانی
(Endpoint Detection & Response)مرکز کشف و پاسخ مدیریت شده
(Managed Detection & Response)
امنیت دادهامنیت ایمیل (Mail Security)
امنیت زیر ساخت شبکهفایروال و مدیریت یکپارچه تهدیدات (Firewall & UTM)
APK GATE Unified Threat Management
مدیریت وقایع و امنیت اطلاعات (SIEM)
مدیریت فناوری اطلاعات(Asset Management) مدیریت داراییها
(مدیریت داراییهای پادویش) Padvish AM
(Support Management) مدیریت پشتیبانی
jsjحفاظت الکترونیکدورههای آموزش فناوری اطلاعات
- دانلود
- مقالات
- دعوت به همکاری
- درباره ما
- تماس با ما
- فروش آنلاین
- سفارش آنتی ویروس سازمانی
بستن
تکنیک جدید تزریق بدافزار به نام Mockingjay

فهرست مطالب
تزریق بدافزار یا Process Injection به چه معناست ؟
تکنیکی که به کمک آن اجرای کدهای غیر مجاز در فضای آدرس پردازههای مجاز، امکان پذیر میشود. این تکنیک به مجرمین سایبری اجازه آلوده کردن هر سیستمی به انوع بدافزار با کمترین میزان شناسایی را میدهد. با این روش بدافزار درون برنامهها و پردازههای مجاز که معمولا پردازههای سیستم عاملها میباشند، تزریق شده و از سطح دسترسی آن پردازهها برای انجام عملیات خرابکارانه بهره میبرند. به طور کلی شناسایی بدافزار از طریق مانیتور کردن لیست پردازههای در حال اجرا میسر است به همین دلیل بدافزارهایی که به روش Process Injection به درون پردازههای سالم راه مییابند شناسایی دشوارتری دارند و به راحتی میتوانند در بین تمامی کامپیوترهای شبکه تکثیر شوند.
البته سیستم های پیشرفته امنیت سایبری همچون EDR (Endpoint Detection & Response) توانایی شناسایی چنین بدافزارهای ناشناختهای را خواهند داشت. این سیستمها با مانیتور کردن عملیات اختصاص حافظه، بارگذاری فایل و اجرای برنامهها امکان شناسایی و تشخیص عملیات Process Injection را خواهند داشت. توسعه دهندگان بدافزارها معمولا از پردازههای معمولی ویندوز همچونcmd.exe ، msbuild.exe و explorer.exe استفاده میکنند و کدهای مخرب خود را در آن ها تزریق میکند لذا تشخیص چنین بدافزارهایی، دیگر به دشواری قبل نخواهد بود.
روش های Process Injection
DLL Injection: در این روش هکر از یک DLL برای نفوذ در یک پردازه استفاده می کند و آن پردازه را مجبور میکند که طور دیگری رفتار نماید که کاربر انتظار آن را ندارد.
PE Injection: هکر با استفاده از یک فایل PE اقدام به آلوده کردن یک پردازه در حال اجرا بروی سیستم میکند. این روش نسبت به دیگر روش بسیار سادهتر میباشد و هکر میتواند کدهای PE را به راحتی با زبان C++ کدنویسی کند.
Process Hollowing:این روش به جای بهره گیری از پردازه های در حال اجرا، پردازههای جدید تولید میکند اما آن را با کدهای مخرب آلوده میکند. هکر پروسههای جدیدی به نام svchost.exe یا notepad ایجاد میکند که کاربران با دیدن چنین پروسههای به هیچ عنوان به آنها شک نخواهند برد در حالی که آنها در حال اجرای عملیات خرابکارانه هستند.
روش جدید Mockingjay
این روش جدید که Mockingjay نام گذاری شده است به هکرها اجازه میدهد بدون شناسایی شدن توسط سیستم EDR به صورت کاملا مخفیانه کدهای مخرب را در سیستم قربانی اجرا نمایند. محققان امنیت سایبری Security Joes این روش را کشف کردهاند؛ آنها از فایلهای DLL مجازی که دارای قسمت RWX میباشند استفاده میکند تا سنسورهای EDR قادر به تشخیص تزریق کد به دورن پردازهها نشوند.
در روشهای کلاسیک process injecting هکر مجبور به استفاده از api ها و توابع سیستمی میباشد که شامل ایجاد پردازه/رشته جدید، نوشتن برروی حافظه رم و دیگر عملیات سیستمی با دسترسی بالا میباشد. به همین دلیل سیستمهای مانیتورینگ حساسیت بالایی روی چنین عملیاتهایی دارند و به راحتی میتوانند چنین حوادث و دخالتهای مشکوکی را شناسایی و نسبت به مقابله با آن اقدام نمایند. روش Mockingjay از توابع و api های معمول سیستمی جهت اجرای این حمله بهره نمیبرد و به همین دلیل فرصت شناسایی شدن توسط سیستمهای امنیت سایبری را از بین میبرد.
ابداع روش Mockingjay
هدف اول محققان یافتن فایل DLL ای بود که به صورت پیش فرض دارای قسمت RWX میباشد، تا بتوانند با ویرایش محتوای آن کدهای مخرب را درون آن بارگذاری نمایند. برای اینکار آنها فایل DLL ای به نام msys-2.0.dll را درون Visual Sutdio 2022 یافتند که به صورت پیش فرض دارای RWX میباشد. جهت نفوذ در RWX میتوان از حافظه امن به ارث برده شده آن استفاده کرد و به صورت مؤثر احتمال هرگونه شناسایی توسط ضد ویروسها را از بین برد. در ادامه این تیم توانست دو روش تزریق توسعه بدهند، یکی برای تزریق بروی سیستم جاری و دیگری بروی سیستم ریموت.
در حالت اول، برنامهای به نام nightmare.exe فایل DLL آسیب پذیر را درون حافظه بارگزاری میکنند اینکار توسط توابع ویندوز انجام میگیرد، بارگذاری این فایل دسترسی به قسمت RWX را بدون درخواست تخصیص حافظه(memory allocation) به ارمغان میآورد.

سپس از یک ماژول سیستمی به نام NTDLL.DLL که فاقد آسیب پذیری مذکور است جهت استخراج مقادیر عددیی توابع سیستمی استفاده میشود. این تکنیک که به Hell’s Gate EDR unhooking مشهور است سنسورهای تشخیص سیستم EDR را دور میزند و قادر به اجرای توابع سیستمی با دسترسی بالا است.
روش دوم، شامل استفاده از RWX فایل msys-2.0.dll برای تزریق یک پیلود به درون یک پردازه ریموت میباشد که این پردازه ریموت معمولا ssh.exe میباشد. یک نرم افزار مخرب پروسه ssh.exe را به عنوان پروسه فرزند اجرا میکند، و با برقراری یک اتصال به سیستم هدف کدهای مخرب را به درون RWX فایل DLL آسیب پذیر تزریق میکند.
کدهای تزریق شده بروی سیستم هدف فایل dll مخربی را بارگذاری میکند که منجر به برقراری یک اتصال reverse shell از کامپیوتر مقصد میگردد. آزمایشات نشان میدهد که این روش تزریق کد به کامپیوتر ریموت، بدون نیاز به ساخت thread جدید از پروسه هدف، درخواست تخصیص حافظه و یا اعمال دسترسی های با موفقیت سیستم EDR را دور میزند.

هر دو این روشها از توابع ویندوزی شامل LoadLibraryW ، CreateProcessW و GetModuleInformation برای بارگذاری فایل dll و یافتن قسمت RWX استفاده میکنند. در حالی که اکثر سیستم های EDR معمولا فراخوانی توابع ویندوزی همچون WriteProcessMemory ، NtWriteVirtualMemroy ، CreateRemoteThread و NtCreateThreadEx مانیتور میکنند. توابع یاد شده معمولا در روشهای معمول تزریق کد استفاده میشوند که با این حساب به نظر میرسد روش Mockingjay میتواند بدون شناسایی شدن توسط سیستمهای EDR عملیات خود را انجام دهد.
DLL Injection: در این روش هکر از یک DLL برای نفوذ در یک پردازه استفاده می کند و آن پردازه را مجبور میکند که طور دیگری رفتار نماید که کاربر انتظار آن را ندارد.
PE Injection: هکر با استفاده از یک فایل PE اقدام به آلوده کردن یک پردازه در حال اجرا بروی سیستم میکند. این روش نسبت به دیگر روش بسیار سادهتر میباشد و هکر میتواند کدهای PE را به راحتی با زبان C++ کدنویسی کند.
Process Hollowing:این روش به جای بهره گیری از پردازه های در حال اجرا، پردازههای جدید تولید میکند اما آن را با کدهای مخرب آلوده میکند. هکر پروسههای جدیدی به نام svchost.exe یا notepad ایجاد میکند که کاربران با دیدن چنین پروسههای به هیچ عنوان به آنها شک نخواهند برد در حالی که آنها در حال اجرای عملیات خرابکارانه هستند.
0 دیدگاه