Volver a actualizaciones
Nuevo releaseAug 26, 2026

EntraFalcon V20260824

Una herramienta ligera de PowerShell para evaluar la postura de seguridad de entornos de Microsoft Entra ID. Ayuda a identificar objetos privilegiados, asignaciones arriesgadas y posibles configuraciones incorrectas.

Compartir

EntraFalcon

alt text

EntraFalcon es una herramienta de evaluación basada en PowerShell para pentesters, analistas de seguridad y administradores de sistemas, diseñada para evaluar la postura de seguridad de un entorno de Microsoft Entra ID.

Pensada para ser fácil de usar, EntraFalcon funciona con PowerShell 5.1 y 7, es compatible tanto con Windows como con Linux, y no requiere módulos adicionales de PowerShell, instalaciones extra ni consentimiento de Microsoft Graph API.

La herramienta ayuda a descubrir objetos privilegiados, asignaciones potencialmente riesgosas y configuraciones incorrectas de Conditional Access que a menudo se pasan por alto, como:

  • Usuarios con control sobre grupos o aplicaciones de alto privilegio
  • Aplicaciones empresariales externas o internas con permisos excesivos (por ejemplo, Microsoft Graph API, roles de Azure)
  • Usuarios con asignaciones de roles de Azure IAM directamente sobre recursos
  • Cuentas privilegiadas sincronizadas desde on-premises
  • Usuarios inactivos o usuarios sin capacidad de MFA
  • Grupos desprotegidos utilizados en asignaciones sensibles (por ejemplo, exclusiones de Conditional Access, Subscription Owner o miembros elegibles de un grupo privilegiado)

Los hallazgos se presentan en informes HTML interactivos para facilitar una exploración y análisis eficientes.

🚀 Características

  • Script de PowerShell simple compatible con PowerShell 5.1 y 7. Funciona en Windows y Linux
  • Autenticación integrada que admite múltiples métodos
  • Utiliza aplicaciones de Microsoft de primera parte con ámbitos pre-consentidos para evitar las solicitudes de consentimiento de Graph API
  • Genera informes HTML navegables que admiten filtrado, ordenación, exportación de datos, etc.
  • Realiza más de 90 comprobaciones automatizadas y resume los resultados en un Informe de Hallazgos de Seguridad
    • Incluye comprobaciones de configuraciones débiles del tenant y propiedades o permisos de objetos riesgosos
    • Proporciona clasificaciones de severidad, así como descripciones del problema, amenazas potenciales y orientación de remediación
    • Enumera los objetos afectados y enlaza directamente a sus informes detallados para una investigación adicional
  • Realiza una puntuación básica de impacto, probabilidad y riesgo para resaltar objetos de alto privilegio débilmente protegidos y ordenar los datos.
  • Muestra advertencias para configuraciones riesgosas y privilegios elevados
  • Enumera objetos de Entra ID, incluyendo:
    • Usuarios (incluidos Agent Users)
    • Grupos
    • Aplicaciones empresariales
    • Registros de aplicaciones
    • Identidades administradas
    • Identidades de agentes
    • Principales de blueprint de identidades de agentes
    • Blueprints de identidades de agentes
    • Asignaciones de PIM:
      • PIM para Entra Roles
      • PIM para Grupos
      • PIM para Azure Roles
    • Asignaciones de Entra Role
    • Asignaciones de Azure Role
    • Asignaciones de RBAC de Intune
    • Paquetes de acceso
    • Catálogos de Entitlement Management
    • RBAC de catálogo
    • Políticas de Conditional Access
    • Unidades administrativas
    • Configuraciones de PIM:
      • PIM para Entra Roles
      • PIM para Grupos (solo autenticación BroCi)

✅ Requisitos

TipoPermisoObligatorioImpacto si falta
Entra ID RoleGlobal ReaderNo es posible ejecutar los scripts
Azure RoleReader: En cada Management Group o SubscriptionNoNo se pueden evaluar las asignaciones de Azure IAM

Además, debes poder autenticarte en Microsoft Graph API y, opcionalmente, en la API de Azure ARM desde el dispositivo donde ejecutas la herramienta. Asegúrate de que las políticas de Conditional Access no bloqueen tu autenticación.

▶️ Uso

Descargar EntraFalcon

Para comenzar, clona el repositorio y navega al directorio del proyecto:```powershell git clone https://github.com/CompassSecurity/EntraFalcon cd EntraFalcon

Nota: Es posible que necesites cambiar temporalmente la política de ejecución de PowerShell para ejecutar el script.
¡Hazlo solo con scripts de confianza!```
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope Process

Ejecutar EntraFalcon

EntraFalcon incluye soporte integrado para la autenticación de Entra ID. Use -AuthFlow para seleccionar el flujo de autenticación.

Para evaluaciones normales, use uno de los flujos de cobertura completa:

Flujo recomendadoMejor paraPlataformaCobertura
BroCi (predeterminado)Ejecuciones interactivas en WindowsWindowsCompleta
BroCiManualCodeAutenticación en otro navegadorWindows, Linux, macOSCompleta
BroCiTokenToken de actualización existente de Azure PortalWindows, Linux, macOSCompleta
ServicePrincipalAutomatización / CIWindows, Linux, macOSCompleta

BroCi usa un único inicio de sesión interactivo. BroCiToken y ServicePrincipal no usan ninguno. Los flujos de usuario alternativos pueden requerir varios inicios de sesión interactivos porque se solicitan tokens de recursos separados.

Flujos de autenticación alternativos

Debido a la falta de aplicaciones de primera parte con consentimiento previo, los flujos alternativos no pueden realizar la enumeración completa (PIM for Groups, Access Packages, Catalogs). Por lo tanto, actualmente siguen siendo solo opciones alternativas.

FlujoUsar solo cuandoPlataformaLimitaciones
AuthCodeSe requiere compatibilidad heredadaWindowsCobertura parcial. Sin informe independiente de PIM for Groups, Access Packages o Catalogs.
DeviceCodeLa autenticación basada en navegador no es posibleWindows, Linux, macOSCobertura parcial. Sin informe independiente de PIM for Groups, Access Packages o Catalogs. Algunas comprobaciones de Security Findings se ejecutan con menor profundidad.
ManualCodeLa autenticación debe completarse mediante una sesión de navegador separadaWindows, Linux, macOSCobertura parcial. Sin informe independiente de PIM for Groups, Access Packages o Catalogs.

Recomendado: Flujo BroCi (predeterminado / solo Windows)

BroCi usa aplicaciones de primera parte alternativas y requiere solo un inicio de sesión interactivo.
Es útil cuando el cliente Azure Active Directory PowerShell requiere asignación y debe evitarse.```powershell .\run_EntraFalcon.ps1

Selección explícita de BroCi:```powershell
.\run_EntraFalcon.ps1 -AuthFlow BroCi

Recomendado: BroCi + Flujo de Código Manual```powershell

.\run_EntraFalcon.ps1 -AuthFlow BroCiManualCode

1. El script copia la URL de autenticación al portapapeles.
2. Pega la URL en un navegador (opcionalmente en otro dispositivo para soporte SSO).
3. Abre las herramientas de desarrollador del navegador y, en la pestaña Red, habilita `Preserve log`.
4. Completa la autenticación.
5. Busca en el registro de red `code=1.` y copia la URL de la solicitud que contiene el código al portapapeles.
6. Presiona Enter para continuar; el script lee el código del portapapeles y completa la obtención del token.


#### Recomendado: BroCi con Token
Si ya se dispone de un token de actualización válido de Azure Portal (cliente c44b4083-3bb0-49c1-b47d-974e53cbdf3c), se puede usar directamente.
Ejemplo: Obtención del token de actualización desde el navegador
1. Abre las herramientas de desarrollador del navegador y, en la pestaña Red, habilita Preserve log.
2. Autentícate en https://entra.microsoft.com.
3. Busca en el registro de red `brk_client_id=c44b4083-3bb0-49c1-b47d-974e53cbdf3c` y extrae el token de actualización de la respuesta.```powershell
.\run_EntraFalcon.ps1 -AuthFlow BroCiToken -BroCiToken "1.XXXXXXXXXXX"

