آنچه در این مقاله میخوانید [پنهانسازی]
- ⭐ راهنمای گام به گام برای درک و تشخیص حمله Windows Process Injection Remote Thread
- ⭐ اجرای نمایشی (Demonstration)
- ⭐ گام اول: یافتن فرآیند هدف
- ⭐ گام دوم: باز کردن فرآیند هدف
- ⭐ گام سوم: تخصیص حافظه
- ⭐ گام چهارم: نوشتن کد مخرب
- ⭐ گام پنجم: ایجاد Remote Thread
- ⭐ گام ششم: اجرای کد مخرب
- ⭐ تشخیص حمله با Splunk (بر اساس منبع)
- ⭐ برای تشخیص حمله Windows Process Injection Remote Thread میتوان از کوئریهای زیر در Splunk استفاده کرد (بر اساس منبع):
- ⭐ توضیحات کوئری:
راهنمای گام به گام برای درک و تشخیص حمله Windows Process Injection Remote Thread
توضیحات حمله Windows Process Injection Remote Thread
Windows Process Injection Remote Thread یکی از تکنیکهای تزریق فرآیند است که در آن مهاجم یک فرآیند قانونی را در سیستم هدف پیدا کرده و با ایجاد یک Remote Thread در آن، کد مخرب خود را اجرا میکند. این کار باعث میشود کد مخرب در حافظه فرآیند قانونی پنهان شده و از شناسایی توسط نرمافزارهای امنیتی جلوگیری شود.
اجرای نمایشی (Demonstration)
نمایش مراحل اجرا
-
گام اول: یافتن فرآیند هدف
ابتدا یک فرآیند قانونی مانند notepad.exe به عنوان هدف انتخاب میشود. -
گام دوم: باز کردن فرآیند هدف
فرآیند هدف با استفاده از OpenProcess باز میشود. -
گام سوم: تخصیص حافظه
در فرآیند هدف حافظهای برای کد مخرب تخصیص داده میشود. -
گام چهارم: نوشتن کد مخرب
کد مخرب به حافظه تخصیص داده شده در فرآیند هدف نوشته میشود. -
گام پنجم: ایجاد Remote Thread
یک Remote Thread در فرآیند هدف ایجاد میشود که به آدرس کد مخرب اشاره میکند. -
گام ششم: اجرای کد مخرب
با ایجاد Remote Thread، کد مخرب در فرآیند هدف اجرا میشود.
تشخیص حمله با Splunk (بر اساس منبع)
برای تشخیص حمله Windows Process Injection Remote Thread میتوان از کوئریهای زیر در Splunk استفاده کرد (بر اساس منبع):
event_platform=Win host=* EventCode=8 OR EventCode=7
| where (NewThreadId!="" AND SourceImage!="")
| regex NewThreadId !="0x0"
| rex field=SourceImage ".+\\\\(?.*)"
| rex field=TargetImage ".+\\\\(?.*)"
| table _time Computer, SourceImage, TargetImage, ParentProcess, ChildProcess, NewThreadId
توضیحات کوئری:
- این کوئری رویدادهای ایجاد فرآیند (EventCode=8) و ایجاد Thread (EventCode=7) را جستجو میکند.
- با فیلتر کردن رویدادهایی که Thread ID جدید دارند و SourceImage غیر خالی است، فرآیندهایی که در حال ایجاد thread در فرآیندهای دیگر هستند، شناسایی میشوند.
- با استفاده از regex، نام فرآیند والد و فرزند استخراج شده و در جدول نمایش داده میشوند.