viernes, 26 de agosto de 2022

Controlar los permisos para usuarios invitados en Azure Ad: Hack and defense

 Estimados amigos de Inseguros  !!!

En muchas ocasiones nos vemos en la situación de tener que dar, o que nos den, acceso a un Tenant ( organización) en Azure AD para administrar, trabajar, o cualquier otra tarea.

En esta foto os pongo una imagen de ejemplo, de un usuario invitado, que no pertence a la organización.


Como sabes, le podemos dar permisos a una aplicación mediante RBAC, por ejemplo a Azure Sentinel.

Lo que no solemos tener en cuenta es que al permanecer al Azure AD, aunque sea como invitado, recibe unos permisos un tanto inseguros por defecto, y es que existe la posibilidad de enumerar objetos, y esto no abre la puerta a una enumeración y posible exfiltración de datos.

Seguimos con el ejemplo, si entramos como invitado en nuestro Tenant, veremos como desde el Portal no podemos ver los usuarios.


Pero existe la posibilidad de realizar esta consulta mediante Powershell "a mano" o con herramientas, y si podemos ver la información, por ejemplo, si hacemos un Get-AzureADUser -All:$true podríamos ver los usuarios.

Si le decimos que nos de la información de un usuario en concerto Get-AzureADUser -ObjectId "joaquin.molina@seguridadsi.com" nos dara sus grupos.



Si listamos todos sus grupos, podemos saber su id, y si sabemos el id del grupo, podemos saber sus miembros...

La historia es que cambiar esto es tan sencillo como irnos a Azure Ad, configuración de usuarios, y externos, y cambiar el comportamiento que queremos darle. Lo normal sería que NO tuviese permisos más que en su propio objeto.


También deberías revisar la segunda opción, y es controlar quien puede agregar usuarios invitados... no debería mucha gente...

Una vez que se cambia esto, realizamos los mismos pasos y obtenemos un forbidden bien hermoso.


Una de las configuraciones más efectivas por su sencillez y repercusión.

Si por el contrario estás auditando una organización, podemos realizar un par de consultas sobre Graph para ver estos datos sin entar al portal, por ejemplo con Graph Explorer


Los valores que debemos esperar son los siguientes:
Permission levelAccess levelValue
Same as member usersGuests have the same access to Azure AD resources as member usersa0b1b346-4d3e-4e8b-98f8-753987be4970
Limited access (default)Guests can see membership of all non-hidden groups10dae51f-b6af-4016-8d66-8c2a99b929b3
Restricted access (new)Guests can't see membership of any groups2af84b1e-32c8-42b7-82bc-daa82404023b
https://docs.microsoft.com/en-us/azure/active-directory/enterprise-users/users-restrict-guest-permissions

Espero que os sirva de ayuda, y como siempre, gracias por leerme  !!!

Y si te gusta este contenido, te animo a que te registre para estar al día de nuevos post, cursos, webinars, eventos etc.