Recomendado: Service Principal

Autentica como una aplicación registrada mediante la concesión de credenciales de cliente OAuth2 — no se requiere interacción del usuario. Útil para ejecuciones automatizadas repetidas.
Requiere un registro de aplicación personalizado en Entra con permisos de Graph API de tipo Application (ver más abajo).

Con secreto de cliente:```powershell .\run_EntraFalcon.ps1 -AuthFlow ServicePrincipal -Tenant "mysecuretenant.ch" -SPClientId "" -SPClientSecret ""

**Con certificado PFX:**```powershell
.\run_EntraFalcon.ps1 -AuthFlow ServicePrincipal -Tenant "mysecuretenant.ch" -SPClientId "<AppId>" -SPCertificatePath "C:\certs\app.pfx"

Para un PFX protegido con contraseña, añade -SPCertificatePassword (Read-Host -Prompt "Certificate password" -AsSecureString).

Con certificado PEM + clave privada (solo PowerShell 7+):```powershell .\run_EntraFalcon.ps1 -AuthFlow ServicePrincipal -Tenant "mysecuretenant.ch" -SPClientId "" -SPCertificatePemPath "C:\certs\cert.pem" -SPPrivateKeyPemPath "C:\certs\key.pem"

Para una clave privada cifrada, añade `-SPPrivateKeyPemPassword (Read-Host -Prompt "Private key password" -AsSecureString)`.

##### Permisos requeridos del registro de la aplicación
Concede los siguientes permisos de **Aplicación** (no Delegados) en el registro de la aplicación y admin-consiente:

| Permiso | Tipo |
|---|---|
| `AdministrativeUnit.Read.All` | Application |
| `AgentIdentity.Read.All` | Application |
| `AgentIdentityBlueprint.Read.All` | Application |
| `AgentIdentityBlueprintPrincipal.Read.All` | Application |
| `Application.Read.All` | Application |
| `AuditLog.Read.All` | Application |
| `Device.Read.All` | Application |
| `EntitlementManagement.Read.All` | Application |
| `Group.Read.All` | Application |
| `Organization.Read.All` | Application |
| `Policy.Read.All` | Application |
| `PrivilegedAccess.Read.AzureADGroup` | Application |
| `RoleManagement.Read.Directory` | Application |
| `RoleManagementPolicy.Read.AzureADGroup` | Application |
| `User.Read.All` | Application |
| `DeviceManagementRBAC.Read.All` | Application |

Además, asigna el rol **Azure Reader** en el grupo de administración raíz (o en cada suscripción relevante) y, opcionalmente, el rol **Global Reader** a la entidad de servicio en Entra ID (requerido para el estado MFA por usuario).

#### Alternativa: Flujo de código de autorización (solo Windows)```powershell
.\run_EntraFalcon.ps1 -AuthFlow AuthCode

Fallback: Flujo de Código de Dispositivo

A menudo está restringido por el Acceso Condicional en entornos endurecidos.
Con DeviceCode, dos comprobaciones de Hallazgos de Seguridad se ejecutan con profundidad reducida (CAP-004 y CAP-005).```powershell .\run_EntraFalcon.ps1 -AuthFlow DeviceCode

#### Fallback: flujo de código de autenticación + código manual```powershell
.\run_EntraFalcon.ps1 -AuthFlow ManualCode
  1. El script copia la URL de autenticación al portapapeles.
  2. Pega la URL en un navegador (opcionalmente en otro dispositivo para soporte SSO).
  3. Completa la autenticación.
  4. Copia la URL de redirección final desde la barra de direcciones del navegador (que contiene el código de autorización) al portapapeles.
  5. Presiona Enter para continuar; el script lee el código desde el portapapeles y completa la obtención del token.

Otros Parámetros

Incluir Aplicaciones Empresariales de Microsoft

De forma predeterminada, las aplicaciones empresariales oficiales de Microsoft se excluyen de la evaluación para reducir el ruido. Para incluirlas en la enumeración y el análisis, usa el modificador -IncludeMsApps:```powershell .\run_EntraFalcon.ps1 -IncludeMsApps

#### Omitir evaluación de PIM para Grupos
Use el modificador `-SkipPimForGroups` para omitir la recopilación previa y el enriquecimiento de PIM para Grupos.  
Esto también omite el informe independiente de configuración de `PIM para Grupos`.```powershell
.\run_EntraFalcon.ps1 -SkipPimForGroups

Otros Parámetros Opcionales

ParámetroDescripciónValor Predeterminado
UserAgentAgente de usuario utilizado para las solicitudes al endpoint de token y las llamadas a la API.EntraFalcon
DisableCAEDesactiva la solicitud de tokens de Evaluación de Acceso Continuo (CAE).false
TenantEspecifica el inquilino (ID o dominio) contra el que autenticarse. Útil al evaluar un inquilino distinto del inquilino principal de la cuenta.Inquilino principal de la cuenta
OutputFolderCarpeta de salida donde se almacenan los informes.Results_%TenantName%_YYYYMMDD_HHMM
LimitResultsLimita el número de grupos y usuarios en el informe (después de ordenar por riesgo). Útil para inquilinos grandes.-
LogLevelControla el nivel de detalle del registro CLI en tiempo de ejecución. Valores admitidos: Off (predeterminado), Verbose, Debug, Trace.Off
ApiTopEstablece el número máximo de objetos devueltos por la API. Valores más bajos reducen el riesgo de tiempo de espera (HTTP 504), pero aumentan el número de solicitudes.999 (Rango válido: 5–999)
AuthFlowSelector de flujo de autenticación preferido. Valores: BroCi (predeterminado), AuthCode, DeviceCode, ManualCode, BroCiManualCode, BroCiToken, ServicePrincipal.BroCi
BroCiTokenToken de actualización del Portal de Azure para AuthFlow BroCiToken.-
SPClientIdID de aplicación (cliente) de la entidad de servicio. Requerido para -AuthFlow ServicePrincipal.-
SPClientSecretSecreto de cliente para la entidad de servicio. Se usa con -AuthFlow ServicePrincipal.-
SPCertificatePathRuta a un archivo de certificado PFX/P12 para la autenticación de la entidad de servicio.-
SPCertificatePasswordContraseña (SecureString) para el certificado PFX especificado por -SPCertificatePath.-
SPCertificatePemPathRuta a un archivo de certificado PEM. Se usa junto con -SPPrivateKeyPemPath.-
SPPrivateKeyPemPathRuta al archivo de clave privada PEM que coincide con -SPCertificatePemPath.-
SPPrivateKeyPemPasswordContraseña (SecureString) para la clave privada PEM especificada por -SPPrivateKeyPemPath.-
CsvHabilita la escritura de archivos de informe CSV además de los archivos de informe TXT/HTML.false
ExportCapUncoveredUsersPara cada política de Acceso Condicional habilitada con destino a usuarios, exporta un CSV que lista los usuarios no cubiertos por esa política. Los archivos se escriben en una subcarpeta ConditionalAccessPolicies_UncoveredUsers en el directorio de salida.false
ExportFindingsJsonExporta todos los Hallazgos de Seguridad como JSON al final de la ejecución.false
ExportDataJsonExporta el informe enriquecido y los conjuntos de datos de soporte como archivos JSON sin procesar en Data_Json; los metadatos de la ejecución están disponibles en Summary.json.false
DebugObjectDumpExporta los objetos de informe finales en memoria como CLIXML a Debug_ObjectDump para solución de problemas y pruebas.false

