Az - Automation Account
Informações Básicas
Da documentação: O Azure Automation oferece um serviço de automação baseado em nuvem, atualizações de sistema operacional e serviço de configuração que suporta gerenciamento consistente em seus ambientes Azure e não-Azure. Ele inclui automação de processos, gerenciamento de configuração, gerenciamento de atualizações, capacidades compartilhadas e recursos heterogêneos.
Esses são como "tarefas agendadas" no Azure que permitirão que você execute ações (ou até scripts) para gerenciar, verificar e configurar o ambiente Azure.
Conta de Execução
Quando a Conta de Execução é usada, ela cria um aplicativo Azure AD com certificado autoassinado, cria um principal de serviço e atribui a função de Contribuinte para a conta na assinatura atual (muitos privilégios). A Microsoft recomenda o uso de uma Identidade Gerenciada para Conta de Automação.
Isso será removido em 30 de setembro de 2023 e substituído por Identidades Gerenciadas.
Runbooks e Jobs
Runbooks permitem que você execute código PowerShell arbitrário. Isso poderia ser abusado por um invasor para roubar as permissões do principal anexado (se houver). No código dos Runbooks, você também pode encontrar informações sensíveis (como credenciais).
Se você puder ler os jobs, faça isso, pois eles contêm a saída da execução (possíveis informações sensíveis).
Vá para Contas de Automação
--> <Selecionar Conta de Automação>
--> Runbooks/Jobs/Grupos de trabalhadores híbridos/Tarefas de monitoramento/credenciais/variáveis/certificados/conexões
Trabalhador Híbrido
Um Runbook pode ser executado em um contêiner dentro do Azure ou em um Trabalhador Híbrido (máquina não-Azure). O Agente de Log Analytics é implantado na VM para registrá-lo como um trabalhador híbrido. Os trabalhos do trabalhador híbrido são executados como SYSTEM no Windows e como conta nxautomation no Linux. Cada Trabalhador Híbrido é registrado em um Grupo de Trabalhadores Híbridos.
Portanto, se você puder escolher executar um Runbook em um Trabalhador Híbrido do Windows, você executará comandos arbitrários dentro de uma máquina externa como System (técnica de pivô interessante).
Comprometimento da Configuração de Estado (SC)
Da documentação: A Configuração de Estado da Automação do Azure é um serviço de gerenciamento de configuração do Azure que permite escrever, gerenciar e compilar configurações de Estado Desejado do PowerShell (DSC) configurações para nós em qualquer nuvem ou datacenter local. O serviço também importa Recursos DSC e atribui configurações a nós de destino, tudo na nuvem. Você pode acessar a Configuração de Estado da Automação do Azure no portal Azure selecionando Configuração de estado (DSC) em Gerenciamento de Configuração.
Informações sensíveis podem ser encontradas nessas configurações.
RCE
É possível abusar do SC para executar scripts arbitrários nas máquinas gerenciadas.
Az - State Configuration RCEEnumeração
Criar um Runbook
Exfiltrar Credenciais e Variáveis definidas em uma Conta de Automação usando um Run Book
Você poderia fazer a mesma coisa modificando um Run Book existente, e a partir do console web.
Etapas para Configurar a Criação Automatizada de Usuário Altamente Privilegiado
1. Inicializar uma Conta de Automação
Ação Necessária: Criar uma nova Conta de Automação.
Configuração Específica: Garantir que "Criar conta Azure Run As" esteja habilitado.
2. Importar e Configurar o Runbook
Fonte: Baixe o runbook de exemplo do Repositório GitHub MicroBurst.
Ações Necessárias:
Importar o runbook para a Conta de Automação.
Publicar o runbook para torná-lo executável.
Anexar um webhook ao runbook, habilitando gatilhos externos.
3. Configurar o Módulo AzureAD
Ação Necessária: Adicionar o módulo AzureAD à Conta de Automação.
Passo Adicional: Garantir que todos os Módulos de Automação do Azure estejam atualizados para suas versões mais recentes.
4. Atribuição de Permissão
Funções a Atribuir:
Administrador de Usuário
Proprietário da Assinatura
Alvo: Atribuir essas funções à Conta de Automação para privilégios necessários.
5. Consciência da Possível Perda de Acesso
Nota: Esteja ciente de que configurar tal automação pode levar à perda de controle sobre a assinatura.
6. Acionar a Criação de Usuário
Acione o webhook para criar um novo usuário enviando uma solicitação POST.
Use o script PowerShell fornecido, garantindo substituir o
$uri
pelo seu URL de webhook real e atualizando o$AccountInfo
com o nome de usuário e senha desejados.
Referências
Last updated