Թաքնված գաղտնաբառի կոտրում Smbexec-ով

Թաքնված գաղտնաբառի կոտրում Smbexec-ով

Մենք պարբերաբար գրում ենք այն մասին, թե ինչպես են հաքերները հաճախ ապավինում շահագործմանը հաքերային մեթոդներ առանց վնասակար կոդիհայտնաբերելուց խուսափելու համար: Նրանք բառացիորեն են «գոյատևել արոտավայրում», օգտագործելով Windows-ի ստանդարտ գործիքները, դրանով իսկ շրջանցելով հակավիրուսային և այլ կոմունալ ծառայություններ՝ վնասակար գործողությունները հայտնաբերելու համար: Մենք, որպես պաշտպաններ, այժմ ստիպված ենք զբաղվել նման խելացի հաքերային տեխնիկայի դժբախտ հետևանքների հետ. լավ դիրքավորված աշխատակիցը կարող է նույն մոտեցումը կիրառել գաղտնի կերպով գողանալու տվյալները (ընկերության մտավոր սեփականություն, վարկային քարտերի համարներ): Եվ եթե նա չշտապի, այլ աշխատի դանդաղ ու հանգիստ, դա չափազանց դժվար կլինի, բայց դեռ հնարավոր է, եթե նա օգտագործի ճիշտ մոտեցում և համապատասխան. գործիքները, — բացահայտել նման գործունեությունը:

Մյուս կողմից, ես չէի ցանկանա սատանայացնել աշխատակիցներին, քանի որ ոչ ոք չի ցանկանում աշխատել բիզնես միջավայրում հենց Օրուելի 1984թ. Բարեբախտաբար, կան մի շարք գործնական քայլեր և կյանքի հաքեր, որոնք կարող են շատ ավելի դժվարացնել կյանքը ինսայդերների համար: Մենք կքննարկենք գաղտնի հարձակման մեթոդներ, որն օգտագործվում է հաքերների կողմից որոշ տեխնիկական նախապատմություն ունեցող աշխատակիցների կողմից: Եվ մի փոքր ավելի ուշ կքննարկենք նման ռիսկերի նվազեցման տարբերակներ՝ կուսումնասիրենք և՛ տեխնիկական, և՛ կազմակերպչական տարբերակները։

Ի՞նչն է սխալ PsExec-ի հետ:

Էդվարդ Սնոուդենը, ճիշտ կամ սխալ, դարձել է ներքին տվյալների գողության հոմանիշը: Ի դեպ, մի մոռացեք դիտել այս նշումը այլ ինսայդերների մասին, ովքեր նույնպես արժանի են որոշակի փառքի կարգավիճակի: Սնոուդենի կիրառած մեթոդների վերաբերյալ կարևոր մի կետ, որը արժե շեշտադրել, այն է, որ մեր գիտելիքներով նա չի տեղադրվել ոչ մի արտաքին վնասակար ծրագիր:

Փոխարենը, Սնոուդենը օգտագործեց մի փոքր սոցիալական ճարտարագիտություն և օգտագործեց իր դիրքը որպես համակարգի ադմինիստրատոր՝ գաղտնաբառեր հավաքելու և հավատարմագրեր ստեղծելու համար: Ոչինչ բարդ - ոչ մի միմիկաց, հարձակումներ տղամարդկանց մեջ կամ metasploit.

Կազմակերպության աշխատակիցները միշտ չէ, որ գտնվում են Սնոուդենի եզակի դիրքում, սակայն կան մի շարք դասեր, որոնք պետք է քաղել «արածեցման միջոցով գոյատևել» հասկացությունից, որոնց մասին պետք է տեղյակ լինել. զգույշ լինել հավատարմագրերի օգտագործման հետ: Հիշեք այս միտքը.

Psexec և նրա զարմիկը crackmapexec տպավորել են անթիվ գրպանների, հաքերների և կիբերանվտանգության բլոգերների վրա: Եվ երբ զուգակցվում է mimikatz-ի հետ, psexec-ը հարձակվողներին թույլ է տալիս շարժվել ցանցի ներսում՝ առանց հստակ տեքստի գաղտնաբառը իմանալու անհրաժեշտության:

Mimikatz-ը ընդհատում է NTLM հեշը LSASS գործընթացից և այնուհետև փոխանցում է նշանը կամ հավատարմագրերը, այսպես կոչված: «անցնել հաշը» հարձակումը – psexec-ում, որը հարձակվողին թույլ է տալիս մուտք գործել այլ սերվեր որպես այլ օգտագործող. Եվ յուրաքանչյուր հաջորդ տեղափոխությամբ նոր սերվեր, հարձակվողը հավաքում է լրացուցիչ հավատարմագրեր՝ ընդլայնելով հասանելի բովանդակության որոնման իր հնարավորությունների շրջանակը:

Երբ ես առաջին անգամ սկսեցի աշխատել psexec-ի հետ, դա ինձ կախարդական թվաց. շնորհակալություն Մարկ Ռուսինովիչ, psexec-ի փայլուն մշակողը, բայց ես գիտեմ նաև նրա մասին աղմկոտ բաղադրիչները. Նա երբեք գաղտնի չէ:

Առաջին հետաքրքիր փաստը psexec-ի մասին այն է, որ այն օգտագործում է չափազանց բարդ SMB ցանցի ֆայլի արձանագրություն Microsoft-ից։ Օգտագործելով SMB, psexec փոխանցումները փոքր են երկուական ֆայլերը թիրախային համակարգում, տեղադրելով դրանք C:Windows թղթապանակում:

Այնուհետև, psexec-ը ստեղծում է Windows ծառայություն՝ օգտագործելով պատճենված երկուականը և գործարկում այն ​​չափազանց «անսպասելի» PSEXECSVC անունով: Միևնույն ժամանակ, դուք կարող եք իրականում տեսնել այս ամենը, ինչպես ես, դիտելով հեռավոր մեքենա (տես ստորև):

Թաքնված գաղտնաբառի կոտրում Smbexec-ով

Psexec-ի այցեքարտը՝ «PSEXECSVC» ծառայություն։ Այն գործարկում է երկուական ֆայլ, որը տեղադրվել է SMB-ի միջոցով C:Windows թղթապանակում:

Որպես վերջին քայլ, բացվում է պատճենված երկուական ֆայլը RPC միացում դեպի թիրախային սերվեր և այնուհետև ընդունում է վերահսկման հրամանները (Windows cmd վահանակի միջոցով լռելյայն), գործարկելով դրանք և վերահղելով մուտքն ու ելքը դեպի հարձակվողի տնային մեքենա: Այս դեպքում հարձակվողը տեսնում է հիմնական հրամանի տողը, նույնը, եթե նա ուղղակիորեն միացված լինի:

Շատ բաղադրիչներ և շատ աղմկոտ գործընթաց:

Psexec-ի բարդ ներքին կառուցվածքը բացատրում է այն հաղորդագրությունը, որն ինձ տարակուսեց մի քանի տարի առաջ իմ առաջին թեստերի ժամանակ.

Թաքնված գաղտնաբառի կոտրում Smbexec-ով

Impacket-ի Psexec-ը իրականում ցույց է տալիս, թե ինչ է կատարվում գլխարկի տակ:

Զարմանալի չէ. psexec-ը հսկայական աշխատանք կատարեց գլխարկի տակ: Եթե ​​դուք հետաքրքրված եք ավելի մանրամասն բացատրությամբ, ստուգեք այստեղ սա է հրաշալի նկարագրություն.

Ակնհայտորեն, երբ օգտագործվում էր որպես համակարգի կառավարման գործիք, որը եղել է սկզբնական նպատակը psexec, ոչ մի վատ բան չկա Windows-ի այս բոլոր մեխանիզմների «բզզոցի» մեջ: Հարձակվողի համար, այնուամենայնիվ, psexec-ը բարդություններ կստեղծի, իսկ Սնոուդենի պես զգուշավոր և խորամանկ ինսայդերի համար, psexec-ը կամ նմանատիպ օգտակար ծրագիրը չափազանց մեծ ռիսկ կլինի:

Եվ հետո գալիս է Smbexec-ը

SMB-ը սերվերների միջև ֆայլեր փոխանցելու խելացի և գաղտնի միջոց է, և հաքերները դարեր շարունակ ուղղակիորեն ներթափանցում են SMB: Կարծում եմ՝ բոլորն արդեն գիտեն, որ դա չարժե բացել SMB 445 և 139 պորտերը դեպի ինտերնետ, չէ՞:

Defcon 2013-ին Էրիկ Միլմանը (brav0hax) ներկայացվել է smbexec, որպեսզի գրոհայինները կարողանան փորձել գաղտագողի SMB հաքերները: Ես չգիտեմ ամբողջ պատմությունը, բայց հետո Impacket-ը հետագայում զտեց smbexec-ը: Իրականում, իմ փորձարկման համար ես ներբեռնեցի սկրիպտները Impacket-ից Python-ից Github.

Ի տարբերություն psexec-ի, smbexec-ի խուսափում է պոտենցիալ հայտնաբերված երկուական ֆայլի փոխանցում թիրախային մեքենային: Փոխարենը, կոմունալ ընկերությունն ամբողջությամբ ապրում է արոտավայրից մինչև գործարկում տեղական Windows հրամանի տող.

