Sysmon tahdidlarini tahlil qilish boʻyicha qoʻllanma, 1-qism

Sysmon tahdidlarini tahlil qilish boʻyicha qoʻllanma, 1-qism

Ushbu maqola Sysmon tahdid tahlili turkumining birinchi qismidir. Seriyaning barcha boshqa qismlari:

1-qism: Sysmon log tahliliga kirish (biz shu yerdamiz)
2-qism: tahdidlarni aniqlash uchun Sysmon voqea ma'lumotlaridan foydalanish
3-qism. Grafiklar yordamida Sysmon tahdidlarini chuqur tahlil qilish

Agar siz axborot xavfsizligi sohasida ishlayotgan bo'lsangiz, ko'pincha davom etayotgan hujumlarni tushunishingiz kerak bo'ladi. Agar sizda allaqachon o'qitilgan ko'z bo'lsa, "xom" ishlov berilmagan jurnallarda nostandart faoliyatni qidirishingiz mumkin, masalan, PowerShell skripti ishlayotgan DownloadString buyrug'i bilan yoki o'zini Word fayli sifatida ko'rsatuvchi VBS skripti - Windows hodisalari jurnalidagi so'nggi harakatlarni shunchaki aylanib chiqish. Ammo bu haqiqatan ham katta bosh og'rig'i. Yaxshiyamki, Microsoft hujum tahlilini ancha osonlashtiradigan Sysmon-ni yaratdi.

Sysmon jurnalida ko'rsatilgan tahdidlar ortidagi asosiy g'oyalarni tushunmoqchimisiz? Qo'llanmamizni yuklab oling WMI hodisalari josuslik vositasi sifatida va siz insayderlar boshqa xodimlarni qanday qilib yashirincha kuzatishi mumkinligini tushunasiz. Windows hodisalari jurnali bilan ishlashning asosiy muammosi ota-ona jarayonlari haqida ma'lumot yo'qligi, ya'ni. undan jarayonlar ierarxiyasini tushunish mumkin emas. Boshqa tomondan, Sysmon jurnali yozuvlarida asosiy jarayon identifikatori, uning nomi va ishga tushiriladigan buyruq qatori mavjud. Rahmat, Microsoft.

Seriyamizning birinchi qismida biz Sysmon’dan asosiy ma’lumotlar bilan nima qilishingiz mumkinligini ko‘rib chiqamiz. XNUMX-qismda biz tahdid grafiklari deb nomlanuvchi yanada murakkab muvofiqlik tuzilmalarini yaratish uchun ota-ona jarayoni maʼlumotlaridan toʻliq foydalanamiz. Uchinchi qismda biz grafikning "og'irligi" ni tahlil qilish orqali noodatiy faoliyatni qidirish uchun tahdid grafigini skanerdan o'tkazadigan oddiy algoritmni ko'rib chiqamiz. Va oxirida siz tahdidni aniqlashning aniq (va tushunarli) ehtimoliy usuli bilan taqdirlanasiz.

1-qism: Sysmon log tahliliga kirish

Voqealar jurnalining murakkabligini tushunishga nima yordam beradi? Oxir oqibat - SIEM. Bu hodisalarni normallashtiradi va ularning keyingi tahlilini soddalashtiradi. Lekin biz u qadar uzoqqa borishimiz shart emas, hech bo'lmaganda birinchi navbatda. Dastlab, SIEM tamoyillarini tushunish uchun ajoyib bepul Sysmon yordam dasturini sinab ko'rish kifoya qiladi. Va u bilan ishlash hayratlanarli darajada oson. Davom eting, Microsoft!

Sysmon qanday xususiyatlarga ega?

