ابزار BLUESPAWN

سلام دوستان 

امروزه توی دنیا امنیت سایبری به خصوص در حوزه کشف نفوذ و پاسخدهی به حوادث نیاز مبرمی نسبت به ابزارهایی اعم از آنتی ویروس و Sysmon و EDR و غیره می باشد. 

ابزار BLUESPAWN به تیم کشف نفود ( آبی ) کمک می نماید تا فعالیت های غیرعادی در سیستم ها را در کمترین زمان شناسایی نماید. همچنین بلافاصله بعد از شناسایی بدافزار سریعا اقدام به حذف آن انجام دهد تا از گسترش آلودگی جلوگیری نماید. 

این ابزار ابتدا حملات شناخته شده بر روی سیستم عامل ویندوز را شبیه سازی می نماید تا بتواند رویکرد بهتری برای جلوگیری آن داشته باشد. بسیاری از ابزار های تست نفوذ متن باز هستند اما خیلی از ابزار های کشف نفوذ کدشان بسته می باشد.

حال برای تست ابزار از کامند زیر استفاده می نماییم: 

.\BLUESPAWN-client-x64.exe --mitigate --action=audit

BLUESPAWN in Action-Mitigate

حال دستور دیگری از این ابزار را برای شناسایی کد های مخرب نیز امتحان می نماییم:

.\BLUESPAWN-client-x64.exe --hunt -a Cursory --log=console,xml

BLUESPAWN in Action-Hunt

دور زدن ابزار sysmon

سلام دوستان در قسمت های قبلی ابزار فوق العاده رایگان ماکروسافت sysmon را بررسی نمودیم. توی این پست می خواهیم یکی از روش های دور زدن این ابزار رو باهم پیش ببریم. 

خب اول یکبار باهم مراحل نصب این ابزار رو جلو بریم:

sysmon -accepteula -i

سپس ابتدا سرویس و درایور مورد نیاز این ابزار روی سیستم عامل نصب می گردد.

How to Get a Log of DNS Queries with Sysmon | by soji256 | Medium

درایوری به نام SysmonDrv در سیستم عامل اجرا می شود. مهاجمین برای دور زدن این ابزار ابتدا درایور را غیرفعال می نمایند و سپس به اجرای تکنیک های خودشون می پردازند. 

با دستور fltMC.exe می توانیم تمامی درایور های اجرا شده داخل سیستم عامل را مشاهده نماییم. مهاجم پس از مشاهده درایور با دستور fltMC.exe unload $DriverName درایور sysmon را غیر فعال می نماید. 

آیا در اینجا sysmon نگاه می کند؟ 

قطعا جواب خیر هست. 

سواستفاده از WMI

سلام دوستان 
در این بخش می خواهیم یکی از روش های بسیار پیشرفته مهاجمین را برای Persistence و Privilege Escalation بررسی کنیم. همچنین در قسمت بعد نحوه شناسایی با ابزار های sysmon و autoruns بررسی می نماییم.

WMI یا Windows Managent Instrumentation برای مدیریت سیستم های ماکروسافتی به صورت  local یا remote می باشد. برای مثال همه موارد زیر توسط این ماژول قابل انجام می باشد: 

  1. اجرا کردن یک Process بر روی یک کامپیوتر در شبکه بصورت ریموت
  2. زمانبندی کردن اجرا یک برنامه یا Process در زمان تعیین شده و در روزهای خاص
  3. Reboot کردن یک کامپیوتر از راه دور
  4. تهیه لیست سخت افزارها و نرم افزارهای موجود در سیستم های شبکه
  5. Query گرفتن از Event های یک سیستم بصورت Local یا بصورت ریموت

حالا سه یخش مهم WMI را با هم بررسی می نماییم:

  1. event filters: شروطی که سیستم به آن گوش می دهد مانند ایجاد یک پروسس
  2. event consumers: هنگامی که event filter فعال گردد, ماژول consumers اقدامی انجام می دهد مانند اجرای یک اسکریپت
  3. filter to consumer bindings: ارتباط بین موارد فوق را ایجاد می نماید. 

حال کد زیر را برای درک بیشتر بررسی می نماییم: 

