Az - Taarifa za Msingi
Reading time: 22 minutes
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
Muundo wa Shirika
Makundi ya Usimamizi
- Inaweza kuwa na makundi mengine ya usimamizi au usajili.
- Hii inaruhusu kutekeleza udhibiti wa utawala kama vile RBAC na Sera za Azure mara moja kwenye kiwango cha kundi la usimamizi na kuwa na urithi na usajili wote ndani ya kundi.
- Makundi 10,000 ya usimamizi yanaweza kuungwa mkono katika directory moja.
- Mti wa kundi la usimamizi unaweza kuunga mkono hadi viwango sita vya kina. Kiwango hiki hakijumuishi kiwango cha mzizi au kiwango cha usajili.
- Kila kundi la usimamizi na usajili linaweza kuunga mkono mzazi mmoja tu.
- Hata kama makundi kadhaa ya usimamizi yanaweza kuundwa kuna kundi moja tu la usimamizi la mzizi.
- Kundi la usimamizi la mzizi linashikilia makundi yote mengine ya usimamizi na usajili na halitaweza kuhamishwa au kufutwa.
- Usajili wote ndani ya kundi moja la usimamizi lazima uamini tenant moja ya Entra ID.
.png)
https://td-mainsite-cdn.tutorialsdojo.com/wp-content/uploads/2023/02/managementgroups-768x474.png
Usajili wa Azure
- Ni kikasha kingine cha mantiki ambacho rasilimali (VMs, DBs…) zinaweza kuendeshwa na zitalipiwa.
- Mzazi wake daima ni kundi la usimamizi (na inaweza kuwa kundi la usimamizi la mzizi) kwani usajili hauwezi kuwa na usajili mwingine.
- Ina aminika tu na directory moja ya Entra ID
- Ruhusa zilizotumika kwenye kiwango cha usajili (au yoyote ya wazazi wake) zina urithi kwa rasilimali zote ndani ya usajili
Makundi ya Rasilimali
Kutoka kwenye hati: Kundi la rasilimali ni kikasha kinachoshikilia rasilimali zinazohusiana kwa suluhisho la Azure. Kundi la rasilimali linaweza kujumuisha rasilimali zote za suluhisho, au zile tu rasilimali ambazo unataka kusimamia kama kundi. Kwa ujumla, ongeza rasilimali zinazoshiriki mzunguko sawa kwenye kundi moja la rasilimali ili uweze kupeleka, kusasisha, na kufuta kwa urahisi kama kundi.
Rasilimali zote **lazima ziwe ndani ya kundi la rasilimali na zinaweza kumilikiwa tu na kundi moja na ikiwa kundi la rasilimali litafutwa, rasilimali zote ndani yake pia zitafutwa.

