
EntraFalcon V20260824
Uma ferramenta PowerShell leve para avaliar a postura de segurança de ambientes Microsoft Entra ID. Ela ajuda a identificar objetos privilegiados, atribuições arriscadas e possíveis configurações incorretas.
EntraFalcon

EntraFalcon é uma ferramenta de avaliação baseada em PowerShell para pentesters, analistas de segurança e administradores de sistemas avaliarem a postura de segurança de um ambiente Microsoft Entra ID.
Projetada para facilidade de uso, a EntraFalcon é executada no PowerShell 5.1 e 7, suporta Windows e Linux, e não requer módulos PowerShell adicionais, instalações extras ou consentimento da API do Microsoft Graph.
A ferramenta ajuda a descobrir objetos privilegiados, atribuições potencialmente arriscadas e configurações incorretas de Acesso Condicional que muitas vezes passam despercebidas, tais como:
- Usuários com controle sobre grupos ou aplicações de alto privilégio
- Aplicações empresariais externas ou internas com permissões excessivas (por exemplo, API do Microsoft Graph, funções do Azure)
- Usuários com atribuições de função IAM do Azure diretamente em recursos
- Contas privilegiadas sincronizadas a partir do ambiente local
- Usuários inativos ou usuários sem capacidade de MFA
- Grupos desprotegidos usados em atribuições sensíveis (por exemplo, exclusões de Acesso Condicional, Proprietário da Subscrição ou membro elegível de um grupo privilegiado)
Os resultados são apresentados em relatórios HTML interativos para apoiar uma exploração e análise eficientes.
🚀 Funcionalidades
- Script PowerShell simples compatível com PowerShell 5.1 e 7. Funciona em Windows e Linux
- Autenticação integrada com suporte a múltiplos métodos
- Utiliza aplicações Microsoft de primeira linha com escopos pré-consentidos para contornar os pedidos de consentimento da API Graph
- Gera relatórios HTML navegáveis que suportam filtragem, ordenação, exportação de dados, etc.
- Realiza mais de 90 verificações automatizadas e resume os resultados num Relatório de Constatações de Segurança
- Inclui verificações para configurações fracas do tenant e propriedades ou permissões de objetos arriscadas
- Fornece classificações de severidade, bem como descrições do problema, ameaças potenciais e orientações de remediação
- Lista os objetos afetados e liga diretamente aos seus relatórios detalhados para investigação adicional
- Realiza pontuação básica de impacto, probabilidade e risco para destacar objetos de alto privilégio fracamente protegidos e ordenar os dados.
- Apresenta avisos para configurações arriscadas e privilégios elevados
- Enumera objetos do Entra ID, incluindo:
- Utilizadores (incluindo Utilizadores Agente)
- Grupos
- Aplicações Empresariais
- Registos de Aplicações
- Identidades Geridas
- Identidades de agente
- Principais de blueprint de identidade de agente
- Blueprints de identidade de agente
- Atribuições PIM:
- PIM para Funções Entra
- PIM para Grupos
- PIM para Funções Azure
- Atribuições de Funções Entra
- Atribuições de Funções Azure
- Atribuições RBAC do Intune
- Pacotes de Acesso
- Catálogos de Gestão de Direitos
- RBAC de Catálogo
- Políticas de Acesso Condicional
- Unidades Administrativas
- Definições PIM:
- PIM para Funções Entra
- PIM para Grupos (apenas autenticação BroCi)
✅ Requisitos
| Tipo | Permissão | Obrigatório | Impacto se em falta |
|---|---|---|---|
| Função Entra ID | Leitor Global | Sim | Não é possível executar os scripts |
| Função Azure | Leitor: Em cada Grupo de Gestão ou Subscrição | Não | Não é possível avaliar atribuições IAM do Azure |
Além disso, deve ser capaz de autenticar na API do Microsoft Graph e, opcionalmente, na API Azure ARM a partir do dispositivo onde executa a ferramenta. Certifique-se de que as Políticas de Acesso Condicional não bloqueiam a sua autenticação.
▶️ Utilização
Descarregar EntraFalcon
Para começar, clone o repositório e navegue até ao diretório do projeto:```powershell git clone https://github.com/CompassSecurity/EntraFalcon cd EntraFalcon
Nota: Talvez seja necessário alterar temporariamente a política de execução do PowerShell para executar o script.
Faça isso apenas para scripts confiáveis!```
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope Process
Executar o EntraFalcon
O EntraFalcon inclui suporte integrado para autenticação do Entra ID. Use -AuthFlow para selecionar o fluxo de autenticação.
Para avaliações normais, use um dos fluxos de cobertura total:
| Fluxo Recomendado | Melhor Para | Plataforma | Cobertura |
|---|---|---|---|
BroCi (padrão) | Execuções interativas no Windows | Windows | Total |
BroCiManualCode | Autenticação em outro navegador | Windows, Linux, macOS | Total |
BroCiToken | Token de atualização existente do Portal do Azure | Windows, Linux, macOS | Total |
ServicePrincipal | Automação / CI | Windows, Linux, macOS | Total |
BroCi usa um login interativo. BroCiToken e ServicePrincipal não usam nenhum. Os fluxos de usuário de fallback podem exigir múltiplos logins interativos porque tokens de recursos separados são solicitados.
Fluxos de Autenticação de Fallback
Devido à falta de aplicativos primários pré-consentidos, os fluxos de fallback não podem realizar a enumeração completa (PIM for Groups, Access Packages, Catalogs). Portanto, atualmente permanecem apenas como opções de fallback.
| Fluxo | Use Apenas Quando | Plataforma | Limitações |
|---|---|---|---|
AuthCode | A compatibilidade legada é necessária | Windows | Cobertura parcial. Sem relatório autônomo de PIM for Groups, Access Packages ou Catalogs. |
DeviceCode | A autenticação baseada em navegador não é possível | Windows, Linux, macOS | Cobertura parcial. Sem relatório autônomo de PIM for Groups, Access Packages ou Catalogs. Algumas verificações de Security Findings são executadas com profundidade reduzida. |
ManualCode | A autenticação deve ser concluída através de uma sessão de navegador separada | Windows, Linux, macOS | Cobertura parcial. Sem relatório autônomo de PIM for Groups, Access Packages ou Catalogs. |
Recomendado: Fluxo BroCi (padrão / somente Windows)
O BroCi usa aplicativos primários alternativos e requer apenas um login interativo.
É útil quando o cliente Azure Active Directory PowerShell requer atribuição e deve ser evitado.```powershell
.\run_EntraFalcon.ps1
Seleção explícita de BroCi:```powershell
.\run_EntraFalcon.ps1 -AuthFlow BroCi
Recomendado: BroCi + Fluxo de Código Manual```powershell
.\run_EntraFalcon.ps1 -AuthFlow BroCiManualCode
1. O script copia a URL de autenticação para a área de transferência.
2. Cole a URL em um navegador (opcionalmente em outro dispositivo para suporte a SSO).
3. Abra as ferramentas de desenvolvedor do navegador e, na aba Network, ative `Preserve log`.
4. Conclua a autenticação.
5. Pesquise no log de rede por `code=1.` e copie a URL da requisição contendo o código para a área de transferência.
6. Pressione Enter para continuar; o script lê o código da área de transferência e conclui a aquisição do token.