Այս հոդվածը Sysmon սպառնալիքների վերլուծության շարքի առաջին մասն է: Շարքի մնացած բոլոր մասերը.
Մաս 1. Ներածություն Sysmon Log-ի վերլուծությանը (մենք այստեղ ենք)
Մաս 2. Sysmon իրադարձությունների տվյալների օգտագործումը սպառնալիքները բացահայտելու համար
Մաս 3. Sysmon սպառնալիքների խորը վերլուծություն գրաֆիկների միջոցով
Եթե դուք աշխատում եք տեղեկատվական անվտանգության ոլորտում, հավանաբար հաճախ պետք է հասկանաք շարունակվող հարձակումները: Եթե դուք արդեն ունեք մարզված աչք, կարող եք ոչ ստանդարտ գործունեություն փնտրել «հում» չմշակված տեղեկամատյաններում, օրինակ՝ աշխատող PowerShell սկրիպտը:
Ցանկանու՞մ եք հասկանալ Sysmon-ի մատյանում ցուցադրվող սպառնալիքների հիմքում ընկած հիմնական գաղափարները: Ներբեռնեք մեր ուղեցույցը
Մեր շարքի առաջին մասում մենք կանդրադառնանք, թե ինչ կարող եք անել Sysmon-ի հիմնական տեղեկատվության հետ: XNUMX-րդ մասում մենք լիովին կօգտվենք մայր գործընթացի տեղեկատվությունից՝ ստեղծելու ավելի բարդ համապատասխանության կառուցվածքներ, որոնք հայտնի են որպես սպառնալիքների գրաֆիկներ: Երրորդ մասում մենք կդիտարկենք մի պարզ ալգորիթմ, որը սկանավորում է սպառնալիքի գրաֆիկը՝ անսովոր գործունեություն որոնելու համար՝ վերլուծելով գրաֆիկի «կշիռը»: Եվ վերջում, դուք կպարգևատրվեք սպառնալիքների հայտնաբերման կոկիկ (և հասկանալի) հավանականական մեթոդով:
Մաս 1. Ներածություն Sysmon Log-ի վերլուծությանը
Ի՞նչը կարող է օգնել ձեզ հասկանալ իրադարձությունների մատյանի բարդությունները: Ի վերջո - SIEM: Այն նորմալացնում է իրադարձությունները և պարզեցնում դրանց հետագա վերլուծությունը: Բայց մենք այդքան հեռուն գնալու կարիք չունենք, համենայն դեպս՝ սկզբում: Սկզբում SIEM-ի սկզբունքները հասկանալու համար բավական կլինի փորձել հրաշալի անվճար Sysmon կոմունալ ծրագիրը։ Եվ նրա հետ աշխատելը զարմանալիորեն հեշտ է: Շարունակեք այդպես, Microsoft!
Ի՞նչ առանձնահատկություններ ունի Sysmon-ը:
Մի խոսքով, գործընթացների մասին օգտակար և ընթեռնելի տեղեկատվություն (տես ստորև նկարները): Դուք կգտնեք մի շարք օգտակար մանրամասներ, որոնք չկան Windows-ի իրադարձությունների մատյանում, բայց ամենակարևորը հետևյալ դաշտերն են.
- Գործընթացի ID (տասնորդական, ոչ վեցանկյուն!)
- Ծնողական գործընթացի ID
- Գործընթացի հրամանի տող
- Ծնողական գործընթացի հրամանի տող
- Ֆայլի պատկերի հեշ
- Ֆայլի պատկերների անունները
Sysmon-ը տեղադրված է և՛ որպես սարքի դրայվեր, և՛ որպես ծառայություն՝ ավելի մանրամասն
Sysmon-ը քվանտային թռիչք է կատարում՝ տրամադրելով օգտակար (կամ ինչպես վաճառողները սիրում են ասել՝ գործող) տեղեկատվություն՝ օգնելու հասկանալ հիմքում ընկած գործընթացները: Օրինակ, ես սկսեցի գաղտնի նիստ
Windows-ի գրանցամատյանը ցույց է տալիս որոշ տեղեկություններ գործընթացի մասին, բայց դա քիչ օգուտ ունի: Գումարած պրոցեսի ID-ները տասնվեցական ձևով???
Պրոֆեսիոնալ ՏՏ մասնագետի համար, ով հասկանում է հակերության հիմունքները, հրամանի տողը պետք է կասկածելի լինի: Օգտագործելով cmd.exe-ն այնուհետև մեկ այլ հրաման գործարկելու և ելքը տարօրինակ անունով ֆայլ վերահղելու համար ակնհայտորեն նման է մոնիտորինգի և վերահսկման ծրագրերի գործողություններին:
Այժմ եկեք նայենք Sysmon մուտքի համարժեքին, նկատելով, թե որքան լրացուցիչ տեղեկատվություն է այն տալիս մեզ.
Sysmon-ի առանձնահատկությունները մեկ սքրինշոթում. գործընթացի մասին մանրամասն տեղեկատվություն ընթեռնելի ձևով
Դուք տեսնում եք ոչ միայն հրամանի տողը, այլև ֆայլի անունը, գործարկվող հավելվածի ուղին, այն, ինչ Windows-ը գիտի դրա մասին («Windows Command Processor»), նույնացուցիչը: ծնողական գործընթաց, հրամանի տող ծնող, որը գործարկեց cmd shell-ը, ինչպես նաև հիմնական գործընթացի իրական ֆայլի անունը: Ամեն ինչ մեկ տեղում, վերջապես!
Sysmon-ի մատյանից կարող ենք եզրակացնել, որ մեծ հավանականությամբ այս կասկածելի հրամանի տողը, որը մենք տեսանք «հում» մատյաններում, աշխատողի նորմալ աշխատանքի արդյունք չէ: Ընդհակառակը, այն ստեղծվել է C2-ի նման գործընթացով՝ wmiexec, ինչպես ես նշեցի ավելի վաղ, և ուղղակիորեն առաջացել է WMI սպասարկման գործընթացի (WmiPrvSe) կողմից: Այժմ մենք ունենք ցուցանիշ, որ հեռավոր հարձակվողը կամ ինսայդերը փորձարկում է կորպորատիվ ենթակառուցվածքը:
Ներկայացնում ենք Get-Sysmonlogs-ը
Իհարկե, շատ լավ է, երբ Sysmon-ը տեղեկամատյանները դնում է մեկ տեղում: Բայց, հավանաբար, ավելի լավ կլիներ, եթե մենք կարողանայինք մուտք գործել առանձին տեղեկամատյանների դաշտեր ծրագրավորմամբ, օրինակ՝ PowerShell հրամանների միջոցով: Այս դեպքում դուք կարող եք գրել մի փոքրիկ PowerShell սկրիպտ, որը կավտոմատացնի հնարավոր սպառնալիքների որոնումը:
Ես առաջինը չէի, որ նման միտք ունեցա։ Եվ լավ է, որ որոշ ֆորումի գրառումներում և GitHub-ում
Առաջին կարևոր կետը թիմի կարողությունն է
$events = Get-WinEvent -LogName "Microsoft-Windows-Sysmon/Operational" | where { $_.id -eq 1 -or $_.id -eq 11}
Եթե ցանկանում եք ինքներդ փորձարկել հրամանը, ցուցադրելով բովանդակությունը $events զանգվածի առաջին տարրում՝ $events[0]: Հաղորդագրություն, ելքը կարող է լինել մի շարք տեքստային տողերի՝ շատ պարզ ձևաչափով. Sysmon դաշտ, երկու կետ, այնուհետև արժեքը:
Ուռա՜ Sysmon մուտքի դուրսբերում JSON պատրաստի ձևաչափով
Դուք նույնն եք մտածում, ինչ ես: Մի փոքր ավելի ջանք գործադրելով, դուք կարող եք ելքը վերածել JSON ձևաչափված տողի, այնուհետև այն ուղղակիորեն ներբեռնել PS օբյեկտի մեջ՝ օգտագործելով հզոր հրամանը:
Ես կցուցադրեմ փոխակերպման PowerShell կոդը, որը շատ պարզ է, հաջորդ մասում: Առայժմ տեսնենք, թե ինչ կարող է անել իմ նոր հրամանը՝ get-sysmonlogs, որը ես տեղադրել եմ որպես PS մոդուլ։
Իրադարձությունների գրանցամատյանի անհարմար ինտերֆեյսի միջոցով Sysmon log-ի վերլուծության մեջ խորասուզվելու փոխարեն, մենք կարող ենք առանց ջանքերի որոնել աճող գործունեությունը անմիջապես PowerShell նիստից, ինչպես նաև օգտագործել PS հրամանը:
WMI-ի միջոցով գործարկված cmd պատյանների ցանկը: Էժան սպառնալիքների վերլուծություն մեր սեփական Get-Sysmonlogs թիմի հետ
Հրաշալի՜ Ես ստեղծեցի մի գործիք՝ Sysmon-ի տեղեկամատյանում հարցման համար, կարծես դա տվյալների բազա է: Մեր հոդվածում մասին
Sysmon և գրաֆիկի վերլուծություն
Եկեք նահանջենք և մտածենք այն մասին, թե ինչ ենք հենց նոր ստեղծել: Ըստ էության, մենք այժմ ունենք Windows-ի իրադարձությունների տվյալների բազա, որը հասանելի է PowerShell-ի միջոցով: Ինչպես արդեն նշեցի, գրառումների միջև կան կապեր կամ հարաբերություններ՝ ParentProcessId-ի միջոցով, այնպես որ կարելի է ձեռք բերել գործընթացների ամբողջական հիերարխիա:
Եթե կարդացել եք շարքը
Բայց իմ Get-Sysmonlogs հրամանով և լրացուցիչ տվյալների կառուցվածքով, որը մենք կդիտարկենք ավելի ուշ տեքստում (իհարկե, գրաֆիկ), մենք ունենք սպառնալիքները հայտնաբերելու գործնական միջոց, որը պարզապես պահանջում է ճիշտ գագաթային որոնում կատարել:
Ինչպես միշտ մեր DYI բլոգային նախագծերի դեպքում, որքան շատ աշխատեք սպառնալիքների մանրամասները փոքր մասշտաբով վերլուծելու վրա, այնքան ավելի շատ կհասկանաք, թե որքան բարդ է սպառնալիքների հայտնաբերումը ձեռնարկության մակարդակում: Եվ այս գիտակցությունը չափազանց մեծ է կարևոր կետ.
Առաջին հետաքրքիր բարդություններին կհանդիպենք հոդվածի երկրորդ մասում, որտեղ կսկսենք Sysmon-ի իրադարձությունները միմյանց հետ կապել շատ ավելի բարդ կառուցվածքների մեջ։
Source: www.habr.com