Qisqasi - jarayonlar haqida foydali va o'qilishi mumkin bo'lgan ma'lumotlar (quyidagi rasmlarga qarang). Siz Windows Voqealar jurnalida mavjud bo'lmagan bir qancha foydali ma'lumotlarni topasiz, lekin eng muhimi quyidagi maydonlardir:

  • Jarayon identifikatori (onlik emas, o'nlik bilan!)
  • Asosiy jarayon identifikatori
  • Buyruqlar qatorini qayta ishlash
  • Asosiy jarayonning buyruq qatori
  • Fayl tasviri xeshi
  • Fayl tasvir nomlari

Sysmon ham qurilma drayveri, ham xizmat sifatida o'rnatiladi - batafsil ma'lumot Bu erda. Uning asosiy afzalligi - loglarni tahlil qilish qobiliyati bir nechta manbalar, ma'lumotlarning o'zaro bog'liqligi va natijada olingan qiymatlarning yo'l bo'ylab joylashgan bitta voqea jurnali papkasiga chiqishi Microsoft -> Windows -> Sysmon -> Operatsion. Windows jurnallari bo'yicha o'z tadqiqotim davomida men doimiy ravishda PowerShell jurnallari papkasi va Xavfsizlik papkasi o'rtasida almashishga majbur bo'ldim va voqealar jurnallarini varaqlab, ikkalasi o'rtasidagi qiymatlarni qandaydir o'zaro bog'lash uchun jasorat bilan harakat qildim. . Bu hech qachon oson ish emas va keyinroq tushunganimdek, darhol aspirinni zaxiralash yaxshiroqdir.

Sysmon asosiy jarayonlarni tushunishga yordam berish uchun foydali (yoki sotuvchilar aytganidek, harakat qilish mumkin) ma'lumotlarni taqdim etish orqali kvant sakrashini amalga oshiradi. Misol uchun, men yashirin sessiya boshladim wmiexec, tarmoq ichidagi aqlli insayderning harakatini simulyatsiya qilish. Buni Windows voqealar jurnalida ko'rasiz:

Sysmon tahdidlarini tahlil qilish boʻyicha qoʻllanma, 1-qism

Windows jurnali jarayon haqida ba'zi ma'lumotlarni ko'rsatadi, ammo unchalik foydali emas. Plus protsessor identifikatorlari o'n oltilik tizimda ???

Xakerlik asoslarini tushunadigan professional IT mutaxassisi uchun buyruq qatori shubhali bo'lishi kerak. Keyin boshqa buyruqni ishga tushirish va chiqishni g'alati nomli faylga yo'naltirish uchun cmd.exe dan foydalanish monitoring va nazorat qilish dasturining harakatlariga aniq o'xshaydi. buyruq-nazorat (C2): Shu tarzda, WMI xizmatlaridan foydalangan holda psevdo-qobiq yaratiladi.
Keling, Sysmon kirish ekvivalentini ko'rib chiqamiz va u bizga qancha qo'shimcha ma'lumot beradi:

Sysmon tahdidlarini tahlil qilish boʻyicha qoʻllanma, 1-qism

Sysmon xususiyatlari bitta skrinshotda: jarayon haqida batafsil ma'lumot o'qilishi mumkin bo'lgan shaklda

Siz nafaqat buyruq qatorini, balki fayl nomini, bajariladigan dasturga yo'lni, Windows bu haqda biladigan narsalarni ("Windows Buyruqlar Protsessori"), identifikatorni ham ko'rasiz. ota-ona jarayon, buyruq qatori ota -ona, cmd qobig'ini ishga tushirgan, shuningdek, asosiy jarayonning haqiqiy fayl nomi. Hammasi bir joyda, nihoyat!
Sysmon jurnalidan xulosa qilishimiz mumkinki, yuqori ehtimollik bilan biz "xom" jurnallarda ko'rgan ushbu shubhali buyruq qatori xodimning oddiy ishi natijasi emas. Aksincha, u C2-ga o'xshash jarayon - yuqorida aytib o'tganimdek, wmiexec tomonidan yaratilgan va bevosita WMI xizmat ko'rsatish jarayoni (WmiPrvSe) tomonidan yaratilgan. Endi bizda uzoqdan tajovuzkor yoki insayder korporativ infratuzilmani sinovdan o'tkazayotgani haqida indikator bor.

Get-Sysmonlogs bilan tanishtirish

Albatta, Sysmon jurnallarni bir joyga qo'yganida juda yaxshi. Ammo, ehtimol, agar biz alohida jurnal maydonlariga dasturiy ravishda - masalan, PowerShell buyruqlari orqali kira olsak, yanada yaxshi bo'lar edi. Bunday holda siz potentsial tahdidlarni qidirishni avtomatlashtiradigan kichik PowerShell skriptini yozishingiz mumkin!
Menda bunday fikr birinchi bo'lmagan. Va ba'zi forumlarda va GitHub xabarlarida bu yaxshi loyihalar Sysmon jurnalini tahlil qilish uchun PowerShell-dan qanday foydalanish allaqachon tushuntirilgan. Mening vaziyatimda men har bir Sysmon maydoni uchun alohida skriptlarni tahlil qilish satrlarini yozishdan qochishni xohlardim. Shunday qilib, men dangasa odam tamoyilidan foydalandim va o'ylaymanki, natijada men qiziqarli narsaga erishdim.
Birinchi muhim jihat - bu jamoaning qobiliyati Get-WinEvent Sysmon jurnallarini o'qing, kerakli hodisalarni filtrlang va natijani PS o'zgaruvchisiga chiqaring, masalan:

$events = Get-WinEvent  -LogName "Microsoft-Windows-Sysmon/Operational" | where { $_.id -eq 1 -or $_.id -eq 11}

Agar siz buyruqni o'zingiz sinab ko'rmoqchi bo'lsangiz, $events massivining birinchi elementi, $events[0].Message tarkibini ko'rsatish orqali chiqish juda oddiy formatga ega bo'lgan bir qator matn satrlari bo'lishi mumkin: fayl nomi. Sysmon maydoni, ikki nuqta, so'ngra qiymatning o'zi.

Sysmon tahdidlarini tahlil qilish boʻyicha qoʻllanma, 1-qism

Xayr! Sysmon logini JSON-tayyor formatga chiqarish

Siz men bilan bir xil narsani o'ylaysizmi? Bir oz ko'proq kuch sarflab, siz chiqishni JSON formatidagi satrga o'zgartirishingiz va kuchli buyruq yordamida uni to'g'ridan-to'g'ri PS ob'ektiga yuklashingiz mumkin. ConvertFrom-Json .
Men konvertatsiya qilish uchun PowerShell kodini ko'rsataman - bu juda oddiy - keyingi qismda. Hozircha men PS moduli sifatida oʻrnatgan get-sysmonlogs deb nomlangan yangi buyrugʻim nima qila olishini koʻrib chiqamiz.
Noqulay hodisalar jurnali interfeysi orqali Sysmon jurnalining tahliliga chuqur sho'ng'ish o'rniga, biz PowerShell seansidan to'g'ridan-to'g'ri qo'shimcha faollikni osongina qidirishimiz, shuningdek, PS buyrug'idan foydalanishimiz mumkin. qayerda (taxallus - "?") qidiruv natijalarini qisqartirish uchun:

Sysmon tahdidlarini tahlil qilish boʻyicha qoʻllanma, 1-qism

WMI orqali ishga tushirilgan cmd qobiqlari ro'yxati. O'z Get-Sysmonlogs jamoasi bilan arzon narxlarda tahdidlarni tahlil qilish

Ajoyib! Men Sysmon jurnalini ma'lumotlar bazasi kabi so'rov qilish uchun vosita yaratdim. Haqida bizning maqolamizda IQ Ta'kidlanishicha, bu funksiya unda tasvirlangan ajoyib yordamchi dastur tomonidan amalga oshiriladi, garchi rasmiy ravishda SQL-ga o'xshash haqiqiy interfeys orqali. Ha, EQL oqlangan, lekin biz uchinchi qismda unga to'xtalamiz.

Sysmon va grafik tahlili

Keling, orqaga chekinamiz va biz yaratgan narsalar haqida o'ylaymiz. Aslida, bizda PowerShell orqali kirish mumkin bo'lgan Windows voqealar ma'lumotlar bazasi mavjud. Yuqorida aytib o'tganimdek, yozuvlar o'rtasida ParentProcessId orqali bog'lanish yoki munosabatlar mavjud, shuning uchun jarayonlarning to'liq ierarxiyasini olish mumkin.

Agar siz serialni o'qigan bo'lsangiz "Qo'yib bo'lmaydigan zararli dasturning sarguzashtlari" bilasizki, xakerlar murakkab ko'p bosqichli hujumlarni yaratishni yaxshi ko'radilar, bunda har bir jarayon o'zining kichik rolini o'ynaydi va keyingi bosqichga tramplin tayyorlaydi. Bunday narsalarni oddiygina "xom" jurnaldan olish juda qiyin.
Lekin mening Get-Sysmonlogs buyrug'im va matnda keyinroq ko'rib chiqamiz qo'shimcha ma'lumotlar tuzilmasi (albatta, grafik) bilan bizda tahdidlarni aniqlashning amaliy usuli bor - bu faqat to'g'ri cho'qqilarni qidirishni talab qiladi.
Har doimgidek, bizning DYI blog loyihalarida bo'lgani kabi, siz tahdidlar tafsilotlarini kichik miqyosda tahlil qilish ustida qanchalik ko'p ishlasangiz, korporativ darajada tahdidlarni aniqlash qanchalik murakkab ekanligini tushunasiz. Va bu xabardorlik juda katta muhim nuqta.

Biz maqolaning ikkinchi qismida birinchi qiziqarli asoratlarga duch kelamiz, bu erda biz Sysmon hodisalarini bir-biri bilan ancha murakkab tuzilmalarga bog'lashni boshlaymiz.

Manba: www.habr.com

a Izoh qo'shish