Az - Automation Account
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
De la documentación: Azure Automation ofrece un servicio de automatización basado en la nube, actualizaciones del sistema operativo y gestión de configuraciones que admite una gestión consistente en sus entornos de Azure y no Azure. Incluye automatización de procesos, gestión de configuraciones, gestión de actualizaciones, capacidades compartidas y características heterogéneas.
Estos son como "tareas programadas" en Azure que le permitirán ejecutar cosas (acciones o incluso scripts) para gestionar, verificar y configurar el entorno de Azure.
Cuando se utiliza Cuenta de Ejecución, se crea una aplicación de Azure AD con un certificado autofirmado, se crea un principal de servicio y se asigna el rol de Contribuyente para la cuenta en la suscripción actual (muchos privilegios). Microsoft recomienda usar una Identidad Administrada para la Cuenta de Automatización.
Esto será eliminado el 30 de septiembre de 2023 y cambiado por Identidades Administradas.
Runbooks le permiten ejecutar código PowerShell arbitrario. Esto podría ser abusado por un atacante para robar los permisos del principal adjunto (si lo hay). En el código de los Runbooks también podría encontrar información sensible (como credenciales).
Si puede leer los trabajos, hágalo ya que contienen la salida de la ejecución (potencial información sensible).
Vaya a Cuentas de Automatización
--> <Seleccionar Cuenta de Automatización>
--> Runbooks/Trabajos/Grupos de trabajadores híbridos/Tareas de observador/credenciales/variables/certificados/conexiones
Un Runbook puede ejecutarse en un contenedor dentro de Azure o en un Trabajador Híbrido (máquina no Azure). El Agente de Análisis de Registros se despliega en la VM para registrarla como un trabajador híbrido. Los trabajos del trabajador híbrido se ejecutan como SYSTEM en Windows y como cuenta nxautomation en Linux. Cada Trabajador Híbrido está registrado en un Grupo de Trabajadores Híbridos.
Por lo tanto, si puede elegir ejecutar un Runbook en un Trabajador Híbrido de Windows, ejecutará comandos arbitrarios dentro de una máquina externa como System (buena técnica de pivot).
De la documentación: Azure Automation Configuración de Estado es un servicio de gestión de configuraciones de Azure que le permite escribir, gestionar y compilar configuraciones de PowerShell Desired State Configuration (DSC) configuraciones para nodos en cualquier nube o centro de datos local. El servicio también importa Recursos DSC, y asigna configuraciones a nodos objetivo, todo en la nube. Puede acceder a la Configuración de Estado de Azure Automation en el portal de Azure seleccionando Configuración de estado (DSC) bajo Gestión de configuraciones.
Información sensible podría encontrarse en estas configuraciones.
Es posible abusar de SC para ejecutar scripts arbitrarios en las máquinas gestionadas.
Podrías hacer lo mismo modificando un Run Book existente, y desde la consola web.
Acción Requerida: Crear una nueva Cuenta de Automatización.
Configuración Específica: Asegúrate de que "Crear cuenta Azure Run As" esté habilitado.
Fuente: Descarga el runbook de muestra del Repositorio de MicroBurst en GitHub.
Acciones Requeridas:
Importa el runbook en la Cuenta de Automatización.
Publica el runbook para hacerlo ejecutable.
Adjunta un webhook al runbook, habilitando disparadores externos.
Acción Requerida: Agrega el módulo AzureAD a la Cuenta de Automatización.
Paso Adicional: Asegúrate de que todos los Módulos de Automatización de Azure estén actualizados a sus últimas versiones.
Roles a Asignar:
Administrador de Usuarios
Propietario de Suscripción
Objetivo: Asigna estos roles a la Cuenta de Automatización para los privilegios necesarios.
Nota: Ten en cuenta que configurar tal automatización podría llevar a perder el control sobre la suscripción.
Dispara el webhook para crear un nuevo usuario enviando una solicitud POST.
Utiliza el script de PowerShell proporcionado, asegurándote de reemplazar el $uri
con tu URL de webhook real y actualizando el $AccountInfo
con el nombre de usuario y la contraseña deseados.
Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE) Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE)