Estimados amigos de Inseguros !!!
Hoy vamos con una pieza muy práctica para entornos Microsoft: cómo descubrir “admins en la sombra” en Azure/Entra ID y, sobre todo, cómo aterrizarlo con una herramienta sencilla para auditar permisos peligrosos.
La película es esta.
Tú crees que tienes controlados a “los admins”: Global Admin, Owner de la suscripción, cuatro grupos importantes y listo.
Pero en cloud (y en Microsoft especialmente) existe el concepto de shadow admin: identidades que no parecen administradoras, pero que tienen un permiso o combinación de permisos con el que pueden escalar y terminar teniendo control real del entorno.
Y aquí Microsoft te lo complica (para bien y para mal) porque el modelo tiene dos capas muy claras:
-
capa directorio (Entra ID: usuarios, grupos, apps, roles de directorio)
-
capa suscripción (Azure RBAC: roles sobre suscripción, grupo de recursos y recursos)
Como consecuencia, puedes tener alguien “no admin” en Entra, pero con un rol en Azure RBAC que le permite delegar permisos y, en la práctica, fabricarse el control.
El clásico que me encuentro en empresas
El caso más típico es este: alguien con un rol aparentemente operativo (por ejemplo, gestión de almacenamiento) y, por facilitar la vida, se le otorga capacidad de asignar permisos (role assignment) en un scope demasiado amplio.
A nivel de suscripción, eso es una fiesta.
Porque un usuario con User Access Administrator (o equivalentes con capacidad de asignar roles) puede no “crear máquinas” directamente… pero puede darse a sí mismo los permisos para hacerlo. Es decir: empieza sin el poder y lo obtiene “rodeando” el modelo.
Y lo peor no es solo el día 1.
Lo peor es la persistencia: si el atacante cae en una identidad con ese permiso, ya tiene una vía de volver a escalar cuando quiera.
Dónde entra AzureStealth (SkyArk)
Para no auditar esto “a ojo” (que es imposible), existe SkyArk, un proyecto de CyberArk con un módulo para Azure llamado AzureStealth.
La idea de AzureStealth es muy directa:
escanea tu tenant y/o suscripciones y te saca quiénes son las entidades más privilegiadas, incluyendo esos shadow admins que suelen pasar desapercibidos. GitHub+1
Lo bueno: no es un monstruo de instalación.
En la práctica es “descargar, importar módulo y ejecutar”.
Requisitos reales
AzureStealth funciona en PowerShell y se apoya en los módulos de Azure:
-
módulo Az
-
módulo AzureAD
Si no los tienes, la propia herramienta contempla instalarlos (dependiendo de si tienes permisos de admin local o si lo instalas en CurrentUser). GitHub
Cómo se ejecuta
Modo local (SkyArk completo):
-
descargas el repo de SkyArk
-
abres PowerShell permitiendo ejecución
-
importas el módulo principal y lanzas el scan
En el propio repo lo resumen así: Import-Module .\SkyArk.ps1 y luego Start-AzureStealth. GitHub
Modo portal (CloudShell):
Si quieres hacerlo rápido desde el portal, puedes cargar el script y lanzar el scan directamente (descarga desde GitHub y ejecución). La función de escaneo es Scan-AzureAdmins. GitHub+1
Un detalle práctico que me encanta: contexto y credenciales
AzureStealth puede apoyarse en el contexto ya autenticado (lo típico: ya estabas trabajando con Az y tienes sesión cacheada). En el script aparece como -UseCurrentCred, y además te pregunta si quieres reutilizar el contexto actual. GitHub
Esto, para un equipo de sistemas/seguridad, es una maravilla porque te permite “pasar el scanner” como parte de una revisión recurrente sin montar un circo.
Qué deberías mirar en los resultados (lo importante, no lo bonito)
Cuando te aparezcan identidades privilegiadas, céntrate en:
-
quién puede asignar roles (RBAC) y en qué scope (suscripción vs resource group vs recurso)
-
grupos que acumulan permisos peligrosos (muchas veces el shadow admin está escondido en un grupo “normal”)
-
service principals / apps con permisos de delegación o control
Y a partir de ahí, mitigación real:
-
recortar scope (siempre que puedas, baja a grupo de recursos o recurso)
-
separar funciones (operativo vs delegación de permisos)
-
monitorizar a los privilegiados de verdad (MFA, alertas, auditoría, etc.)
-
y revisar desviaciones periódicas (hoy están bien, mañana alguien “arregla algo rápido” y la lía)
En Microsoft, la seguridad casi siempre acaba siendo seguridad de identidad y permisos.
Y esto no se aprende con teoría: se aprende entendiendo cómo se cruzan Entra, Azure RBAC, scopes, herencias y delegaciones.
Si te interesa este enfoque profesional (de defender entornos Microsoft de verdad, no de hacer checklists), en el curso de Ciberseguridad Azure lo trabajamos con casos de empresa y con este tipo de auditorías de permisos bien aterrizadas, para que puedas replicarlo en tu entorno.
Gracias por leerme !!!