Ահա թե ինչ է այն անում. այն փոխանցում է հրաման հարձակվող մեքենայից SMB-ի միջոցով հատուկ մուտքային ֆայլ, այնուհետև ստեղծում և գործարկում է բարդ հրամանի տող (ինչպես Windows ծառայությունը), որը ծանոթ կթվա Linux-ի օգտատերերին: Մի խոսքով, այն գործարկում է Windows-ի բնիկ cmd կեղևը, ելքը վերահղում է մեկ այլ ֆայլ և այնուհետև այն ուղարկում SMB-ի միջոցով հետ հարձակվողի մեքենա:

Սա հասկանալու լավագույն միջոցը հրամանի տողին նայելն է, որը ես կարողացա ձեռք բերել իրադարձությունների մատյանից (տես ստորև):

Թաքնված գաղտնաբառի կոտրում Smbexec-ով

Արդյո՞ք սա I/O վերահղման լավագույն միջոցը չէ: Ի դեպ, ծառայության ստեղծումն ունի իրադարձության ID 7045։

Ինչպես psexec-ը, այն նաև ստեղծում է ծառայություն, որն անում է ամբողջ աշխատանքը, բայց ծառայությունը դրանից հետո ջնջված է – այն օգտագործվում է միայն մեկ անգամ հրամանը գործարկելու համար, այնուհետև անհետանում է: Տեղեկատվական անվտանգության աշխատակիցը, որը վերահսկում է զոհի մեքենան, չի կարողանա հայտնաբերել ակնհայտ Հարձակման ցուցիչներ. Չկա վնասակար ֆայլ, որը չի գործարկվում, մշտական ​​ծառայություն չի տեղադրվում, և RPC-ի օգտագործման ապացույց չկա, քանի որ SMB-ը տվյալների փոխանցման միակ միջոցն է: Փայլուն!