# WMI __EVENTFILTER
$wmiParams = @{
    ErrorAction = 'Stop'
    NameSpace = 'root\subscription'
}

$wmiParams.Class = '__EventFilter'
$wmiParams.Arguments = @{
    Name = 'evil'
    EventNamespace = 'root\CIMV2'
    QueryLanguage = 'WQL'
    Query = "SELECT * FROM __InstanceModificationEvent WITHIN 5 WHERE TargetInstance ISA 'Win32_PerfFormattedData_PerfOS_System' AND TargetInstance.SystemUpTime >= 1200"
}
$filterResult = Set-WmiInstance @wmiParams

# WMI __EVENTCONSUMER
$wmiParams.Class = 'CommandLineEventConsumer'
$wmiParams.Arguments = @{
    Name = 'evil'
    ExecutablePath = "C:\shell.cmd"
}
$consumerResult = Set-WmiInstance @wmiParams

#WMI __FILTERTOCONSUMERBINDING
$wmiParams.Class = '__FilterToConsumerBinding'
$wmiParams.Arguments = @{
    Filter = $filterResult
    Consumer = $consumerResult
}

$bindingResult = Set-WmiInstance @wmiParams

در اینجا ابتدا مهاجم دسترسی خود را حفظ می نماید و بعد از اجرای پیلود همیشه در سیستم باقی می ماند. 

threat hunting با sysmon

سلام به همه دوستان عزیزم

امروز میخام یکی از event id هایی که  sysmon تولید می کنه رو با بررسی یک  usecase شرح بدم. ما با کمک sysmon  میتونیم تغییرات داخل کلید های رجیستری را متوجه شویم. فرض کنید مهاجم بخواهد برای خودش یک اکانت با دسترسی سطح ادمین ایجاد کند خب به راحتی می تونه با دستور زیر برای خودش ایجاد کنه: 

net user /add kamran password

net localgroup administrators kamran

ولی اگه ادمین سرور به صورت مرتب یوزر های ایجاد شده رو بررسی کنه آیا به یوزر kamran که ما درست کردیم شک نمی کنه؟؟! قطعا آره پس مهاجم دنبال راهی هست که خودش رو مخفی کنه و می تونه با دستور زیر یک کاربر با سطح دسترسی ادمین ایجاد کنه:‌

net user admin$ password$ /add

net localgroup administrators admin$ /add

حالا چیکار کنیم؟

باید بریم توی انبوهی از کلید های رجیستری دنبال یک ادمین لوکال مخفی بگردیم خب معلومه مثله این میمونه که توی انبار کاه دنبال یک سوزن بگردیم اما sysmon می تونه اینکار رو برای ما انجام بده. 

Code Injection detection with Sysmon

Threat Hunting

کشف حمله تزریق کد توسط لاگ Sysmon

ابزار  سیسمان که توسط مارک راسنویچ ابداع گردید امروزه در سایت مایکروسافت بعنوان ابزار رسمی مایکروسافت موجود است . این ابزار میتواند لاگ غنی و مطلوبی را از عملکرد های انجام شده در سیستم عامل ویندوز ارایه کند که بعضا در لاگ معمول ویندوز موجود نیست . لذا Sysmon  ابزار مهمی در دست Threat Hunter  ها است .

باید بانید که Sysmon برای تولید لاگ مورد نیاز نیاز به انجام تنظیمات دارد که این تنظیمات در فایل کانفیگ آن باید درج شود.

در خصوص موارد Sysmon  انشالله در نوشته های آتی صحبت خواهم کرد

امروز تزریق کدی را میبینیم و به کمک Sysmon  آنرا کشف میکنیم

 

برای تزریق کد از ابزار processhacker  استفاده میشود ( دانلود از اینجا https://processhacker.sourceforge.io/)

هدف ما این است که Notepade یک DLL  دیگر که بدافزار است را فراخوانی کند

در شکل زیر فعلا Notpade را میبینیم

روش تزریق : برای تزریق مراحل زیر را میپیماییم

 

پس از انجاتم تزریق میبینیم که یه Dll  اضافه شده است

 

حالا در لاگ چه میبینیم

 

باید با دقت نگاه کنید

در لاگ سیسمان که در فولدر سیسمان است چه میبینید ؟