Az - Arc vulnerable GPO Deploy Script
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Azure Arc inaruhusu kuunganishwa kwa seva mpya za ndani (seva zilizounganishwa kwenye kikoa) ndani ya Azure Arc kwa kutumia njia ya Group Policy Object. Ili kuwezesha hili, Microsoft inatoa zana za kutekeleza zinazohitajika kwa ajili ya kuanzisha mchakato wa kuingiza. Ndani ya faili ya ArcEnableServerGroupPolicy.zip, skripti zifuatazo zinaweza kupatikana: DeployGPO.ps1, EnableAzureArc.ps1, na AzureArcDeployment.psm1.
Wakati inatekelezwa, skripti ya DeployGPO.ps1 inafanya hatua zifuatazo:
Inaunda Azure Arc Servers Onboarding GPO ndani ya kikoa cha ndani.
Inakopya skripti ya kuingiza ya EnableAzureArc.ps1 kwenye sehemu ya mtandao iliyotengwa iliyoundwa kwa ajili ya mchakato wa kuingiza, ambayo pia ina pakiti ya installer ya Windows.
Wakati wa kuendesha skripti hii, wasimamizi wa mfumo wanahitaji kutoa vigezo viwili vikuu: ServicePrincipalId na ServicePrincipalClientSecret. Aidha, inahitaji vigezo vingine kama vile kikoa, FQDN ya seva inayohifadhi sehemu, na jina la sehemu. Maelezo zaidi kama vile kitambulisho cha mpangaji, kundi la rasilimali, na taarifa nyingine muhimu lazima pia zitolewe kwa skripti.
Siri iliyosimbwa inaundwa katika saraka ya AzureArcDeploy kwenye sehemu iliyotajwa kwa kutumia usimbaji wa DPAPI-NG. Siri iliyosimbwa inahifadhiwa katika faili inayoitwa encryptedServicePrincipalSecret. Ushahidi wa hili unaweza kupatikana katika skripti ya DeployGPO.ps1, ambapo usimbaji unafanywa kwa kuita ProtectBase64 na $descriptor na $ServicePrincipalSecret kama ingizo. Maelezo ya descriptor yanajumuisha SID za Kundi la Kompyuta za Kikoa na Kiongozi wa Kikoa, kuhakikisha kwamba ServicePrincipalSecret inaweza kusimbwa tu na Kundi la Usalama la Viongozi wa Kikoa na Kompyuta za Kikoa, kama ilivyotajwa katika maelezo ya skripti.
Tuna masharti yafuatayo:
Tumefanikiwa kuingia kwenye mtandao wa ndani.
Tuna uwezo wa kuunda au kudhibiti akaunti ya kompyuta ndani ya Active Directory.
Tumegundua sehemu ya mtandao inayoshikilia saraka ya AzureArcDeploy.
Kuna njia kadhaa za kupata akaunti ya mashine ndani ya mazingira ya AD. Moja ya njia maarufu ni kutumia quota ya akaunti ya mashine. Njia nyingine inahusisha kuathiri akaunti ya mashine kupitia ACLs dhaifu au mipangilio mingine mbalimbali isiyo sahihi.
Mara tu akaunti ya mashine imepatikana, inawezekana kuthibitisha kwa kutumia akaunti hii. Tunaweza ama kutumia amri ya runas.exe na bendera ya netonly au kutumia pass-the-ticket na Rubeus.exe.
Kwa kuwa na TGT ya akaunti yetu ya kompyuta iliyohifadhiwa kwenye kumbukumbu, tunaweza kutumia skripti ifuatayo kufungua siri ya huduma ya msingi.
Mbali na hayo, tunaweza kutumia SecretManagement.DpapiNG.
Katika hatua hii, tunaweza kukusanya taarifa zilizobaki zinazohitajika kuungana na Azure kutoka kwa faili ya ArcInfo.json, ambayo imehifadhiwa kwenye sehemu ile ile ya mtandao kama faili ya encryptedServicePrincipalSecret. Faili hii ina maelezo kama: TenantId, servicePrincipalClientId, ResourceGroup, na mengineyo. Kwa kutumia taarifa hizi, tunaweza kutumia Azure CLI kuthibitisha kama service principal iliyovunjwa.
Jifunze & fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Jifunze & fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)