Հարձակվողի կողմից «կեղծ կեղևը» հասանելի է հրաման ուղարկելու և պատասխան ստանալու միջև ուշացումներով: Բայց սա միանգամայն բավական է, որպեսզի հարձակվողը` կա՛մ ինսայդեր, կա՛մ արտաքին հաքեր, որն արդեն ունի հենակետ, սկսի փնտրել հետաքրքիր բովանդակություն:

Թաքնված գաղտնաբառի կոտրում Smbexec-ով

Տվյալները թիրախային մեքենայից դեպի հարձակվողի մեքենա վերադարձնելու համար այն օգտագործվում է smbclient. Այո, դա նույն Սամբան է կոմունալ, բայց միայն Impacket-ի կողմից փոխարկվել է Python սցենարի: Փաստորեն, smbclient-ը թույլ է տալիս գաղտնի կերպով հյուրընկալել FTP փոխանցումները SMB-ի վրա:

Եկեք մի քայլ հետ գնանք և մտածենք, թե սա ինչ կարող է անել աշխատողի համար: Իմ մտացածին սցենարով, ասենք, բլոգերին, ֆինանսական վերլուծաբանին կամ բարձր վարձատրվող անվտանգության խորհրդատուին թույլատրվում է օգտագործել անձնական նոութբուք աշխատանքի համար։ Ինչ-որ կախարդական գործընթացի արդյունքում նա վիրավորվում է ընկերությունից և «ամեն ինչ վատանում է»: Կախված նոութբուքի օպերացիոն համակարգից, այն կամ օգտագործում է Python տարբերակը Impact-ից, կամ Windows տարբերակը smbexec կամ smbclient որպես .exe ֆայլ:

Ինչպես Սնոուդենը, նա պարզում է մեկ այլ օգտատիրոջ գաղտնաբառը կամ նրա ուսի վրայով նայելով, կամ էլ նրա բախտը կբերի և պատահաբար հայտնվում է գաղտնաբառով տեքստային ֆայլի վրա: Եվ այս հավատարմագրերի օգնությամբ նա սկսում է փորել համակարգը արտոնությունների նոր մակարդակով:

DCC հաքեր. Մեզ «հիմար» Միմիկացի պետք չէ

Pentesting-ի մասին իմ նախորդ գրառումներում շատ հաճախ էի օգտագործում միմիկաց: Սա հիանալի գործիք է հավատարմագրերը գաղտնալսելու համար՝ NTLM հեշեր և նույնիսկ հստակ տեքստային գաղտնաբառեր, որոնք թաքնված են նոութբուքերի ներսում, որոնք պարզապես սպասում են օգտագործմանը:
Ժամանակները փոխվել են. Մոնիտորինգի գործիքներն ավելի լավ են դարձել միմիկացը հայտնաբերելու և արգելափակելու հարցում: Տեղեկատվական անվտանգության ադմինիստրատորները նաև այժմ ունեն ավելի շատ տարբերակներ՝ նվազեցնելու հեշ (PtH) հարձակումների հետ կապված ռիսկերը:
Այսպիսով, ի՞նչ պետք է անի խելացի աշխատակիցը լրացուցիչ հավատարմագրեր հավաքելու համար՝ առանց mimikatz-ի օգտագործման:

Impacket-ի հանդերձանքը ներառում է մի օգտակար ծրագիր, որը կոչվում է գաղտնիքները, որը առբերում է հավատարմագրերը Domain Credential Cache-ից կամ կարճ DCC-ից: Իմ հասկացողությունն այն է, որ եթե տիրույթի օգտագործողը մուտք է գործում սերվեր, բայց դոմենի վերահսկիչն անհասանելի է, DCC-ն թույլ է տալիս սերվերին նույնականացնել օգտատիրոջը: Ինչևէ, secretsdump-ը թույլ է տալիս թափել այս բոլոր հեշերը, եթե դրանք առկա են:

DCC հեշերն են ոչ NTML հեշեր եւ իրենց չի կարող օգտագործվել PtH հարձակման համար.

Դե, դուք կարող եք փորձել կոտրել դրանք՝ սկզբնական գաղտնաբառը ստանալու համար: Այնուամենայնիվ, Microsoft-ը դարձել է ավելի խելացի DCC-ի հետ, իսկ DCC հեշերը դարձել են չափազանց դժվար է կոտրել: Այո, ունեմ հեշքաթ, «աշխարհի ամենաարագ գաղտնաբառի գուշակողը», սակայն դրա արդյունավետ գործարկման համար անհրաժեշտ է GPU:

Փոխարենը, եկեք փորձենք մտածել Սնոուդենի նման։ Աշխատակիցը կարող է դեմ առ դեմ սոցիալական ճարտարագիտություն իրականացնել և, հնարավոր է, որոշ տեղեկություններ իմանալ այն անձի մասին, ում գաղտնաբառը նա ցանկանում է կոտրել: Օրինակ, պարզեք, թե արդյոք անձի առցանց հաշիվը երբևէ կոտրվել է, և ստուգեք նրա հստակ տեքստային գաղտնաբառը որևէ հուշում գտնելու համար:

Եվ սա այն սցենարն է, որով ես որոշեցի գնալ։ Ենթադրենք, որ ինսայդերն իմացել է, որ իր ղեկավարը՝ Կրուելլան, մի քանի անգամ կոտրվել է տարբեր վեբ ռեսուրսներում։ Այս գաղտնաբառերից մի քանիսը վերլուծելուց հետո նա հասկանում է, որ Կրուելլան նախընտրում է օգտագործել բեյսբոլի թիմի անվանման ձևաչափը՝ «Yankees», որին հաջորդում է ընթացիկ տարին՝ «Yankees2015»:

Եթե ​​դուք հիմա փորձում եք վերարտադրել սա տանը, ապա կարող եք ներբեռնել փոքրիկ «C» կոդը, որն իրականացնում է DCC հեշավորման ալգորիթմը և կազմում այն։ Ջոն ատրճանակը, ի դեպ, ավելացրել է DCC-ի աջակցությունը, ուստի այն կարող է օգտագործվել նաև։ Ենթադրենք, որ ինսայդերը չի ցանկանում անհանգստացնել Ջոն Ռիպերին սովորելուն և սիրում է «gcc» գործարկել ժառանգական C կոդի վրա:

Ձևացնելով ինսայդերի դերը՝ ես փորձեցի մի քանի տարբեր համակցություններ և ի վերջո կարողացա բացահայտել, որ Կրուելայի գաղտնաբառը «Yankees2019» էր (տես ստորև): Առաքելությունն ավարտված է:

Թաքնված գաղտնաբառի կոտրում Smbexec-ով

Մի փոքր սոցիալական ճարտարագիտություն, գուշակություն և մի պտղունց Maltego, և դուք լավ ճանապարհին եք կոտրելու DCC հեշը:

Առաջարկում եմ վերջացնել այստեղ։ Մենք կվերադառնանք այս թեմային այլ գրառումներում և կանդրադառնանք հարձակման ավելի դանդաղ և գաղտնի մեթոդներին՝ շարունակելով հիմնվել Impacket-ի հիանալի կոմունալ ծառայությունների վրա:

Source: www.habr.com

Добавить комментарий