📊 Algunos Ejemplos de Informes

Informe de Hallazgos de Seguridad

alt text alt text

Usuarios

alt text

Usuarios (Sección de Detalles)

alt text

Roles de Entra ID

alt text

Roles de Azure

alt text

Aplicación Empresarial (Sección de Detalles)

alt text

Políticas de Acceso Condicional

alt text

Políticas de Acceso Condicional (Sección de Detalles)

alt text

Configuración de Roles de PIM (Entra)

alt text

Identidades de Agente

alt text

Resumen de Enumeración

alt text

📑 Informe HTML

General

  • Haga clic en el botón ⚙️ Columnas para mostrar u ocultar columnas específicas.
  • Haga clic en 💾 Exportar para descargar CSV/JSON o copiar CSV/TSV/JSON de los datos actualmente visibles.
  • Haga clic en 👁 Compartir Vista para copiar filtros, ordenación y selección de columnas como un enlace compartible.
  • Haga clic en 🧰 Vistas Predefinidas para aplicar filtros y selecciones de columnas preconfigurados.
  • Haga clic en 🔄 Restablecer Vista para restablecer la vista a la predeterminada.
  • Haga clic en los nombres de los objetos para saltar a la información detallada, incluso en otros informes.
  • Al usar la navegación interna, presione el botón de retroceso del navegador para volver.
  • Algunos encabezados de campos de tabla muestran texto de ayuda al pasar el mouse.
  • Ordene los datos haciendo clic en un encabezado de tabla.
  • Alt+clic en un encabezado de columna principal de la tabla para ocultar rápidamente esa columna.
  • Alt+clic en una fila de contenido de la tabla principal para ocultarla temporalmente. Use el chip de filas ocultas o Restablecer Vista para mostrar las filas ocultas nuevamente.

Filtrado

  • Si no se especifica un operador, el filtrado se establece por defecto en contiene.
  • Use = para una coincidencia exacta.
  • Use ^ para comienza con (p. ej., ^Mallory).
  • Use $ para termina con (p. ej., $domain.ch).
  • Se admiten operadores de comparación como >, <, >=, <= (solo valores numéricos).
  • Los filtros se pueden negar comenzando con ! (excepto para comparaciones numéricas). Ejemplos: !Mallory, !=Mallory, !^Mallory o !$domain.ch.
  • Use =empty para coincidir con celdas vacías, o !=empty para coincidir con celdas no vacías.
  • Use || para coincidir con cualquiera de varios valores en la misma columna (p. ej., Admin || Guest).
  • Use && para requerir múltiples coincidencias en la misma columna (p. ej., !adm && !svc && !sql).
  • Para aplicar lógica OR entre columnas, use or_, group1_, group2_... directamente en un campo de filtro. Ejemplos: en la columna 1: or_>1, en la columna 2: or_!Mallory
  • Nota: La columna DisplayName también incluye el ID del objeto (invisible), por lo que también es posible filtrar por ID.