https://i0.wp.com/azuredays.com/wp-content/uploads/2020/05/org.png?resize=748%2C601&ssl=1
Vitambulisho vya Rasilimali za Azure
Kila rasilimali katika Azure ina Vitambulisho vya Rasilimali za Azure vinavyoiweka.
Muundo wa Vitambulisho vya Rasilimali za Azure ni kama ifuatavyo:
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
Kwa mashine ya virtual inayoitwa myVM katika kundi la rasilimali myResourceGroup
chini ya ID ya usajili 12345678-1234-1234-1234-123456789012
, Vitambulisho vya Rasilimali za Azure vinaonekana kama ifuatavyo:
/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM
Azure vs Entra ID vs Huduma za Kikoa za Azure AD
Azure
Azure ni jukwaa la kumbukumbu la kompyuta la Microsoft, linalotoa huduma mbalimbali, ikiwa ni pamoja na mashine za virtual, hifadhidata, akili bandia, na uhifadhi. Inafanya kazi kama msingi wa kuendesha na kusimamia programu, kujenga miundombinu inayoweza kupanuka, na kuendesha kazi za kisasa katika wingu. Azure inatoa zana kwa waendelezaji na wataalamu wa IT kuunda, kupeleka, na kusimamia programu na huduma kwa urahisi, ikihudumia mahitaji mbalimbali kutoka kwa biashara za kuanzishwa hadi makampuni makubwa.
Entra ID (zamani Azure Active Directory)
Entra ID ni huduma ya usimamizi wa utambulisho na ufikiaji inayotegemea wingu iliyoundwa kushughulikia uthibitishaji, idhini, na udhibiti wa ufikiaji wa mtumiaji. Inatoa ufikiaji salama kwa huduma za Microsoft kama vile Office 365, Azure, na programu nyingi za SaaS za wahusika wengine. Ikiwa na vipengele kama vile uthibitishaji wa moja kwa moja (SSO), uthibitishaji wa hatua nyingi (MFA), na sera za ufikiaji wa masharti miongoni mwa zingine.
Huduma za Kikoa za Entra (zamani Azure AD DS)
Huduma za Kikoa za Entra zinaongeza uwezo wa Entra ID kwa kutoa huduma za kikoa zinazoweza kusimamiwa zinazofaa na mazingira ya jadi ya Windows Active Directory. Inasaidia protokali za zamani kama LDAP, Kerberos, na NTLM, ikiruhusu mashirika kuhamasisha au kuendesha programu za zamani katika wingu bila kupeleka wakala wa kikoa wa ndani. Huduma hii pia inasaidia Sera za Kundi kwa usimamizi wa kati, na kuifanya iweze kutumika katika hali ambapo kazi za zamani au zinazotegemea AD zinahitaji kuwepo pamoja na mazingira ya kisasa ya wingu.
Misingi ya Entra ID
Watumiaji
- Watumiaji wapya
- Onyesha jina la barua pepe na kikoa kutoka kwa tenant iliyochaguliwa
- Onyesha jina la kuonyesha
- Onyesha nenosiri
- Onyesha mali (jina la kwanza, cheo cha kazi, taarifa za mawasiliano…)
- Aina ya mtumiaji wa kawaida ni “mwanachama”
- Watumiaji wa nje
- Onyesha barua pepe ili kuwalika na jina la kuonyesha (inaweza kuwa barua pepe isiyo ya Microsoft)
- Onyesha mali
- Aina ya mtumiaji wa kawaida ni “Mgeni”
Ruhusa za Kawaida za Wanachama na Wageni
Unaweza kuangalia katika https://learn.microsoft.com/en-us/entra/fundamentals/users-default-permissions lakini kati ya vitendo vingine mwanachama ataweza:
- Kusoma watumiaji wote, Makundi, Programu, Vifaa, Majukumu, Usajili, na mali zao za umma
- Kualika Wageni (inaweza kuzuiwa)
- Kuunda Makundi ya Usalama
- Kusoma uanachama wa Kundi usiofichwa
- Kuongeza wageni kwenye makundi yaliyomilikiwa
- Kuunda programu mpya (inaweza kuzuiwa)
- Kuongeza vifaa hadi 50 kwenye Azure (inaweza kuzuiwa)
note
Kumbuka kwamba ili kuhesabu rasilimali za Azure mtumiaji anahitaji kibali maalum cha ruhusa.
Ruhusa za Kawaida za Watumiaji Zinazoweza Kubadilishwa
- Wanachama (hati)
- Jisajili Programu: Kawaida Ndio
- Zuiya watumiaji wasio wasimamizi kuunda tenants: Kawaida Hapana
- Kuunda makundi ya usalama: Kawaida Ndio
- Zuiya ufikiaji wa lango la usimamizi la Microsoft Entra: Kawaida Hapana
- Hii haisimamii ufikiaji wa API kwa lango (tu wavuti)
- Ruhusu watumiaji kuunganisha akaunti za kazi au shule na LinkedIn: Kawaida Ndio
- Onyesha kuweka mtumiaji alisainiwa: Kawaida Ndio
- Zuiya watumiaji kutoka kupona funguo za BitLocker kwa vifaa walivyomiliki: Kawaida Hapana (angalia kwenye Mipangilio ya Kifaa)
- Kusoma watumiaji wengine: Kawaida Ndio (kupitia Microsoft Graph)
- Wageni
- Vikomo vya ufikiaji wa mtumiaji mgeni chaguzi:
- Wageni wana ufikiaji sawa na wanachama.
- Wageni wana ufikiaji mdogo kwa mali na uanachama wa vitu vya directory (kawaida). Hii inazuia ufikiaji wa wageni kwa wasifu wao wenyewe wa mtumiaji kwa kawaida. Ufikiaji wa watumiaji wengine na taarifa za kundi haukubaliwi tena.
- Ufikiaji wa mtumiaji mgeni unazuiwa kwa mali na uanachama wa vitu vya directory vyao wenyewe ni wa kikomo zaidi.
- Wageni wanaweza kuwalika chaguzi:
- Mtu yeyote katika shirika anaweza kuwalika watumiaji wageni ikiwa ni pamoja na wageni na wasimamizi wasio (inayoeleweka zaidi) - Kawaida
- Watumiaji wanachama na watumiaji waliotolewa majukumu maalum ya usimamizi wanaweza kuwalika watumiaji wageni ikiwa ni pamoja na wageni wenye ruhusa za mwanachama
- Ni watumiaji pekee waliotolewa majukumu maalum ya usimamizi wanaweza kuwalika watumiaji wageni
- Hakuna mtu katika shirika anaweza kuwalika watumiaji wageni ikiwa ni pamoja na wasimamizi (inayoeleweka zaidi)
- Mtumiaji wa nje aondoke: Kawaida Kweli
- Ruhusu watumiaji wa nje kuondoka katika shirika
tip
Hata kama zimezuiwa kwa kawaida, watumiaji (wanachama na wageni) wenye ruhusa zilizotolewa wanaweza kufanya vitendo vya awali.
Makundi
Kuna aina 2 za makundi:
- Usalama: Aina hii ya kundi inatumika kuwapa wanachama ufikiaji wa programu, rasilimali na kupeana leseni. Watumiaji, vifaa, wakala wa huduma na makundi mengine wanaweza kuwa wanachama.
- Microsoft 365: Aina hii ya kundi inatumika kwa ushirikiano, ikiwapa wanachama ufikiaji wa sanduku la barua lililotolewa, kalenda, faili, tovuti ya SharePoint, na kadhalika. Wanachama wa kundi wanaweza kuwa watumiaji pekee.
- Hii itakuwa na anwani ya barua pepe yenye kikoa cha tenant ya EntraID.
Kuna aina 2 za uanachama:
- Iliyotolewa: Ruhusu kuongeza wanachama maalum kwa mkono kwenye kundi.
- Uanachama wa Kijadi: Inasimamia kiotomatiki uanachama kwa kutumia sheria, ikisasisha ujumuishaji wa kundi wakati sifa za wanachama zinabadilika.
Wakala wa Huduma
Wakala wa Huduma ni utambulisho ulioanzishwa kwa matumizi na programu, huduma zinazohudumiwa, na zana za kiotomatiki kufikia rasilimali za Azure. Ufikiaji huu ni wa kikomo na majukumu yaliyotolewa kwa wakala wa huduma, na kukupa udhibiti juu ya rasilimali zipi zinaweza kufikiwa na kwa kiwango gani. Kwa sababu za usalama, kila wakati inashauriwa kutumia wakala wa huduma na zana za kiotomatiki badala ya kuruhusu kuingia kwa utambulisho wa mtumiaji.
Inawezekana kuingia moja kwa moja kama wakala wa huduma kwa kuunda siri (nenosiri), cheti, au kutoa ufikiaji wa shirikisho kwa majukwaa ya wahusika wengine (kwa mfano, Github Actions) juu yake.
- Ikiwa unachagua uthibitishaji wa nenosiri (kwa kawaida), hifadhi nenosiri lililotolewa kwani huwezi kulifikia tena.
- Ikiwa unachagua uthibitishaji wa cheti, hakikisha programu itakuwa na ufikiaji wa funguo za faragha.
Usajili wa Programu
Usajili wa Programu ni usanidi unaoruhusu programu kuungana na Entra ID na kufanya vitendo.
Vipengele Muhimu:
- Vitambulisho vya Programu (Client ID): Kitambulisho cha kipekee kwa programu yako katika Azure AD.
- URIs za Kurudi: URL ambapo Azure AD inatuma majibu ya uthibitishaji.
- Cheti, Siri & Ruhusa za Shirikisho: Inawezekana kuunda siri au cheti kuingia kama wakala wa huduma wa programu, au kutoa ufikiaji wa shirikisho kwake (kwa mfano, Github Actions).
- Ikiwa cheti au siri imeundwa, mtu anaweza kuingia kama wakala wa huduma kwa kutumia zana za CLI kwa kujua vitambulisho vya programu, siri au cheti na tenant (kikoa au ID).
- Ruhusa za API: Inabainisha rasilimali au API zipi programu inaweza kufikia.
- Mipangilio ya Uthibitishaji: Inabainisha mchakato wa uthibitishaji unaounga mkono wa programu (kwa mfano, OAuth2, OpenID Connect).
- Wakala wa Huduma: Wakala wa huduma huundwa wakati programu inaundwa (ikiwa inafanywa kutoka kwenye konso ya wavuti) au wakati inasakinishwa katika tenant mpya.
- Wakala wa huduma utapata ruhusa zote zilizotolewa alizopangwa nazo.
Ruhusa za Kawaida za Kukubali
Ruhusa za mtumiaji kwa programu
- Usiruhusu ruhusa za mtumiaji
- Msimamizi atahitajika kwa programu zote.
- Ruhusu ruhusa za mtumiaji kwa programu kutoka kwa wachapishaji waliothibitishwa, programu za ndani, na programu zinazohitaji ruhusa zilizochaguliwa tu (Inashauriwa)
- Watumiaji wote wanaweza kukubali programu zinazohitaji ruhusa tu zilizoorodheshwa kama "athari ndogo", programu kutoka kwa wachapishaji waliothibitishwa na programu zilizoorodheshwa katika tenant.
- Kawaida ruhusa za athari ndogo (ingawa unahitaji kukubali kuziweka kama ndogo):
- User.Read - ingia na kusoma wasifu wa mtumiaji
- offline_access - kudumisha ufikiaji wa data ambazo watumiaji wameipa ufikiaji
- openid - ingiza watumiaji
- profile - ona wasifu wa msingi wa mtumiaji
- email - ona anwani ya barua pepe ya mtumiaji
- Ruhusu ruhusa za mtumiaji kwa programu (Kawaida)
- Watumiaji wote wanaweza kukubali programu yoyote kufikia data za shirika.
Maombi ya ruhusa za msimamizi: Kawaida Hapana
- Watumiaji wanaweza kuomba ruhusa za msimamizi kwa programu ambazo hawawezi kukubali
- Ikiwa Ndio: Inawezekana kuashiria Watumiaji, Makundi na Majukumu ambayo yanaweza kukubali maombi
- Sanidi pia ikiwa watumiaji watapokea arifa za barua pepe na ukumbusho wa muda wa mwisho
Utambulisho wa Kusimamiwa (Metadata)
Utambulisho wa kusimamiwa katika Azure Active Directory unatoa suluhisho la kusimamia kiotomatiki utambulisho wa programu. Utambulisho huu unatumika na programu kwa lengo la kuunganisha na rasilimali zinazofaa na uthibitishaji wa Azure Active Directory (Azure AD). Hii inaruhusu kuondoa hitaji la kuweka akiba ya akiba ya wingu katika msimbo kwani programu itakuwa na uwezo wa kuwasiliana na huduma ya metadata ili kupata token halali ya kufanya vitendo kama utambulisho wa kusimamiwa ulioonyeshwa katika Azure.
Kuna aina mbili za utambulisho wa kusimamiwa:
- Iliyotolewa na mfumo. Huduma zingine za Azure zinakuruhusu kuwezesha utambulisho wa kusimamiwa moja kwa moja kwenye mfano wa huduma. Unapowezesha utambulisho wa kusimamiwa wa mfumo, wakala wa huduma huundwa katika tenant ya Entra ID inayotegemewa na usajili ambapo rasilimali iko. Wakati rasilimali inafutwa, Azure kiotomatiki inafuta utambulisho kwa ajili yako.
- Iliyotolewa na mtumiaji. Pia inawezekana kwa watumiaji kuunda utambulisho wa kusimamiwa. Hizi zinaundwa ndani ya kundi la rasilimali ndani ya usajili na wakala wa huduma utaanzishwa katika EntraID inayotegemewa na usajili. Kisha, unaweza kupeana utambulisho wa kusimamiwa kwa mfano mmoja au zaidi ya huduma ya Azure (rasilimali nyingi). Kwa utambulisho wa kusimamiwa wa mtumiaji, utambulisho unasimamiwa tofauti na rasilimali zinazoutumia.
Utambulisho wa Kusimamiwa hauzali akiba ya milele (kama nenosiri au vyeti) kufikia kama wakala wa huduma ulioambatanishwa nayo.
Programu za Kijamii
Ni meza tu katika Azure kuchuja wakala wa huduma na kuangalia programu ambazo zimepewa.
Sio aina nyingine ya "programu", hakuna kitu katika Azure ambacho ni "Programu ya Kijamii", ni tu abstractions ya kuangalia Wakala wa huduma, Usajili wa programu na utambulisho wa kusimamiwa.
Vitengo vya Utawala
Vitengo vya utawala vinaruhusu kutoa ruhusa kutoka kwa jukumu juu ya sehemu maalum ya shirika.
Mfano:
- Hali: Kampuni inataka wasimamizi wa IT wa kikanda wasimamie tu watumiaji katika eneo lao.
- Utekelezaji:
- Unda Vitengo vya Utawala kwa kila eneo (kwa mfano, "North America AU", "Europe AU").
- Jaza AUs na watumiaji kutoka maeneo yao husika.
- AUs zinaweza kuhifadhi watumiaji, makundi, au vifaa
- AUs zinasaidia uanachama wa kijadi
- AUs haziwezi kuwa na AUs
- Peana Majukumu ya Usimamizi:
- Peana jukumu la "Msimamizi wa Watumiaji" kwa wafanyakazi wa IT wa kikanda, lililowekwa kwenye AU ya eneo lao.
- Matokeo: Wasimamizi wa IT wa kikanda wanaweza kusimamia akaunti za watumiaji ndani ya eneo lao bila kuathiri maeneo mengine.
Majukumu na Ruhusa za Entra ID
- Ili kusimamia Entra ID kuna majukumu yaliyojengwa ndani ambayo yanaweza kutolewa kwa wakala wa Entra ID kusimamia Entra ID
- Angalia majukumu katika https://learn.microsoft.com/en-us/entra/identity/role-based-access-control/permissions-reference
- Majukumu yaliyoashiriwa kama
PRIVILEGED
na EntraID yanapaswa kutolewa kwa tahadhari kwa sababu kama Microsoft inavyoeleza katika hati: Uteuzi wa jukumu la kipaumbele unaweza kusababisha kuongezeka kwa kipaumbele ikiwa haujatumiwa kwa njia salama na iliyokusudiwa. - Jukumu lenye kipaumbele zaidi ni Msimamizi wa Kimataifa
- Majukumu yanakusanya ruhusa za kina na yanaweza kupatikana katika maelezo yao.
- Inawezekana kuunda majukumu ya kawaida yenye ruhusa zinazohitajika. Ingawa kwa sababu fulani si ruhusa zote za kina zinapatikana kwa wasimamizi kuunda majukumu ya kawaida.
- Majukumu katika Entra ID ni huru kabisa kutoka kwa majukumu katika Azure. Uhusiano pekee ni kwamba wakala wenye jukumu la Msimamizi wa Kimataifa katika Entra ID wanaweza kuhamasisha jukumu la Msimamizi wa Ufikiaji wa Watumiaji katika Azure.
- Haiwezekani kutumia wildcards katika majukumu ya Entra ID.
Majukumu na Ruhusa za Azure
- Majukumu yanatolewa kwa wakala kwenye kikomo:
wakala -[ANA JUKUMU]->(kikomo)
- Majukumu yaliyotolewa kwa makundi yanarithiwa na wanachama wote wa kundi.
- Kulingana na kikomo ambacho jukumu lilitolewa, jukumu linaweza kurithiwa kwa rasilimali nyingine ndani ya kikomo. Kwa mfano, ikiwa mtumiaji A ana jukumu kwenye usajili, atakuwa na jukumu hilo kwenye makundi yote ya rasilimali ndani ya usajili na kwenye rasilimali zote ndani ya kundi la rasilimali.
Majukumu Yaliyojengwa Ndani
Kutoka kwenye hati: Udhibiti wa ufikiaji wa Azure unaotegemea jukumu (Azure RBAC) una majukumu kadhaa ya Azure yaliyojengwa ndani ambayo unaweza kutoa kwa watumiaji, makundi, wakala wa huduma, na utambulisho wa kusimamiwa. Uteuzi wa jukumu ndio njia unayodhibiti ufikiaji wa rasilimali za Azure. Ikiwa majukumu yaliyojengwa ndani hayakidhi mahitaji maalum ya shirika lako, unaweza kuunda majukumu ya kawaida ya Azure.
Majukumu Yaliyojengwa Ndani yanatumika tu kwa rasilimali ambazo zimekusudiwa, kwa mfano angalia mifano hii 2 ya Majukumu Yaliyojengwa Ndani juu ya rasilimali za Compute:
Disk Backup Reader | Inatoa ruhusa kwa vault ya backup kufanya backup ya diski. | 3e5e47e6-65f7-47ef-90b5-e5dd4d455f24 |
---|---|---|
Virtual Machine User Login | Ona Mashine za Virtual katika lango na ingia kama mtumiaji wa kawaida. | fb879df8-f326-4884-b1cf-06f3ad86be52 |
Majukumu haya yanaweza pia kutolewa juu ya vyombo vya mantiki (kama vile makundi ya usimamizi, usajili na makundi ya rasilimali) na wakala walioathiriwa watakuwa nao juu ya rasilimali ndani ya vyombo hivyo.
- Pata hapa orodha ya majukumu yote ya Azure yaliyojengwa ndani.
- Pata hapa orodha ya majukumu yote ya Entra ID yaliyojengwa ndani.
Majukumu ya Kawaida
- Pia inawezekana kuunda majukumu ya kawaida
- Yanaundwa ndani ya kikomo, ingawa jukumu linaweza kuwa katika viwango kadhaa (makundi ya usimamizi, usajili na makundi ya rasilimali)
- Inawezekana kusanidi ruhusa zote za kina ambazo jukumu la kawaida litakuwa nazo
- Inawezekana kutenga ruhusa
- Wakala mwenye ruhusa iliyotengwa hataweza kuitumia hata kama ruhusa hiyo inatolewa mahali pengine
- Inawezekana kutumia wildcards
- Muundo unaotumika ni JSON
actions
inahusisha ruhusa za operesheni za usimamizi kwenye rasilimali, kama vile kuunda, kusasisha, au kufuta maelezo na mipangilio ya rasilimali.dataActions
ni ruhusa za operesheni za data ndani ya rasilimali, ikiruhusu kusoma, kuandika, au kufuta data halisi iliyomo ndani ya rasilimali.notActions
nanotDataActions
zinatumika kutenga ruhusa maalum kutoka kwa jukumu. Hata hivyo, hazikatazi, ikiwa jukumu tofauti linawapa, wakala atakuwa nao.assignableScopes
ni orodha ya viwango ambavyo jukumu linaweza kutolewa (kama vile makundi ya usimamizi, usajili, au makundi ya rasilimali).
Mfano wa ruhusa JSON kwa jukumu la kawaida:
{
"properties": {
"roleName": "",
"description": "",
"assignableScopes": ["/subscriptions/9291ff6e-6afb-430e-82a4-6f04b2d05c7f"],
"permissions": [
{
"actions": [
"Microsoft.DigitalTwins/register/action",
"Microsoft.DigitalTwins/unregister/action",
"Microsoft.DigitalTwins/operations/read",
"Microsoft.DigitalTwins/digitalTwinsInstances/read",
"Microsoft.DigitalTwins/digitalTwinsInstances/write",
"Microsoft.CostManagement/exports/*"
],
"notActions": [
"Astronomer.Astro/register/action",
"Astronomer.Astro/unregister/action",
"Astronomer.Astro/operations/read",
"Astronomer.Astro/organizations/read"
],
"dataActions": [],
"notDataActions": []
}
]
}
}
Permissions order
- Ili mwanzo kuwa na ufikiaji wa rasilimali, anahitaji jukumu lililo wazi kumwidhinisha (kwa njia yoyote) lililompa ruhusa hiyo.
- Uteuzi wa kukataa wazi unachukua kipaumbele juu ya jukumu linalotoa ruhusa.
.png)
https://link.springer.com/chapter/10.1007/978-1-4842-7325-8_10
Global Administrator
Global Administrator ni jukumu kutoka Entra ID linalotoa udhibiti kamili juu ya mpangilio wa Entra ID. Hata hivyo, halitoi ruhusa yoyote juu ya rasilimali za Azure kwa default.
Watumiaji wenye jukumu la Global Administrator wana uwezo wa 'kuinua' hadi Jukumu la Msimamizi wa Ufikiaji wa Mtumiaji wa Azure katika Kundi la Usimamizi wa Mizizi. Hivyo, Wasimamizi wa Global wanaweza kusimamia ufikiaji katika mikataba yote ya Azure na makundi ya usimamizi.
Kuinua hii inaweza kufanywa mwishoni mwa ukurasa: https://portal.azure.com/#view/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/~/Properties
.png)
Assignments Conditions & MFA
Kulingana na the docs: Hivi sasa, masharti yanaweza kuongezwa kwa uteuzi wa jukumu lililo ndani au la kawaida ambalo lina vitendo vya data vya uhifadhi wa blob au vitendo vya data vya uhifadhi wa foleni.
Deny Assignments
Kama vile uteuzi wa jukumu, uteuzi wa kukataa unatumika kudhibiti ufikiaji wa rasilimali za Azure. Hata hivyo, uteuzi wa kukataa unatumika kukataa wazi ufikiaji wa rasilimali, hata kama mtumiaji amepewa ufikiaji kupitia uteuzi wa jukumu. Uteuzi wa kukataa unachukua kipaumbele juu ya uteuzi wa jukumu, ikimaanisha kwamba ikiwa mtumiaji amepewa ufikiaji kupitia uteuzi wa jukumu lakini pia amekataliwa wazi ufikiaji kupitia uteuzi wa kukataa, uteuzi wa kukataa utachukua kipaumbele.
Kama vile uteuzi wa jukumu, uteuzi wa kukataa unatumika juu ya kiwango fulani kinachoonyesha wakuu walioathirika na ruhusa zinazokataliwa. Zaidi ya hayo, katika kesi ya uteuzi wa kukataa, inawezekana kuzuia kukataa kurithiwa na rasilimali za watoto.
Azure Policies
Azure Policies ni sheria zinazosaidia mashirika kuhakikisha rasilimali zao zinakidhi viwango maalum na mahitaji ya kufuata. Zinakuwezesha kulazimisha au kukagua mipangilio kwenye rasilimali za Azure. Kwa mfano, unaweza kuzuia uundaji wa mashine za kawaida katika eneo lisiloidhinishwa au kuhakikisha kwamba rasilimali zote zina lebo maalum za kufuatilia.
Azure Policies ni za awali: zinaweza kuzuia rasilimali zisizofuata sheria zisizoundwa au kubadilishwa. Pia ni za majibu, zikikuruhusu kupata na kurekebisha rasilimali zisizofuata sheria zilizopo.
Key Concepts
- Policy Definition: Sheria, iliyoandikwa kwa JSON, inayobainisha kile kinachoruhusiwa au kinachohitajika.
- Policy Assignment: Utumiaji wa sera kwa kiwango maalum (mfano, usajili, kundi la rasilimali).
- Initiatives: Mkusanyiko wa sera zilizopangwa pamoja kwa ajili ya utekelezaji mpana.
- Effect: Inabainisha kinachotokea wakati sera inapoanzishwa (mfano, "Deny," "Audit," au "Append").
Mifano kadhaa:
- Kuhakikisha Ufuataji wa Mikoa Maalum ya Azure: Sera hii inahakikisha kwamba rasilimali zote zinapelekwa katika mikoa maalum ya Azure. Kwa mfano, kampuni inaweza kutaka kuhakikisha kwamba data yake yote inahifadhiwa barani Ulaya kwa ajili ya ufuataji wa GDPR.
- Kulazimisha Viwango vya Ujumuishaji: Sera zinaweza kulazimisha kanuni za majina kwa rasilimali za Azure. Hii inasaidia katika kuandaa na kutambua kwa urahisi rasilimali kulingana na majina yao, ambayo ni muhimu katika mazingira makubwa.
- Kuzuia Aina Fulani za Rasilimali: Sera hii inaweza kuzuia uundaji wa aina fulani za rasilimali. Kwa mfano, sera inaweza kuwekwa kuzuia uundaji wa aina za rasilimali ghali, kama vile ukubwa fulani wa VM, ili kudhibiti gharama.
- Kulazimisha Sera za Uwekaji Lebo: Lebo ni jozi za funguo-thamani zinazohusishwa na rasilimali za Azure zinazotumika kwa usimamizi wa rasilimali. Sera zinaweza kulazimisha kwamba lebo fulani lazima ziwepo, au ziwe na thamani maalum, kwa rasilimali zote. Hii ni muhimu kwa kufuatilia gharama, umiliki, au upangaji wa rasilimali.
- Kukataza Ufikiaji wa Umma kwa Rasilimali: Sera zinaweza kulazimisha kwamba rasilimali fulani, kama vile akaunti za uhifadhi au hifadhidata, hazina maeneo ya umma, kuhakikisha kwamba zinapatikana tu ndani ya mtandao wa shirika.
- Kuweka Mipangilio ya Usalama Kiotomatiki: Sera zinaweza kutumika kuweka mipangilio ya usalama kiotomatiki kwa rasilimali, kama vile kuweka kundi maalum la usalama wa mtandao kwa VMs zote au kuhakikisha kwamba akaunti zote za uhifadhi zinatumia usimbuaji.
Kumbuka kwamba Azure Policies zinaweza kuunganishwa kwenye kiwango chochote cha hiyerarhya ya Azure, lakini zinatumika kawaida katika kundi la usimamizi wa mizizi au katika makundi mengine ya usimamizi.
Azure policy json example:
{
"policyRule": {
"if": {
"field": "location",
"notIn": ["eastus", "westus"]
},
"then": {
"effect": "Deny"
}
},
"parameters": {},
"displayName": "Allow resources only in East US and West US",
"description": "This policy ensures that resources can only be created in East US or West US.",
"mode": "All"
}
Urithi wa Ruhusa
Katika Azure ruhusa zinaweza kutolewa kwa sehemu yoyote ya hiyerarhii. Hii inajumuisha makundi ya usimamizi, usajili, makundi ya rasilimali, na rasilimali binafsi. Ruhusa zinarithiwa na rasilimali zilizomo katika chombo ambacho zilitolewa.
Muundo huu wa hiyerarhii unaruhusu usimamizi mzuri na wa kupanuka wa ruhusa za ufikiaji.
.png)
Azure RBAC vs ABAC
RBAC (udhibiti wa ufikiaji kulingana na jukumu) ni kile tulichokiona tayari katika sehemu zilizopita: Kutoa jukumu kwa msingi ili kumpa ufikiaji juu ya rasilimali.
Hata hivyo, katika baadhi ya matukio unaweza kutaka kutoa usimamizi wa ufikiaji wa kiwango cha juu zaidi au rahisisha usimamizi wa mamia ya mikataba ya jukumu.
Azure ABAC (udhibiti wa ufikiaji kulingana na sifa) inajengwa juu ya Azure RBAC kwa kuongeza masharti ya ugawaji wa jukumu kulingana na sifa katika muktadha wa vitendo maalum. Sharti la ugawaji wa jukumu ni ukaguzi wa ziada ambao unaweza kuongeza kwa hiari kwenye ugawaji wako wa jukumu ili kutoa udhibiti wa ufikiaji wa kiwango cha juu zaidi. Sharti linafanya uchujaji wa ruhusa zinazotolewa kama sehemu ya ufafanuzi wa jukumu na ugawaji wa jukumu. Kwa mfano, unaweza kuongeza sharti linalohitaji kitu kuwa na lebo maalum ili kusoma kitu hicho.
Huwezi kukatisha ufikiaji kwa rasilimali maalum ukitumia masharti.
Marejeo
- https://learn.microsoft.com/en-us/azure/governance/management-groups/overview
- https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/ready/azure-best-practices/organize-subscriptions
- https://abouttmc.com/glossary/azure-subscription/#:~:text=An%20Azure%20subscription%20is%20a,the%20subscription%20it%20belongs%20to.
- https://learn.microsoft.com/en-us/azure/role-based-access-control/overview#how-azure-rbac-determines-if-a-user-has-access-to-a-resource
- https://stackoverflow.com/questions/65922566/what-are-the-differences-between-service-principal-and-app-registration
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na 💬 kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter 🐦 @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.