Seguridad

Mantén tu Directorio Activo de Azure Protegido


Siempre que hablamos de ciberseguridad pensamos en los servidores que tenemos alojados en nuestra empresa y nos preocupamos sobre su exposición al exterior y el impacto que podría tener el compromiso de cualquier recurso de nuestra red. Sin embargo, son ya muchas las empresas que utilizan servicios en la nube o sistemas híbridos para desplegar su infraestructura.

Hoy venimos a hablar de Azure, y cuales son algunos de los puntos de entrada que explotan algunos atacantes para comprometer una organización y también daremos algunas recomendaciones básicas de seguridad.

Vectores de Entrada hacia Azure AD


Aplicaciones Vulnerables + Managed Identities: 

En muchas ocasiones se utiliza Azure para exponer aplicaciones antiguas y añadirles una capa de seguridad, sin embargo, una aplicación con vulnerabilidades no deja de tenerlas por el mero hecho de subirla a la nube. En este caso, cuando se despliega una aplicación en Azure, se le asocia una Managed Identity, es decir, una cuenta de Azure que será utilizada por la aplicación y a la que se le asignarán permisos necesarios para acceder a diferentes recursos como bases de datos o Key Vaults dentro de la organización.

En el caso de que un atacante logre explotar una vulnerabilidad de tipo RCE o SSRF en la aplicación, podría ser capaz de obtener el Access token de la Managed Identity, pudiendo así llegar a impersonar a esta cuenta y utilizarla para acceder a la organización y a sus recursos, siendo además que este tipo de cuentas al no estar pensadas para ser utilizadas por una persona, no cuentan con MFA.



Para intentar reducir las posibilidades de que este vector de entrada sea utilizado, se recomienda lo siguiente:
  • Analizar y mitigar vulnerabilidades en las aplicaciones expuestas.
  • Limitar al máximo los permisos de las Managed Identities.
  • Monitorizar las acciones de las Managed Identities para detectar cualquier acción que difiera de su uso esperado.

Azure Blobs Expuestos: 

Los blobs de Azure son un servicio de almacenamiento de objetos para la plataforma Azure. Es común que los usuarios no restrinjan correctamente los permisos de los blobs que crean, de manera que estos pueden llegar a ser enumerados mediante herramientas como MicroBurst. Por otro lado, también es posible compartir el acceso a estos blobs mediante enlaces. Cuando se comparten recursos con enlaces puede realizarse mediante Share Keys o Shared Access Signature, siendo que ambas opciones pueden permitir que la duración del enlace sea muy elevada o que incluso no caduque nunca, dando así acceso a cualquier atacante que consiga el enlace generado.

A continuación, se exponen algunas recomendaciones para proteger los blobs de la organización:
  • Concienciar a los empleados para que no almacenen información sensible en estos recursos y que administren correctamente los permisos.
  • Revisar con frecuencia los blobs públicos para asegurarse que ninguno esté público.
  • Limitar tiempo de duración de enlaces a blobs.

Ausencia de MFA + Leaks: 

Cuando hablamos de directorio activo on-premise, suele haber una capa de seguridad antes de poder acceder a la organización ya sea acceso físico a la red o mediante VPN. Es por ello por lo que, aunque se produzcan leaks de credenciales, los atacantes deben de conseguir también acceso a la organización. Sin embargo, los servicios de Azure están expuestos en internet, por lo que si un atacante logra comprometer una cuenta de Active Directory, podría ser capaz de acceder al dominio de Azure y enumerarlo por completo pese a no tener acceso a la red interna.

Para reducir las posibilidades de ser atacados mediante este vector se recomienda:
  • Investigar de manera continua información expuesta de la organización con el fin de detectar credenciales comprometidas para poder cambiarlas.
  • Establecer MFA obligatorio para todas las cuentas.
  • Implementar controles en el Conditional Access Policy para restringir el acceso al dominio de Azure solo desde ubicaciones permitidas.

Phishing: 

Los ataques de phishing son una táctica común utilizada por los atacantes para engañar a los usuarios y obtener sus credenciales. Además, se pueden utilizar técnicas como Ilicit Consent Grant Attack, para que en lugar de obtener las credenciales de la víctima, el atacante intente obtener un Access Token del usuario, el cual podría ser utilizado para acceder a recursos del dominio. Los ataques de phishing que utilizan este tipo de técnicas son extremadamente peligrosos, puesto que se utilizan sistemas legítimos de Microsoft para que la víctima delegue sus permisos sobre una aplicación controlada por el atacante y así obtener el Access Token anteriormente mencionado.

Para reducir el impacto se recomienda:
  • Concienciar a los empleados ante estas y otras técnicas de phishing para que aprendan a reconocerlas y a evitarlas.
  • Limitar lo máximo posible los permisos de los usuarios en el dominio de Azure.

Persistencia mediante invitación de usuarios:

Cuando un atacante consigue acceso a un activo, siempre intenta conseguir persistencia en el objetivo, de esta manera podrá continuar enumerando tras el compromiso inicial. Existen diversas técnicas para establecer persistencia, pero la más sencilla es utilizar la función de invitar usuarios de Azure, ya que por defecto una cuenta de Azure puede invitar usuarios externos. Estos usuarios no tendrán permisos elevados, pero podrían enumerar información del dominio.

Como mitigación se recomienda deshabilitar esta función para que los usuarios no puedan dar acceso de invitado al tenant.

¡Hasta la próxima linces, nos vemos en la nube!

Ignacio Sánchez, Analista de Ciberseguridad en Zerolynx. 

Powered by WPeMatico

Gustavo Genez

Informático de corazón y apasionado por la tecnología. La misión de este blog es llegar a los usuarios y profesionales con información y trucos acerca de la Seguridad Informática.