Controles mediante Parámetros GET

  • Filtrado: Aplique filtros usando los nombres de los campos como parámetros HTTP GET, p. ej., ?EntraRoles=>1&Enabled=true.
    Para aplicar lógica OR entre columnas, use el prefijo or_ o group1_ (p. ej., ?or_EntraRoles=>0&or_GrpMem=>0).
  • Selección de Columnas: Elija qué columnas mostrar usando el parámetro columns. Ejemplo: ?columns=DisplayName,Owner.
  • Ordenación: Ordene los datos usando los parámetros sort y sortDir. Ejemplo: ?sort=Impact&sortDir=desc o ?sort=OwnerCount&sortDir=asc.
  • Detalles del Objeto: Salte directamente a un objeto específico en el informe usando un ancla (#) y el ID del objeto, p. ej., #%ObjectID%.

Clasificación

  • Impacto: Representa la cantidad o severidad de los permisos que tiene el objeto.
  • Probabilidad: Representa qué tan fácilmente puede ser influenciado el objeto o qué tan bien está protegido.
  • Riesgo: Puntaje calculado: Impacto × Probabilidad = Riesgo.
  • Importante:
    • Esta puntuación está pensada como una evaluación básica para ayudar a ordenar y priorizar las entradas en la tabla.
    • Los puntajes de riesgo no son directamente comparables entre diferentes tipos de objetos o informes.
    • No está destinada a reemplazar una evaluación de riesgo completa.

🔧Bajo el Capó

Categorización de Roles

Los roles de Entra ID y Azure se categorizan aproximadamente en diferentes niveles de nivel. Esta categorización influye en los puntajes de impacto de los objetos asignados a esos roles. El objetivo es asignar un puntaje de impacto más alto a los usuarios con roles más potentes (p. ej., Administrador Global) en comparación con los usuarios con roles menos críticos (p. ej., Lector Global), incluso si ambos son considerados roles privilegiados por Microsoft.

Nota: Para los roles de Azure, esta categorización es menos precisa, ya que el impacto real depende en gran medida del alcance de la asignación del rol. Por ejemplo, un rol de Propietario en una sola máquina virtual tiene significativamente menos impacto que cuando el mismo rol se aplica a una suscripción completa. También podría ser una suscripción de prueba sin recursos en absoluto.

Roles de Entra ID
Nombre del RolNivelGUID
Administrador Global062e90394-69f5-4237-9190-012177145e10
Soporte Nivel 2 de Partner0e00e864a-17c5-4a4b-9c06-f5b95a8d5bd8
Administrador de Autenticación Privilegiada07be44c8a-adaf-4e2a-84d6-ab2649e08a13
Administrador de Roles Privilegiados0e8611ab8-c189-46e8-94e1-60213ab1f814
Administrador de Nombres de Dominio08329153b-31d0-4727-b945-745eb3bc5f31
Administrador de Proveedor de Identidad Externo0be2f45a1-457d-42af-a067-6ec1fa63bc45
Administrador de Identidad Híbrida08ac3fc64-6eca-42ea-9e69-59f4c7b60eb2
Administrador de Aplicaciones09b895d92-2cd3-44c7-9d02-a6ac2d5ea5c3
Administrador de Aplicaciones en la Nube0158c047a-c907-4556-b7ef-446551a6b5f7
Administrador de Seguridad0194ae4cb-b126-40b2-bd5b-6091b380977d
Administrador de ID de Agente1db506228-d27e-4b7d-95e5-295956d6615f
Administrador de IA1d2562ede-74db-457e-a7b6-544e236ebb61
Administrador de Acceso Condicional1b1be1c3e-b65d-4f19-8427-f6fa0d97feb9
Administrador de Autenticación1c4e39bd9-1100-46d3-8c65-fb160da0071f
Administrador de Azure DevOps1e3973bdf-4987-49ae-837a-ba8e231c7286
Escritores de Directorio19360feb5-f418-4baa-8175-e2a00bac4301
Respondedor de Identidad SOC de Entra158f930cc-fcf4-4152-852c-1d7dbf502139
Administrador de Exchange129232cdf-9323-42fd-ade2-1d097af3e4de
Administrador de Grupos1fdd7a751-b60b-444a-984c-02652fe8fa1c
Administrador de Helpdesk1729827e3-9c14-49f7-bb1b-9608f156bbb8
Administrador de Gobernanza de Identidad145d8d3c5-c802-45c6-b32a-1d70b5e1e86e
Administrador de Intune13a2c62db-5318-420d-8d74-23affee5d9d5
Administrador de Conocimiento1b5a8dcf3-09d5-43a9-a639-8e29ef291470
Administrador de Conocimiento1744ec460-397e-42ad-a462-8b3f9747a02c
Administrador de Flujos de Trabajo de Ciclo de Vida159d46f88-662b-457b-bceb-5c3809e5908f
Cuentas de Sincronización de Directorio1d29b2b05-8046-44ba-8758-1e26182fcf32
Cuenta de Sincronización de Directorio Local1a92aed5d-d78a-4d16-b381-09adb37eb3b0
Soporte Nivel 1 de Partner14ba39ca4-527c-499a-b93d-d9b492c50246
Administrador de Contraseñas1966707d0-3269-4727-9be2-8c3a10f19b9d
Administrador de SharePoint1f28a1f50-f6e7-4571-818b-6a12f2af6b6c
Administrador de Teams169091246-20e8-4a56-aa4d-066075b2a7a8
Administrador de Usuarios1fe930be7-5e62-47db-91af-98c3a49a38b1
Administrador de Windows 365111451d60-acb2-45eb-a7d6-43d0f0125c13
Administrador de Yammer1810a2642-a034-447f-a5e8-41beaa378541
Administrador de Políticas de Autenticación20526716b-113d-4c15-b2c8-68e3c22b9f80
Administrador Local de Dispositivos Unido a Azure AD29f06204d-73c1-4d4c-880a-6edb90606fd8
Administrador de Dispositivos en la Nube27698a772-787b-4ac8-901f-60d6b08affd2
Lector Global2f2ef992c-3afb-46b9-b7cf-a126ee74c451
Invitador de Invitados295e79109-95c0-4d8e-aee3-d01accf2d47b
Lector de Seguridad25d6b6bb7-de71-4623-b4af-96380a352509
Lectores de Directorio288d8e3e3-8f55-4a1e-953a-9b9898b8876b
Roles de Azure
Nombre del RolNivelGUID
Propietario08e3af657-a8ff-443c-a75c-2fe8c4bcb635
Administrador de Acceso de Usuario018d7d88d-d35e-4fb5-a5c3-7773c20a72d9
Colaborador0b24988ac-6180-42a0-ab88-20f7382dd24c
Administrador de Control de Acceso Basado en Roles0f58310d9-a9f6-439a-9e8d-f62e7b41a168
Administrador de Reservas0a8889054-8d42-49c9-bc1c-52486c10e7cd
Administrador de Seguridad1fb1c8493-542b-48eb-b624-b4c8fea62acd
Colaborador de Máquina Virtual19980e02c-c2be-4d73-94e8-173b1dc7cf3c
Administrador de Acceso a Datos de Máquina Virtual166f75aeb-eabe-4b70-9f1e-c350c4c9ad04
Inicio de Sesión de Administrador de Máquina Virtual11c0163c0-47e6-4577-8991-ea5c82e286e4
Inicio de Sesión de Administrador de Windows Admin Center1a6333a3e-0164-44c3-b281-7a577aff287f
Colaborador de Registro de Contenedores y Administrador de Configuración de Acceso a Datos13bc748fc-213d-45c1-8d91-9da5725539b9
Administrador de Key Vault100482a5a-887f-4fb3-b363-3b7fe8e74483
Administrador de Acceso a Datos de Key Vault18b54135c-b56d-4d72-a534-26097cfdc8d8
Oficial de Secretos de Key Vault1b86a8fe4-44ce-4948-aee5-eccb2c155cd7
Usuario de Secretos de Key Vault14633458b-17de-408a-b874-0445c86b69e6
Administrador RBAC de Azure Kubernetes Service13498e952-d568-435e-9b2c-8d77e338d7f7
Administrador de Clúster RBAC de Azure Kubernetes Service1b1ff04bb-8a4e-4dc4-8eb5-8693973ce19b
Administrador de Azure Arc Kubernetes1dffb1e0c-446f-4dde-a09f-99eb5cc68b96
Administrador de Clúster de Azure Arc Kubernetes18393591c-06b9-48a2-a542-1bd6b377f6a2
Colaborador de VM de Azure Arc VMware1b748a06d-6150-4f8a-aaa9-ce3940cd96cb
Colaborador de Cuenta de Almacenamiento117d1049b-9a84-46fb-8f53-869881c3d3ab
Lector2acdd72a7-3385-48ef-bd42-f606fba81ae7
Lector de Seguridad239bc4728-0917-49c7-9d2c-d95423bc2eb4
Inicio de Sesión de Usuario de Máquina Virtual3fb879df8-f326-4884-b1cf-06f3ad86be52
Usuario de Virtualización de Escritorio31d18fff3-a72a-46b5-b4a9-0b38a3cd7e63

Categorización de Permisos de API

Ciertos permisos de API permiten que una aplicación escale directamente a privilegios de Administrador Global. Por lo tanto, varios permisos de API se categorizan en diferentes niveles de severidad. Esta categorización influye en el puntaje de impacto de las aplicaciones que tienen estos permisos asignados — ya sea como permisos de aplicación o permisos delegados para usuarios.

Permiso de Aplicación| Permission | Severity | GUID | |-------------------------------------------------------------|------------|----------------------------------------| | RoleManagement.ReadWrite.Directory | Peligroso | 9e3f62cf-ca93-4989-b6ce-bf83c28f9fe8 | | AppRoleAssignment.ReadWrite.All | Peligroso | 06b708a9-e830-4db3-a914-8e69da51d44f | | Application.ReadWrite.All | Peligroso | 1bfefb4e-e0b5-418b-a88f-73c46d2cc8e9 | | RoleAssignmentSchedule.ReadWrite.Directory | Peligroso | dd199f4a-f148-40a4-a2ec-f0069cc799ec | | PrivilegedAssignmentSchedule.ReadWrite.AzureADGroup | Peligroso | 41202f2c-f7ab-45be-b001-85c9728b9d69 | | PrivilegedAccess.ReadWrite.AzureADGroup | Peligroso | 2f6817f8-7b12-4f0f-bc18-eeaf60705a9e | | RoleEligibilitySchedule.ReadWrite.Directory | Peligroso | fee28b28-e1f3-4841-818e-2704dc62245f | | PrivilegedEligibilitySchedule.ReadWrite.AzureADGroup | Peligroso | 618b6020-bca8-4de6-99f6-ef445fa4d857 | | Domain.ReadWrite.All | Peligroso | 7e05723c-0bb0-42da-be95-ae9f08a6e53c | | Application.ReadUpdate.All | Peligroso | fc023787-fd04-4e44-9bc7-d454f00c0f0a | | AgentIdentityBlueprint.ReadWrite.All | Alto | 7fddd33b-d884-4ec0-8696-72cff90ff825 | | AgentIdentityBlueprint.AddRemoveCreds.All | Alto | 0510736e-bdfb-4b37-9a1f-89b4a074763a | | ADSynchronization.ReadWrite.All | Alto | ab43b826-2c7a-4aff-9ecd-d0629d0ca6a9 | | EntitlementManagement.ReadWrite.All | Alto | 9acd699f-1e81-4958-b001-93b1d2506e19 | | Organization.ReadWrite.All | Alto | 292d869f-3427-49a8-9dab-8c70152b74e9 | | Policy.ReadWrite.PermissionGrant | Alto | a402ca1c-2696-4531-972d-6e5ee4aa11ea | | RoleManagementPolicy.ReadWrite.AzureADGroup | Alto | b38dcc4d-a239-4ed6-aa84-6c65b284f97c | | RoleManagementPolicy.ReadWrite.Directory | Alto | 31e08e0a-d3f7-4ca2-ac39-7343fb83e8ad | | Policy.ReadWrite.AuthenticationMethod | Alto | 29c18626-4985-4dcd-85c0-193eef327366 | | User.DeleteRestore.All | Alto | eccc023d-eccf-4e7b-9683-8813ab36cecc | | User.EnableDisableAccount.All | Alto | 3011c876-62b7-4ada-afa2-506cbbecc68c | | DelegatedPermissionGrant.ReadWrite.All | Alto | 8e8e4742-1d95-4f68-9d56-6ee75648c72a | | Policy.ReadWrite.ConditionalAccess | Alto | 01c0a623-fc9b-48e9-b794-0756f8e8f067 | | DeviceManagementConfiguration.ReadWrite.All | Alto | 9241abd9-d0e6-425a-bd4f-47ba86e767a4 | | DeviceManagementRBAC.ReadWrite.All | Alto | e330c4f0-4170-414e-a55a-2f022ec2b57b | | Directory.ReadWrite.All | Alto | 19dbc75e-c2e2-444c-a770-ec69d8559fc7 | | Group.ReadWrite.All | Alto | 62a82d76-70ea-41e2-9197-370581804d09 | | GroupMember.ReadWrite.All | Alto | dbaae8cf-10b5-4b86-a4a1-f871c94c6695 | | UserAuthenticationMethod.ReadWrite.All | Alto | 50483e42-d915-4231-9639-7fdb7fd190e5 | | User-PasswordProfile.ReadWrite.All | Alto | cc117bb9-00cf-4eb8-b580-ea2a878fe8f7 | | Sites.FullControl.All | Alto | a82116e5-55eb-4c41-a434-62fe8a61c773 | | Sites.FullControl.All SharePointAPI | Alto | 678536fe-1083-478a-9c59-b99265e6b0d3 | | Sites.Manage.All SharePointAPI | Alto | 9bff6588-13f2-4c48-bbf2-ddab62256b36 | | Sites.Read.All SharePointAPI | Alto | d13f72ca-a275-4b96-b789-48ebcc4da984 | | Sites.ReadWrite.All SharePointAPI | Alto | fbcd29d2-fcca-4405-aded-518d457caae4 | | Sites.Manage.All | Alto | 0c0bf378-bf22-4481-8f81-9e89a9b4960a | | Sites.Read.All | Alto | 332a536c-c7ef-4017-ab91-336970924f0d | | Sites.ReadWrite.All | Alto | 9492366f-7969-46a4-8d15-ed1a20078fff | | Files.Read.All | Alto | 01d4889c-1287-42c6-ac1f-5d1e02578ef6 | | Files.ReadWrite.All | Alto | 75359482-378d-4052-8f01-80520e7db3cd | | DeviceLocalCredential.Read.All | Alto | db51be59-e728-414b-b800-e0f010df1a79 | | AdministrativeUnit.ReadWrite.All | Alto | 5eb59dd3-1da2-4329-8733-9dabdc435916 | | UserAuthMethod-HardwareOATH.ReadWrite.All | Alto | 7e9ebcc1-90aa-4471-8051-e68d6b4e9c89 | | UserAuthMethod-Phone.ReadWrite.All | Alto | 6e85d483-7092-4375-babe-0a94a8213a58 | | UserAuthMethod-QR.ReadWrite.All | Alto | 4869299f-18c3-40c8-98f2-222657e67db1 | | UserAuthMethod-TAP.ReadWrite.All | Alto | 627169a8-8c15-451c-861a-5b80e383de5c | | User.ReadWrite.All | Medio | 741f803b-c850-494e-b5df-cde7c675a1ca | | Application.ReadWrite.OwnedBy | Medio | 18a4783c-866b-4cc7-a460-3d5e5662c884 | | Chat.Read.All | Medio | 6b7d71aa-70aa-4810-a8d9-5d9fb2830017 | | Chat.ReadWrite.All | Medio | 294ce7c9-31ba-490a-ad7d-97a7d075e4ed | | Calendars.Read | Medio | 798ee544-9d2d-430c-a058-570e29e34338 | | Calendars.ReadWrite | Medio | ef54d2bf-783f-4e0f-bca1-3210c0444d99 | | Mail.Read | Medio | 810c84a8-4a9e-49e6-bf7d-12d183f40d01 | | Mail.ReadWrite | Medio | e2a3a72e-5f79-4c64-b1b1-878b674786c9 | | BitlockerKey.Read.All | Medio | 57f1cf28-c0c4-4ec3-9a30-19a2eaaf2f6e | | Mail.Send | Medio | b633e1c5-b582-4048-a93e-9f11b44c7e96 | | OnlineMeetings.ReadWrite.All | Medio | b8bb2037-6e08-44ac-a4ea-4674e010e2a4 | | CustomSecAttributeAssignment.ReadWrite.All | Medio | de89b5e4-5b8f-48eb-8925-29c2b33bd8bd | | ServicePrincipalEndpoint.ReadWrite.All | Medio | 89c8469c-83ad-45f7-8ff2-6e3d4285709e | | AgentIdUser.ReadWrite.IdentityParentedBy | Medio | 4aa6e624-eee0-40ab-bdd8-f9639038a614 | | AgentIdentity.CreateAsManager | Bajo | 4c390976-b2b7-42e0-9187-c6be3bead001 |
Permiso delegado
PermissionSeverityGUID
RoleManagement.ReadWrite.DirectoryPeligrosod01b97e9-cbc0-49fe-810a-750afd5527a3
AppRoleAssignment.ReadWrite.AllPeligroso84bccea3-f856-4a8a-967b-dbe0a3d53a64
Application.ReadWrite.AllPeligrosobdfbf15f-ee85-4955-8675-146e8e5296b5
RoleAssignmentSchedule.ReadWrite.DirectoryPeligroso8c026be3-8e26-4774-9372-8d5d6f21daff
PrivilegedAssignmentSchedule.ReadWrite.AzureADGroupPeligroso06dbc45d-6708-4ef0-a797-f797ee68bf4b
PrivilegedAccess.ReadWrite.AzureADGroupPeligroso32531c59-1f32-461f-b8df-6f8a3b89f73b
RoleEligibilitySchedule.ReadWrite.DirectoryPeligroso62ade113-f8e0-4bf9-a6ba-5acb31db32fd
PrivilegedEligibilitySchedule.ReadWrite.AzureADGroupPeligrosoba974594-d163-484e-ba39-c330d5897667
Domain.ReadWrite.AllPeligroso0b5d694c-a244-4bde-86e6-eb5cd07730fe
Application.ReadUpdate.AllPeligroso0586a906-4d89-4de8-b3c8-1aacdcc0c679
AgentIdentityBlueprint.AddRemoveCreds.AllAlto75b5feb2-bfe7-423f-907d-cc505186f246
AgentIdentityBlueprint.ReadWrite.AllAlto4fd490fc-1467-48eb-8a4c-421597ab0402
EntitlementManagement.ReadWrite.AllAltoae7a573d-81d7-432b-ad44-4ed5c9d89038
Organization.ReadWrite.AllAlto46ca0847-7e6b-426e-9775-ea810a948356
Policy.ReadWrite.PermissionGrantAlto2672f8bb-fd5e-42e0-85e1-ec764dd2614e
RoleManagementPolicy.ReadWrite.AzureADGroupAlto0da165c7-3f15-4236-b733-c0b0f6abe41d
RoleManagementPolicy.ReadWrite.DirectoryAlto1ff1be21-34eb-448c-9ac9-ce1f506b2a68
Policy.ReadWrite.AuthenticationMethodAlto7e823077-d88e-468f-a337-e18f1f0e6c7c
User.DeleteRestore.AllAlto4bb440cd-2cf2-4f90-8004-aa2acd2537c5
User.EnableDisableAccount.AllAltof92e74e7-2563-467f-9dd0-902688cb5863
DelegatedPermissionGrant.ReadWrite.AllAlto41ce6ca6-6826-4807-84f1-1c82854f7ee5
Policy.ReadWrite.ConditionalAccessAltoad902697-1014-4ef5-81ef-2b4301988e8c
DeviceManagementConfiguration.ReadWrite.AllAlto0883f392-0a7a-443d-8c76-16a6d39c7b63
DeviceManagementRBAC.ReadWrite.AllAlto0c5e8a55-87a6-4556-93ab-adc52c4d862d
Directory.ReadWrite.AllAltoc5366453-9fb0-48a5-a156-24f0c49a4b84
Group.ReadWrite.AllAlto4e46008b-f24c-477d-8fff-7bb4ec7aafe0
GroupMember.ReadWrite.AllAltof81125ac-d3b7-4573-a3b2-7099cc39df9e
UserAuthenticationMethod.ReadWrite.AllAltob7887744-6746-4312-813d-72daeaee7e2d
Sites.FullControl.AllAlto5a54b8b3-347c-476d-8f8e-42d5c7424d29
Sites.Manage.AllAlto65e50fdc-43b7-4915-933e-e8138f11f40a
User-PasswordProfile.ReadWrite.AllAlto56760768-b641-451f-8906-e1b8ab31bca7
Sites.Read.AllAlto205e70e5-aba6-4c52-a976-6d2d46c48043
Sites.ReadWrite.AllAlto89fe6a52-be36-487e-b7d8-d061c450a026
Files.Read.AllAltodf85f4d6-205c-4ac5-a5ea-6bf408dba283
Files.ReadWrite.AllAlto863451e7-0667-486c-a5d6-d135439485f0
DeviceLocalCredential.Read.AllAlto9917900e-410b-4d15-846e-42a357488545
UserAuthMethod-Phone.ReadWriteAlto6c4aad61-f76b-46ad-a22c-57d4d3d962af
UserAuthMethod-Phone.ReadWrite.AllAlto48c99302-9a24-4f27-a8a7-acef4debba14
UserAuthMethod-Password.ReadWrite.AllAlto7f5b683d-df96-4690-a88d-6e336ed6dc7c
UserAuthMethod-Password.ReadWriteAlto60cce20d-d41e-4594-b391-84bbf8cc31f3
AdministrativeUnit.ReadWrite.AllAlto7b8a2d34-6b3f-4542-a343-54651608ad81
User.ReadWrite.AllMedio204e0828-b5ca-4ad8-b9f3-f32a958e7cc4
Chat.ReadWrite.AllMedio7e9a077b-3711-42b9-b7cb-5fa5f3f7fea7
Mail.ReadMedio570282fd-fa5c-430d-a7fd-fc8dc98a9dca
Mail.ReadWriteMedio024d486e-b451-40bb-833d-3e66d98c5c73
Mail.SendMedioe383f46e-2787-4529-855e-0e479a3ffac0
CustomSecAttributeAssignment.ReadWrite.AllMedioca46335e-8453-47cd-a001-8459884efeae
ServicePrincipalEndpoint.ReadWrite.AllMedio7297d82c-9546-4aed-91df-3d4f0a9b3ff0
BitlockerKey.Read.AllMediob27a61ec-b99c-4d6a-b126-c4375d08ae30
AiEnterpriseInteraction.ReadMedio859cceb9-2ec2-4e48-bcd7-b8490b5248a5
Calendars.ReadMedio465a38f9-76ea-45b9-9f34-9e8b0d4b0b42
Calendars.Read.SharedMedio2b9c4092-424d-4249-948d-b43879977640
Calendars.ReadWriteMedio1ec239c2-d7c9-4623-a91a-a9775856bb36
Calendars.ReadWrite.SharedMedio12466101-c9b8-439a-8589-dd09ee67e8e9
ChannelMessage.EditMedio2b61aa8a-6d36-4b2f-ac7b-f29867937c53
ChannelMessage.ReadWriteMedio5922d31f-46c8-4404-9eaf-2117e390a8a4
ChannelMessage.SendMedioebf0f66e-9fb1-49e4-a278-222f76911cf4
ChatMessage.SendMedio116b7235-7cc6-461e-b163-8e55691d839e
Chat.ReadWriteMedio9ff7295e-131b-4d94-90e1-69fde507ac11
Contacts.ReadWriteMediod56682ec-c09e-4743-aaf4-1a3aac4caa21
Directory.AccessAsUser.AllMedio0e263e50-5827-48a4-b97c-d940288653c7
Directory.Read.AllMedio06da0dbc-49e2-44d2-8312-53f166ab848a
EAS.AccessAsUser.AllMedioff91d191-45a0-43fd-b837-bd682c4a0b0f
EntitlementMgmt-SubjectAccess.ReadWriteMedioe9fdcbbb-8807-410f-b9ec-8d5468c7c2ac
EWS.AccessAsUser.AllMedio9769c687-087d-48ac-9cb3-c37dde652038
Files.ReadWriteMedio5c28f0bf-8a70-41f1-8ab2-9032436ddb65
IMAP.AccessAsUser.AllMedio652390e4-393a-48de-9484-05f9b1212954
MailboxItem.ImportExportMediodf96e8a0-f4e1-4ecf-8d83-a429f822cbd6
MailboxFolder.ReadMedio52dc2051-4958-4636-8f2a-281d39c6981c
MailboxFolder.ReadWriteMedio077fde41-7e0b-4c5b-bcd1-e9d743a30c80
MailboxItem.ReadMedio82305458-296d-4edd-8b0b-74dd74c34526
MailboxSettings.ReadWriteMedio818c620a-27a9-40bd-a6a5-d96f7d610b4b
Notes.ReadMedio371361e4-b9e2-4a3f-8315-2a301a3b0a3d
Notes.Read.AllMediodfabfca6-ee36-4db2-8208-7a28381419b3
Notes.ReadWriteMedio615e26af-c38a-4150-ae3e-c3b0d4cb1d6a
Notes.ReadWrite.AllMedio64ac0503-b4fa-45d9-b544-71a463f05da0
POP.AccessAsUser.AllMediod7b7f2d9-0f45-4ea1-9d42-e50810c06991
offline_accessBajo7427e0e9-2fba-42fe-b0c0-848c9e6a8182
openidBajo37f7f235-527c-4136-accd-4a02d197296e
emailBajo64a6cdd6-aab1-4aaf-94b8-3cc8405e90d0
profileBajo14dad69e-099b-42c9-810b-d002981feec1
User.ReadBajoe1fe6dd8-ba31-4d61-89e7-88639da4683d

Aplicaciones empresariales de Microsoft de primera parte

De forma predeterminada, las aplicaciones de Microsoft se filtran para simplificar la revisión de las aplicaciones empresariales. Use el modificador -IncludeMsApps para incluirlas. Las aplicaciones de los siguientes inquilinos se tratan como propiedad de Microsoft:

  • f8cdef31-a31e-4b4a-93e4-5f571e91255a
  • 72f988bf-86f1-41af-91ab-2d7cd011db47
  • 33e01921-4d64-4f8c-a055-5bdaffd5e33d
  • cdc5aeea-15c5-4db6-b079-fcadd2505dc2

Comprobaciones realizadas

La siguiente tabla resume de forma aproximada las comprobaciones realizadas, junto con su impacto en la puntuación y si se muestra una advertencia.

Comprobaciones realizadas|Área|Comprobación|Impacta en la puntuación|Advertencia mostrada| |-|-|-|-| |Grupos|Es un grupo público de M365|Sí|Sí| |Grupos|Es dinámico / Es dinámico y consulta potencialmente peligrosa|Sí|Sí| |Grupos|Roles de Entra (Activos y Elegibles)|Sí|Sí| |Grupos|Roles de Azure (Activos y Elegibles)|Sí|Sí| |Grupos|Usado para AppRole|Sí|Sí| |Grupos|SP interno/externo como propietario|Sí|Sí| |Grupos|En AU restringido|Sí|Sí| |Grupos|Anidado en grupo privilegiado|Sí|Sí| |Grupos|Usado en CAP|Sí|Sí| |Grupos|Tipo de grupo|Sí|No| |Grupos|Seguridad habilitada|Sí|No| |Grupos|Miembro anidado activo|Sí|No| |Grupos|Propietarios|Sí|No| |Grupos|Propietarios anidados|Sí|No| |Grupos|Invitado como propietario|Sí|Sí| |Grupos|Sincronización local|Sí|No| |Grupos|Miembros (transitivos)|Sí|No| |Grupos|Asignable a roles|Sí|No| |Grupos|PIM para Grupos: Incorporado|No|No| |Grupos|PIM para Grupos: Miembro elegible de grupo privilegiado|Sí|Sí| |Grupos|PIM para Grupos: Propietario elegible de grupo privilegiado|Sí|Sí| |Grupos|PIM para Grupos: Grupo no protegido anidado en grupo protegido|No|Sí| |EnterpriseApp|Rol de Entra|Sí|Sí| |EnterpriseApp|Rol de Azure|Sí|Sí| |EnterpriseApp|Externo|Sí|No| |EnterpriseApp|Deshabilitado por Microsoft|No|Sí| |EnterpriseApp|Nombre sospechoso (caracteres similares)|Sí|Sí| |EnterpriseApp|Permiso de API (Aplicación)|Sí|Sí| |EnterpriseApp|Permiso de API (Delegado)|Sí|Sí| |EnterpriseApp|Credenciales|Sí|Sí| |EnterpriseApp|Propietarios|Sí|Sí| |EnterpriseApp|Propiedad sobre registros de aplicaciones|Sí|Sí| |EnterpriseApp|Propiedad de otras entidades de servicio|Sí|Sí| |EnterpriseApp|AppLock|(Sí)|No| |EnterpriseApp|La aplicación posee un AppRegistration|Sí|Sí| |EnterpriseApp|Miembro / propietario de grupos|Sí|(Sí)| |EnterpriseApp|AppRoles|Sí|No| |EnterpriseApp|Requisitos de AppRole|Sí|No| |EnterpriseApp|Inactiva|No|No| |EnterpriseApp|Último inicio de sesión correcto (días)|No|No| |AppRegistrations|Credenciales|Sí|Sí| |AppRegistrations|Aplicación de Entra Connect con credenciales|Sí|Sí| |AppRegistrations|Aplicación de Entra Connect con múltiples certificados|Sí|Sí| |AppRegistrations|AppRoles|Sí|No| |AppRegistrations|AppRedirectURL|No|No| |AppRegistrations|AppLock|Sí|No| |AppRegistrations|Propietarios|Sí|Sí| |AppRegistrations|Administradores de aplicaciones (nube) con ámbito|No|No| |AppRegistrations|Privilegios de la SP correspondiente|Sí|No| |AppRegistrations|Audiencia de inicio de sesión|No|No| |ManagedIdentity|Propietarios|Sí|Sí| |ManagedIdentity|Rol de Entra|Sí|Sí| |ManagedIdentity|Rol de Azure|Sí|Sí| |ManagedIdentity|API (App)|Sí|Sí| |ManagedIdentity|Propiedad sobre registros de aplicaciones|Sí|Sí| |ManagedIdentity|Propiedad de otras entidades de servicio|Sí|Sí| |ManagedIdentity|Miembro / propietario de grupos|Sí|(Sí)| |Usuario|Roles de Entra (Activos y Elegibles)|Sí|Sí| |Usuario|Roles de Azure (Activos y Elegibles)|Sí|Sí| |Usuario|Membresía de grupo privilegiado (Activa y Elegible)|Sí|Sí| |Usuario|Propiedad de grupo privilegiado (Activa y Elegible)|Sí|Sí| |Usuario|Usuario sincronizado con Entra Connect|Sí|Sí| |Usuario|Usuario sincronizado con Entra Connect Cloud Sync|Sí|Sí| |Usuario|Propiedad de AppRegistration|Sí|Sí| |Usuario|Propiedad de EnterpriseApplication|Sí|Sí| |Usuario|Sin factor MFA registrado|Sí|Sí| |Usuario|Está protegido|Sí|No| |Usuario|Inactivo|No|No| |Usuario|Miembro / propietario de grupos|Sí|(Sí)| |Usuario|Sincronizado desde local|Sí|No| |AgentIdentity|Usuarios de agente vinculados|Sí|No| |AgentIdentity|Origen de principal de blueprint externo|Sí|Sí| |AgentIdentity|Permiso de API efectivo (Aplicación)|Sí|Sí| |AgentIdentity|Permiso de API efectivo (Delegado)|Sí|Sí| |AgentIdentity|Rol de Entra|Sí|Sí| |AgentIdentity|Rol de Azure|Sí|Sí| |AgentIdentity|Propiedad sobre registros de aplicaciones|Sí|Sí| |AgentIdentity|Propiedad de otras entidades de servicio|Sí|Sí| |AgentIdentity|Miembro / propietario de grupos|Sí|(Sí)| |AgentIdentityBlueprintPrincipal|Identidades de agente vinculadas|Sí|No| |AgentIdentityBlueprintPrincipal|Usuarios de agente vinculados|Sí|No| |AgentIdentityBlueprintPrincipal|Permiso de API configurado (Aplicación)|No|No| |AgentIdentityBlueprintPrincipal|Permiso de API configurado (Delegado)|No|No| |AgentIdentityBlueprintPrincipal|Origen de blueprint principal externo|Sí|No| |AgentIdentityBlueprintPrincipal|Rol de Entra|No|No| |AgentIdentityBlueprintPrincipal|Rol de Azure|No|No| |AgentIdentityBlueprintPrincipal|Nombre sospechoso (caracteres similares)|Sí|Sí| |AgentIdentityBlueprint|Principales de blueprint|Sí|No| |AgentIdentityBlueprint|Identidades de agente vinculadas|Sí|No| |AgentIdentityBlueprint|Usuarios de agente vinculados|Sí|No| |AgentIdentityBlueprint|Permisos de API heredables|Sí|No| |AgentIdentityBlueprint|Credenciales federadas|Sí|No| |AgentIdentityBlueprint|Secretos / certificados|Sí|Sí| |AgentIdentityBlueprint|Propietarios / patrocinadores|Sí|(Sí)| |AccessPackages|Roles de Entra concedidos|Sí|No| |AccessPackages|Roles de Azure concedidos|Sí|No| |AccessPackages|Grupos concedidos|Sí|No| |AccessPackages|Roles de aplicación concedidos|Sí|No| |AccessPackages|Permisos de API concedidos (Aplicación)|Sí|No| |AccessPackages|Permisos de API concedidos (Delegado)|Sí|No| |AccessPackages|Acceso a SharePoint concedido|Sí|No| |AccessPackages|Autosolicitud amplia sin aprobación|Sí|Sí| |AccessPackages|Acceso persistente sin expiración ni revisión de acceso|No|No| |AccessPackages|Reglas de asignación automática peligrosas|Sí|Sí| |AccessPackages|Autosolicitud mediante objetivos de grupo no protegidos|Sí|Sí| |AccessPackages|Asignación amplia en nombre de no usuarios sin aprobación|Sí|No| |AccessPackages|Asignaciones de entidades de servicio|Sí|No| |Catálogos|Metadatos, estado y visibilidad externa del catálogo|No|No| |Catálogos|Recursos del catálogo|No|No| |Catálogos|Recursos configurables en nuevos Access Packages|Sí|No| |Catálogos|Recursos y roles configurados en Access Packages existentes|Sí|No| |Catálogos|Recursos de catálogo no configurados|Sí|No| |Catálogos|Asignaciones RBAC del catálogo|Sí|Sí| |CAP|Sin política o política mal configurada para autenticación heredada|-|Sí| |CAP|Sin política o política mal configurada para bloquear el flujo de código de dispositivo|-|Sí| |CAP|Sin política o política mal configurada para limitar los registros de información de seguridad|-|Sí| |CAP|Sin política o política mal configurada para dirigir inicios de sesión de riesgo|-|Sí| |CAP|Sin política o política mal configurada para dirigir riesgo de usuario|-|Sí| |CAP|Sin política o política mal configurada que exija MFA|-|Sí| |CAP|Sin política que exija Authentication Strength|-|Sí| |CAP|Inclusión de roles que tienen asignaciones con ámbito|-|Sí| |PIMSettings|AuthContext|-|Sí| |PIMSettings|CAP vinculado a AuthContext: Frecuencia de inicio de sesión|-|Sí| |PIMSettings|CAP vinculado a AuthContext: MFA o AuthStrength|-|Sí| |PIMSettings|CAP vinculado a AuthContext: Habilitado|-|Sí| |PIMSettings|CAP vinculado a AuthContext: Usuarios/grupos/redes incluidos/excluidos|-|Sí| |PIMSettings|CAP vinculado a AuthContext: Condiciones|-|Sí| |PIMSettings|MFA de activación|-|No| |PIMSettings|Justificación o ticket de activación|-|Sí| |PIMSettings|Duración de activación|-|Sí| |PIMSettings|Aprobación de activación|-|Sí| |PIMSettings|Expiración de asignación elegible|-|No| |PIMSettings|Expiración de asignación activa|-|Sí| |PIMSettings|MFA de asignaciones activas|-|No| |PIMSettings|Notificación de activación de rol|-|No| |PIMSettings|Notificación de asignación de rol (activa)|-|No| |PIMSettings|Notificación de asignación de rol (elegible)|-|No|

🛡️ Detección

EntraFalcon no es sigiloso y puede ser detectado en entornos donde se registran y supervisan la actividad de Microsoft Graph API y los inicios de sesión de Azure.

Autenticación predeterminada utilizada

Cuando se realiza una enumeración completa con flujos no BroCi, la herramienta normalmente inicia cuatro inicios de sesión interactivos y uno no interactivo. Dependiendo del flujo y la compatibilidad del punto de conexión, puede ocurrir un inicio de sesión interactivo adicional para los puntos de conexión de políticas de Security Findings.

ID de aplicaciónTipoID de recursoPropósito
1b730954-1685-4b74-9bfd-dac224a7b894Interactivo00000003-0000-0000-c000-000000000000Recuperar datos de PIM para Grupos
04b07795-8ddb-461a-bbee-02f9e1bf7b46Interactivo00000003-0000-0000-c000-000000000000Recuperar datos generales de objetos del inquilino
51f81489-12ee-4a9e-aaae-a2591f45987dInteractivo00000003-0000-0000-c000-000000000000Recuperar PIM para roles de Entra / Azure
80ccca67-54bd-44ab-8625-4b79c4dc7775Interactivo00000003-0000-0000-c000-000000000000Recuperar contexto de políticas de Security Findings
04b07795-8ddb-461a-bbee-02f9e1bf7b46No interactivo797f4846-ba00-4fd7-ba43-dac1f8f63013Recuperar datos de asignaciones de roles IAM de Azure

Autenticación BroCi utilizada

Cuando se utiliza la autenticación BroCi, solo ocurre un inicio de sesión interactivo.

ID de aplicaciónTipoID de recursoPropósito
c44b4083-3bb0-49c1-b47d-974e53cbdf3cInteractivo00000003-0000-0000-c000-000000000000Autenticación inicial para usar el token de actualización para BroCi
50aaa389-5a33-4f1a-91d7-2c45ecd8dac8No interactivo00000003-0000-0000-c000-000000000000Recuperar datos de PIM para Grupos
50aaa389-5a33-4f1a-91d7-2c45ecd8dac8No interactivo01fc33a7-78ba-4d2f-a4b7-768e336e890eRecuperar datos de PIM para Grupos
74658136-14ec-4630-ad9b-26e160ff0fc6No interactivo00000003-0000-0000-c000-000000000000Recuperar datos generales de objetos del inquilino
74658136-14ec-4630-ad9b-26e160ff0fc6No interactivo797f4846-ba00-4fd7-ba43-dac1f8f63013Recuperar datos de asignaciones de roles IAM de Azure

Cuando BroCi está habilitado, EntraFalcon también consulta api.azrbac.mspim.azure.com para PIM para Grupos.

Detalles

Para la recopilación de datos, la herramienta envía múltiples solicitudes a Microsoft Graph API y, opcionalmente, a Azure ARM API—una o más por objeto. Cuando es posible, aprovecha el punto de conexión Graph Batch para reducir el número de solicitudes individuales y mejorar la eficiencia.

Los inicios de sesión interactivos utilizan el User-Agent del navegador. Todos los inicios de sesión no interactivos y las solicitudes de API (Graph y ARM) utilizan EntraFalcon como User-Agent, a menos que se cambie con el parámetro -UserAgent.

Para detectar el uso de EntraFalcon, los equipos azules pueden monitorear los ID de aplicación enumerados en los registros de inicio de sesión, buscar volúmenes inusuales de tráfico de Graph API, o analizar el comportamiento de actualización de tokens y solicitudes por lotes.

🕳️ Limitaciones conocidas

  • RBAC de M365: No evaluado
  • RBAC de Defender for Endpoint: No evaluado
  • Cobertura de usuarios de Conditional Access: La cobertura efectiva de usuarios y -ExportCapUncoveredUsers son cálculos de mejor esfuerzo basados en usuarios enumerados, miembros de grupos, asignaciones de roles y categorías de usuarios externos resolubles. Los selectores de usuarios externos solo se resuelven para usuarios invitados del inquilino que coinciden con b2bCollaborationGuest. Otros tipos de usuarios externos o usuarios externos con inquilinos externos especificados pueden hacer que los valores de cobertura sean aproximados. Las rutas elegibles de PIM se informan como cobertura potencial y no se cuentan como cubiertas actualmente. La exportación CSV se limita a políticas habilitadas y usuarios habilitados.
  • Entorno en la nube: Las plataformas en la nube evolucionan rápidamente. Como resultado, algunas evaluaciones o detecciones pueden volverse obsoletas o inexactas con el tiempo. Además, los inquilinos son cada vez más complejos, y configuraciones específicas o combinaciones de ajustes pueden llevar a resultados inexactos. Si bien nos esforzamos por mantener EntraFalcon actualizado, siempre se recomienda validar los hallazgos de forma independiente y no confiar únicamente en la herramienta para decisiones críticas.
  • Informes HTML: Los informes HTML generados no implementan mecanismos de protección contra cross-site scripting (XSS).

📦 Herramientas externas integradas

Los siguientes submódulos han sido bifurcados e integrados en EntraFalcon para soportar la autenticación, la interacción con Microsoft Graph y los gráficos de informes:

Categorías