Հարձակումների ամենատարածված տեսակներից մեկը ծառի վրա վնասակար գործընթացի ձվադրումն է միանգամայն հարգելի գործընթացների ներքո: Գործարկվող ֆայլի ուղին կարող է կասկածելի լինել. չարամիտ ծրագիրը հաճախ օգտագործում է AppData կամ Temp պանակները, և դա բնորոշ չէ օրինական ծրագրերին: Արդարության համար արժե ասել, որ որոշ ավտոմատ թարմացման կոմունալ ծառայություններ իրականացվում են AppData-ում, ուստի միայն մեկնարկի գտնվելու վայրը ստուգելը բավարար չէ ծրագրի վնասակար լինելը հաստատելու համար:
Օրինականության լրացուցիչ գործոնը ծածկագրային ստորագրությունն է. շատ օրիգինալ ծրագրեր ստորագրված են վաճառողի կողմից: Դուք կարող եք օգտագործել այն փաստը, որ ստորագրություն չկա՝ որպես կասկածելի մեկնարկային իրերի նույնականացման մեթոդ: Բայց նորից կա չարամիտ ծրագիր, որն օգտագործում է գողացված վկայականը ինքն իրեն ստորագրելու համար:
Կարող եք նաև ստուգել MD5 կամ SHA256 ծածկագրային հեշերի արժեքը, որոնք կարող են համապատասխանել նախկինում հայտնաբերված չարամիտ ծրագրերին: Դուք կարող եք ստատիկ վերլուծություն կատարել՝ դիտելով ծրագրում առկա ստորագրությունները (օգտագործելով Yara-ի կանոնները կամ հակավիրուսային արտադրանքները): Գոյություն ունի նաև դինամիկ վերլուծություն (ծրագրի վարում որոշ անվտանգ միջավայրում և վերահսկում դրա գործողությունները) և հակադարձ ճարտարագիտություն:
Չարամիտ գործընթացի բազմաթիվ նշաններ կարող են լինել: Այս հոդվածում մենք ձեզ կպատմենք, թե ինչպես միացնել Windows-ում համապատասխան իրադարձությունների աուդիտը, մենք կվերլուծենք այն նշանները, որոնց վրա հիմնված է ներկառուցված կանոնը:
Երբ ծրագիրը գործարկվում է, այն բեռնվում է համակարգչի հիշողության մեջ: Գործարկվող ֆայլը պարունակում է համակարգչային հրահանգներ և օժանդակ գրադարաններ (օրինակ՝ *.dll): Երբ գործընթացն արդեն աշխատում է, այն կարող է լրացուցիչ թելեր ստեղծել: Թելերը թույլ են տալիս գործընթացին միաժամանակ կատարել հրահանգների տարբեր խմբեր: Վնասակար կոդի հիշողությունը ներթափանցելու և գործարկելու բազմաթիվ եղանակներ կան, եկեք տեսնենք դրանցից մի քանիսը:
Վնասակար գործընթաց գործարկելու ամենահեշտ ձևը օգտատիրոջը ստիպելն է գործարկել այն ուղղակիորեն (օրինակ՝ էլփոստի հավելվածից), այնուհետև օգտագործել RunOnce ստեղնը՝ այն գործարկելու համար ամեն անգամ, երբ համակարգիչը միացված է: Սա նաև ներառում է «անֆայլ» չարամիտ ծրագիր, որը պահում է PowerShell սկրիպտները ռեեստրի ստեղների մեջ, որոնք գործարկվում են գործարկիչի հիման վրա: Այս դեպքում PowerShell սկրիպտը վնասակար կոդ է:
Հստակ գործարկվող չարամիտ ծրագրի խնդիրն այն է, որ դա հայտնի մոտեցում է, որը հեշտությամբ հայտնաբերվում է: Որոշ չարամիտ ծրագրեր ավելի խելացի բաներ են անում, օրինակ՝ օգտագործելով մեկ այլ գործընթաց՝ հիշողության մեջ գործարկումը սկսելու համար: Հետևաբար, գործընթացը կարող է ստեղծել մեկ այլ պրոցես՝ գործարկելով որոշակի համակարգչային հրահանգ և նշելով գործարկվող ֆայլ (.exe):
Ֆայլը կարող է սահմանվել՝ օգտագործելով ամբողջական ուղին (օրինակ՝ C:Windowssystem32cmd.exe) կամ մասնակի ճանապարհով (օրինակ՝ cmd.exe): Եթե սկզբնական գործընթացը անապահով է, դա թույլ կտա անօրինական ծրագրերի գործարկել: Հարձակումը կարող է այսպիսի տեսք ունենալ. պրոցեսը գործարկում է cmd.exe-ն՝ չնշելով ամբողջական ուղին, հարձակվողը տեղադրում է իր cmd.exe-ն մի տեղում, որպեսզի գործընթացը գործարկի այն օրինականից առաջ: Երբ չարամիտ ծրագիրը գործարկվի, այն իր հերթին կարող է գործարկել օրինական ծրագիր (օրինակ՝ C:Windowssystem32cmd.exe), որպեսզի սկզբնական ծրագիրը շարունակի ճիշտ աշխատել:
Նախորդ հարձակման տարբերակն է DLL ներարկումը օրինական գործընթացի մեջ: Երբ գործընթացը սկսվում է, այն գտնում և բեռնում է գրադարաններ, որոնք ընդլայնում են դրա ֆունկցիոնալությունը: Օգտագործելով DLL ներարկում, հարձակվողը ստեղծում է վնասակար գրադարան՝ նույն անունով և օրինական API-ով: Ծրագիրը բեռնում է վնասակար գրադարան, և այն, իր հերթին, բեռնում է օրինական գրադարան և, անհրաժեշտության դեպքում, կանչում է այն գործողություններ կատարելու համար: Վնասակար գրադարանը սկսում է գործել որպես լավ գրադարանի վստահված անձ:
Վնասակար կոդը հիշողության մեջ տեղադրելու մեկ այլ եղանակ է այն տեղադրել արդեն իսկ գործող ոչ անվտանգ գործընթացում: Գործընթացները մուտք են ստանում տարբեր աղբյուրներից՝ ընթերցում ցանցից կամ ֆայլերից: Նրանք սովորաբար ստուգում են կատարում՝ համոզվելու համար, որ մուտքագրումը օրինական է: Բայց որոշ գործընթացներ չունեն համապատասխան պաշտպանություն հրահանգները կատարելիս: Այս հարձակման ժամանակ սկավառակի վրա գրադարան կամ վնասակար կոդ պարունակող գործարկվող ֆայլ չկա: Շահագործվող գործընթացի հետ մեկտեղ ամեն ինչ պահվում է հիշողության մեջ:
Հիմա եկեք տեսնենք Windows-ում նման իրադարձությունների հավաքագրման հնարավորություն տալու մեթոդոլոգիան և InTrust-ի կանոնը, որն իրականացնում է պաշտպանություն նման սպառնալիքներից: Նախ, եկեք այն ակտիվացնենք InTrust կառավարման վահանակի միջոցով:
Կանոնն օգտագործում է Windows OS-ի գործընթացին հետևելու հնարավորությունները: Ցավոք, նման միջոցառումների հավաքագրման հնարավորություն տալը հեռու է ակնհայտ լինելուց: Կան 3 տարբեր Խմբային քաղաքականության կարգավորումներ, որոնք դուք պետք է փոխեք.
Համակարգչային կոնֆիգուրացիա > Քաղաքականություն > Windows-ի կարգավորումներ > Անվտանգության կարգավորումներ > Տեղական քաղաքականություն > Աուդիտի քաղաքականություն > աուդիտի գործընթացի հետեւում
Համակարգչային կոնֆիգուրացիա > Քաղաքականություն > Windows-ի կարգավորումներ > Անվտանգության կարգավորումներ > Ընդլայնված աուդիտի քաղաքականության կազմաձեւում > աուդիտի քաղաքականություն > մանրամասն հետեւում > աուդիտի գործընթացի ստեղծում
Համակարգչային կոնֆիգուրացիա > Քաղաքականություն > Վարչական կաղապարներ > Համակարգ > Աուդիտի գործընթացի ստեղծում > Ներառել հրամանի տողը գործընթացի ստեղծման իրադարձություններում
Միացնելուց հետո InTrust-ի կանոնները թույլ են տալիս հայտնաբերել նախկինում անհայտ սպառնալիքներ, որոնք դրսևորում են կասկածելի վարքագիծ: Օրինակ, դուք կարող եք բացահայտել
Իր գործողությունների շղթայում Dridex-ն օգտագործում է schtasks.exe՝ պլանավորված առաջադրանք ստեղծելու համար: Հրամանի տողից այս հատուկ կոմունալից օգտվելը համարվում է շատ կասկածելի վարք, svchost.exe-ի գործարկումը պարամետրերով, որոնք մատնանշում են օգտվողի թղթապանակները կամ «net view» կամ «whoami» հրամաններին նման պարամետրերով, կարծես նման են: Ահա համապատասխան հատվածը
detection:
selection1:
CommandLine: '*svchost.exe C:Users\*Desktop\*'
selection2:
ParentImage: '*svchost.exe*'
CommandLine:
- '*whoami.exe /all'
- '*net.exe view'
condition: 1 of them
InTrust-ում բոլոր կասկածելի վարքագիծը ներառված է մեկ կանոնում, քանի որ այդ գործողությունների մեծ մասը հատուկ չեն որևէ սպառնալիքի, այլ ավելի շուտ կասկածելի են բարդության մեջ և 99% դեպքերում օգտագործվում են ոչ ամբողջովին ազնիվ նպատակներով: Գործողությունների այս ցանկը ներառում է, բայց չի սահմանափակվում հետևյալով.
- Գործընթացներ, որոնք աշխատում են անսովոր վայրերից, ինչպիսիք են օգտվողի ժամանակավոր թղթապանակները:
- Հայտնի համակարգային գործընթաց՝ կասկածելի ժառանգությամբ. որոշ սպառնալիքներ կարող են փորձել օգտագործել համակարգի գործընթացների անվանումը՝ չբացահայտված մնալու համար:
- Վարչական գործիքների կասկածելի կատարումներ, ինչպիսիք են cmd-ը կամ PsExec-ը, երբ դրանք օգտագործում են տեղական համակարգի հավատարմագրերը կամ կասկածելի ժառանգությունը:
- Կասկածելի ստվերային պատճենման գործողությունները փրկագնի վիրուսների տարածված վարքագիծն են՝ նախքան համակարգը կոդավորելը, դրանք ոչնչացնում են կրկնօրինակները.
— vssadmin.exe-ի միջոցով;
- WMI-ի միջոցով: - Գրանցեք ամբողջ ռեեստրի փեթակների աղբավայրերը:
- Վնասակար կոդի հորիզոնական շարժում, երբ գործընթացը հեռակա կարգով գործարկվում է՝ օգտագործելով հրամաններ, ինչպիսիք են at.exe-ը:
- Կասկածելի տեղական խմբային գործողություններ և տիրույթի գործողություններ՝ օգտագործելով net.exe:
- Կասկածելի firewall-ի գործունեությունը netsh.exe-ի միջոցով:
- ACL-ի կասկածելի մանիպուլյացիա.
- BITS-ի օգտագործումը տվյալների արտազատման համար:
- Կասկածելի մանիպուլյացիաներ WMI-ով.
- Սցենարների կասկածելի հրամաններ.
- Անվտանգ համակարգի ֆայլերը թափելու փորձեր:
Համակցված կանոնը շատ լավ է աշխատում՝ հայտնաբերելու այնպիսի սպառնալիքներ, ինչպիսիք են RUYK, LockerGoga և այլ փրկագին, չարամիտ և կիբերհանցագործության գործիքներ: Կանոնը փորձարկվել է վաճառողի կողմից արտադրական միջավայրերում՝ նվազագույնի հասցնելու կեղծ դրական տվյալները: Եվ SIGMA նախագծի շնորհիվ այս ցուցանիշների մեծ մասն առաջացնում է նվազագույն թվով աղմուկի իրադարձություններ:
Որովհետեւ InTrust-ում սա մոնիտորինգի կանոն է, դուք կարող եք կատարել պատասխան սցենար՝ որպես սպառնալիքի արձագանք: Դուք կարող եք օգտագործել ներկառուցված սկրիպտներից մեկը կամ ստեղծել ձեր սեփականը, և InTrust-ը այն ավտոմատ կերպով կտարածի:
Բացի այդ, դուք կարող եք ստուգել իրադարձությունների հետ կապված բոլոր հեռաչափությունը՝ PowerShell-ի սկրիպտները, գործընթացի կատարումը, պլանավորված առաջադրանքների մանիպուլյացիաները, WMI-ի վարչական գործունեությունը և օգտագործել դրանք հետմահուների համար անվտանգության միջադեպերի ժամանակ:
InTrust-ն ունի հարյուրավոր այլ կանոններ, որոնցից մի քանիսը.
- PowerShell-ի իջեցման գրոհի հայտնաբերումն այն է, երբ ինչ-որ մեկը միտումնավոր օգտագործում է PowerShell-ի հին տարբերակը, քանի որ... հին տարբերակում չկար կատարվողը ստուգելու միջոց։
- Մուտքի բարձր արտոնությունների հայտնաբերումն այն է, երբ հաշիվները, որոնք որոշակի արտոնյալ խմբի անդամներ են (օրինակ՝ տիրույթի ադմինիստրատորները) պատահաբար կամ անվտանգության հետ կապված միջադեպերի պատճառով մուտք են գործում աշխատատեղեր:
InTrust-ը թույլ է տալիս օգտագործել անվտանգության լավագույն փորձը՝ նախապես սահմանված հայտնաբերման և արձագանքման կանոնների տեսքով: Եվ եթե կարծում եք, որ ինչ-որ բան պետք է այլ կերպ աշխատի, կարող եք ստեղծել կանոնի ձեր սեփական պատճենը և անհրաժեշտության դեպքում կարգավորել այն: Դուք կարող եք հայտ ներկայացնել փորձնական փորձարկում անցկացնելու կամ ժամանակավոր լիցենզիաներով բաշխման փաթեթներ ձեռք բերելու միջոցով
Բաժանորդագրվեք մեր
Կարդացեք տեղեկատվական անվտանգության վերաբերյալ մեր մյուս հոդվածները.
Source: www.habr.com