
EvilMist is a collection of scripts and utilities designed to support cloud penetration testing & red teaming. The toolkit helps identify misconfigurations, assess privilege-escalation paths, and simulate attack techniques. EvilMist aims to streamline cloud-focused red-team workflows and improve the overall security posture of cloud infrastructures
EvilMist é uma coleção de scripts e utilitários projetados para apoiar auditoria de configuração de segurança em nuvem, teste de penetração em nuvem e operações de equipe vermelha em nuvem. O kit de ferramentas ajuda a identificar configurações incorretas, avaliar caminhos de escalonamento de privilégios e simular técnicas de ataque. O EvilMist visa otimizar fluxos de trabalho de equipe vermelha focados em nuvem e melhorar a postura geral de segurança de infraestruturas em nuvem.
Ferramenta de enumeração e reconhecimento não autenticada do Azure/Entra ID. Realiza enumeração passiva/semipassiva usando APIs publicamente acessíveis e consultas DNS sem exigir tokens de autenticação.
Principais Recursos:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraEnum-PS1.md | scripts/powershell/Invoke-EntraEnum.ps1 |
Ferramenta abrangente de enumeração de usuários e avaliação de segurança do Azure Entra ID (Azure AD), disponível nas versões PowerShell e Python.
Principais Recursos:
/users está bloqueado| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraRecon-PS1.md | scripts/powershell/Invoke-EntraRecon.ps1 |
| Python | EntraRecon-PY.md |
Ferramenta focada de avaliação de segurança para identificar usuários do Azure Entra ID sem Autenticação Multifator (MFA) habilitada. Inclui recursos avançados para detecção de caixas de correio compartilhadas e análise de atividade de login.
Principais Recursos:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraMFACheck-PS1.md | scripts/powershell/Invoke-EntraMFACheck.ps1 |
Ferramenta abrangente de análise de contas convidadas para identificar, analisar e avaliar a postura de segurança de usuários externos no Azure Entra ID. Essencial para governança de acesso de convidados e auditorias de segurança.
Principais Recursos:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraGuestCheck-PS1.md | scripts/powershell/Invoke-EntraGuestCheck.ps1 |
Ferramenta abrangente de avaliação de segurança para identificar usuários do Azure Entra ID com acesso a 10 aplicativos administrativos críticos, incluindo ferramentas PowerShell, portais de gerenciamento, principais serviços do Microsoft 365 e gerenciamento de identidades privilegiadas. Essencial para governança de acesso privilegiado e auditoria de ferramentas administrativas.
Principais Recursos:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraAppAccess-PS1.md | scripts/powershell/Invoke-EntraAppAccess.ps1 |
Execute qualquer script a partir do diretório raiz sem navegar para subpastas:```powershell
.\Invoke-EvilMist.ps1
.\Invoke-EvilMist.ps1 -Script EntraRecon -ExportPath "users.csv"
.\Invoke-EvilMist.ps1 -List
.\Invoke-EvilMist.ps1 -Script EntraMFACheck -Matrix -OnlyNoMFA
**Scripts disponíveis:** EntraEnum, EntraRecon, EntraMFACheck, EntraGuestCheck, EntraAppAccess, EntraRoleCheck, EntraServicePrincipalCheck, EntraConditionalAccessCheck, EntraAdminUnitCheck, EntraStaleAccountCheck, EntraDeviceCheck, EntraSSPRCheck, EntraPasswordPolicyCheck, EntraLegacyAuthCheck, EntraLicenseCheck, EntraDirectorySyncCheck, EntraPowerPlatformCheck, EntraGroupCheck, EntraApplicationCheck, EntraAttackPathCheck, EntraAzureRBACCheck, EntraOAuthConsentCheck, EntraSignInRiskCheck, EntraPIMCheck, EntraKeyVaultCheck, EntraStorageAccountCheck, EntraNetworkSecurityCheck, EntraManagedIdentityCheck, EntraExchangeCheck, EntraSharePointCheck, EntraTeamsCheck, EntraAzureAttackPathCheck, EntraReport, EntraComplianceCheck, SharePointEnum
### Enumeração não autenticada do Entra ID (PowerShell)
**Requisitos:** PowerShell 7+ (nenhum módulo adicional necessário)```powershell
# Basic domain enumeration (TenantInfo, DomainRealm, DNS)
.\Invoke-EvilMist.ps1 -Script EntraEnum -Domain example.com
# Check if email exists
.\Invoke-EvilMist.ps1 -Script EntraEnum -Email [email protected] -UserEnum
# Bulk user enumeration from file
.\Invoke-EvilMist.ps1 -Script EntraEnum -EmailList users.txt -UserEnum -Throttle 1
# Full enumeration with export
.\Invoke-EvilMist.ps1 -Script EntraEnum -Domain example.com -All -ExportPath results.json
# Stealth mode
.\Invoke-EvilMist.ps1 -Script EntraEnum -Domain example.com -All -EnableStealth
📖 Documentação completa: EntraEnum-PS1.md
Requisitos: PowerShell 7+```powershell
.\Invoke-EvilMist.ps1 -Script EntraRecon
.\Invoke-EvilMist.ps1 -Script EntraRecon -UseAzCliToken
.\Invoke-EvilMist.ps1 -Script EntraRecon -ExportPath "users.csv"
.\Invoke-EvilMist.ps1 -Script EntraRecon -EnableStealth
📖 **Documentação completa:** [EntraRecon-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraRecon-PS1.md)
### Enumerate-EntraUsers (Python)
**Requisitos:** Python 3.8+, `msal`, `requests````bash
# Install dependencies
pip install -r requirements.txt
# Run directly from subfolder
python scripts\python\entra_recon.py
📖 Documentação completa: EntraRecon-PY.md
Requisitos: PowerShell 7+, Microsoft.Graph modules```powershell
.\Invoke-EvilMist.ps1 -Script EntraMFACheck
.\Invoke-EvilMist.ps1 -Script EntraMFACheck
.\Invoke-EvilMist.ps1 -Script EntraMFACheck -ExportPath "no-mfa-users.csv"
.\Invoke-EvilMist.ps1 -Script EntraMFACheck -Matrix -IncludeDisabledUsers
.\Invoke-EvilMist.ps1 -Script EntraMFACheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraMFACheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraMFACheck-PS1.md)
### Enumeração de Contas de Convidados (PowerShell)
**Requisitos:** PowerShell 7+, Microsoft.Graph modules```powershell
# Enumerate all guest accounts
.\Invoke-EvilMist.ps1 -Script EntraGuestCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraGuestCheck -ExportPath "guest-accounts.csv"
# Show only guests without MFA in matrix view
.\Invoke-EvilMist.ps1 -Script EntraGuestCheck -Matrix -OnlyNoMFA
# Include disabled guests with stealth mode
.\Invoke-EvilMist.ps1 -Script EntraGuestCheck -IncludeDisabledGuests -EnableStealth -QuietStealth
📖 Documentação completa: EntraGuestCheck-PS1.md
Requisitos: PowerShell 7+, módulos Microsoft.Graph```powershell
.\Invoke-EvilMist.ps1 -Script EntraAppAccess
.\Invoke-EvilMist.ps1 -Script EntraAppAccess -ExportPath "app-access.csv"
.\Invoke-EvilMist.ps1 -Script EntraAppAccess -Matrix -OnlyNoMFA
.\Invoke-EvilMist.ps1 -Script EntraAppAccess -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraAppAccess-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraAppAccess-PS1.md)
### Verificação de Função Privilegiada (PowerShell)
**Requisitos:** PowerShell 7+, módulos Microsoft.Graph```powershell
# Check users with privileged directory roles
.\Invoke-EvilMist.ps1 -Script EntraRoleCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraRoleCheck -ExportPath "privileged-roles.csv"
# Show only users without MFA in matrix view
.\Invoke-EvilMist.ps1 -Script EntraRoleCheck -Matrix -OnlyNoMFA
# Show only permanent (non-PIM) assignments
.\Invoke-EvilMist.ps1 -Script EntraRoleCheck -OnlyPermanent -ExportPath "permanent-admins.csv"
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraRoleCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraRoleCheck-PS1.md
Requisitos: PowerShell 7+, módulos Microsoft.Graph```powershell
.\Invoke-EvilMist.ps1 -Script EntraServicePrincipalCheck
.\Invoke-EvilMist.ps1 -Script EntraServicePrincipalCheck -ExportPath "service-principals.csv"
.\Invoke-EvilMist.ps1 -Script EntraServicePrincipalCheck -Matrix -OnlyExpiredCredentials
.\Invoke-EvilMist.ps1 -Script EntraServicePrincipalCheck -OnlyHighPermission -ExportPath "high-perm-sp.csv"
.\Invoke-EvilMist.ps1 -Script EntraServicePrincipalCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraServicePrincipalCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraServicePrincipalCheck-PS1.md)
**Principais características:**
- **Cobertura abrangente de funções** - Enumera todas as funções de diretório, incluindo funções de risco CRÍTICO, ALTO, MÉDIO e BAIXO
- **Suporte a PIM** - Identifica atribuições de função permanentes (Ativas) e gerenciadas pelo PIM (Elegíveis/Ativas)
- **Rastreamento de atribuição** - Mostra datas de atribuição, duração e datas de expiração
- **Detecção de status MFA** - Identificar usuários privilegiados sem Autenticação Multifator
- **Rastreamento do último login** - Mostra data/hora de login e padrões de atividade
- **Avaliação de risco** - Categoriza usuários por nível de risco com base na criticidade da função e postura de segurança
- **Análise de atividade** - Estatísticas de login, contas desatualizadas, usuários inativos
- **Visualização em matriz** - Formato de tabela compacta para varredura visual rápida
- **Opções de filtragem** - Mostrar apenas usuários sem MFA, apenas atribuições permanentes ou incluir contas desabilitadas
- **Opções de exportação** - CSV/JSON com detalhes abrangentes de atribuição de função
- **Modo furtivo** - Atrasos e jitter configuráveis para evitar detecção
| Versão | Documentação | Arquivo |
|---------|---------------|------|
| PowerShell | [EntraServicePrincipalCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraServicePrincipalCheck-PS1.md) | `scripts/powershell/Invoke-EntraServicePrincipalCheck.ps1` |
---
### Verificação de Segurança de Registro de Aplicativo (PowerShell)
**Requisitos:** PowerShell 7+, módulos Microsoft.Graph```powershell
# Check all application registrations and analyze security posture
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck -ExportPath "applications.csv"
# Show only applications with expired credentials in matrix view
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck -Matrix -OnlyExpiredCredentials
# Show only high-permission applications
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck -OnlyHighPermission -ExportPath "high-perm-apps.csv"
# Show only applications with credentials
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck -OnlyWithCredentials -ExportPath "apps-with-creds.csv"
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraApplicationCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraApplicationCheck-PS1.md
Principais Recursos:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraApplicationCheck-PS1.md | scripts/powershell/Invoke-EntraApplicationCheck.ps1 |
Requisitos: PowerShell 7+, módulos Microsoft.Graph```powershell
.\Invoke-EvilMist.ps1 -Script EntraConditionalAccessCheck
.\Invoke-EvilMist.ps1 -Script EntraConditionalAccessCheck -ExportPath "ca-policies.csv"
.\Invoke-EvilMist.ps1 -Script EntraConditionalAccessCheck -Matrix -OnlyWithExclusions
.\Invoke-EvilMist.ps1 -Script EntraConditionalAccessCheck -OnlyMFAgaps -ExportPath "mfa-gaps.csv"
.\Invoke-EvilMist.ps1 -Script EntraConditionalAccessCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraConditionalAccessCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraConditionalAccessCheck-PS1.md)
### Verificação de Segurança da Unidade Administrativa (PowerShell)
**Requisitos:** PowerShell 7+, módulos Microsoft.Graph```powershell
# Analyze all Administrative Units and scoped role assignments
.\Invoke-EvilMist.ps1 -Script EntraAdminUnitCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraAdminUnitCheck -ExportPath "admin-units.csv"
# Show only scoped administrators without MFA in matrix view
.\Invoke-EvilMist.ps1 -Script EntraAdminUnitCheck -Matrix -OnlyNoMFA
# Include disabled accounts
.\Invoke-EvilMist.ps1 -Script EntraAdminUnitCheck -IncludeDisabledUsers -ExportPath "all-admins.csv"
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraAdminUnitCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraAdminUnitCheck-PS1.md
Principais Funcionalidades:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraAdminUnitCheck-PS1.md | scripts/powershell/Invoke-EntraAdminUnitCheck.ps1 |
Requisitos: PowerShell 7+, módulos Microsoft.Graph```powershell
.\Invoke-EvilMist.ps1 -Script EntraStaleAccountCheck
.\Invoke-EvilMist.ps1 -Script EntraStaleAccountCheck -ExportPath "stale-accounts.csv"
.\Invoke-EvilMist.ps1 -Script EntraStaleAccountCheck -IncludeDisabledUsers -Matrix
.\Invoke-EvilMist.ps1 -Script EntraStaleAccountCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraStaleAccountCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraStaleAccountCheck-PS1.md)
**Principais funcionalidades:**
- **Detecção de Contas Inativas** — Identifica contas sem login recente (>90 dias)
- **Detecção de Contas Nunca Utilizadas** — Encontra contas que nunca foram usadas
- **Detecção de Desperdício de Licenças** — Identifica contas desabilitadas que ainda possuem licenças atribuídas
- **Acompanhamento de Expiração de Senhas** — Detecta contas com senhas expiradas
- **Análise de Idade da Conta** — Calcula a idade da conta e correlaciona com inatividade
- **Avaliação de Risco** — Classifica contas por nível de risco (CRITICAL/HIGH/MEDIUM/LOW)
- **Análise de Atividade** — Estatísticas de login, detalhamento de contas inativas
- **Visão em Matriz** — Formato compacto de tabela para varredura visual rápida
- **Opções de Filtragem** — Incluir ou excluir contas desabilitadas
- **Opções de Exportação** — CSV/JSON com detalhes abrangentes da conta
- **Modo Furtivo** — Atrasos configuráveis e jitter para evitar detecção
| Versão | Documentação | Arquivo |
|--------|--------------|---------|
| PowerShell | [EntraStaleAccountCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraStaleAccountCheck-PS1.md) | `scripts/powershell/Invoke-EntraStaleAccountCheck.ps1` |
---
### Verificação de Confiança e Conformidade de Dispositivos (PowerShell)
**Requisitos:** PowerShell 7+, módulos Microsoft.Graph```powershell
# Analyze all registered devices
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck -ExportPath "devices.csv"
# Show only non-compliant devices in matrix view
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck -Matrix -OnlyNonCompliant
# Show only BYOD devices
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck -OnlyBYOD -ExportPath "byod-devices.csv"
# Show only devices with stale sign-ins
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck -OnlyStale -ExportPath "stale-devices.csv"
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraDeviceCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraDeviceCheck-PS1.md
Funcionalidades Principais:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraDeviceCheck-PS1.md | scripts/powershell/Invoke-EntraDeviceCheck.ps1 |
Requisitos: PowerShell 7+, módulos Microsoft.Graph```powershell
.\Invoke-EvilMist.ps1 -Script EntraSSPRCheck
.\Invoke-EvilMist.ps1 -Script EntraSSPRCheck -ExportPath "sspr-users.csv"
.\Invoke-EvilMist.ps1 -Script EntraSSPRCheck -Matrix -OnlyNoBackup
.\Invoke-EvilMist.ps1 -Script EntraSSPRCheck -IncludeDisabledUsers -ExportPath "all-sspr-users.csv"
.\Invoke-EvilMist.ps1 -Script EntraSSPRCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraSSPRCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraSSPRCheck-PS1.md)
**Principais recursos:**
- **Detecção de status do SSPR** - Identifica usuários com SSPR habilitado, registrado ou capaz
- **Análise de métodos de registro** - Analisa métodos de autenticação registrados para SSPR
- **Detecção de método de backup** - Identifica usuários sem métodos de backup configurados
- **Detecção de método forte** - Distingue entre métodos de autenticação fortes e fracos
- **Correlação de status MFA** - Cruza referências da configuração SSPR com o status do MFA
- **Rastreamento de último login** - Mostra data/hora de login e padrões de atividade
- **Avaliação de risco** - Categoriza usuários por nível de risco (ALTO/MÉDIO/BAIXO) com base na configuração SSPR
- **Análise de atividade** - Estatísticas de login, contas obsoletas, usuários inativos
- **Visualização em matriz** - Formato de tabela compacto para varredura visual rápida
- **Opções de filtragem** - Mostrar apenas usuários sem métodos de backup ou incluir contas desabilitadas
- **Opções de exportação** - CSV/JSON com detalhes abrangentes do SSPR
- **Modo furtivo** - Atrasos e jitter configuráveis para evitar detecção
| Versão | Documentação | Arquivo |
|---------|---------------|------|
| PowerShell | [EntraSSPRCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraSSPRCheck-PS1.md) | `scripts/powershell/Invoke-EntraSSPRCheck.ps1` |
---
### Verificação de segurança da política de senhas (PowerShell)
**Requisitos:** PowerShell 7+, módulos Microsoft.Graph```powershell
# Analyze all password policies
.\Invoke-EvilMist.ps1 -Script EntraPasswordPolicyCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraPasswordPolicyCheck -ExportPath "password-policies.csv"
# Show only users with weak password policies in matrix view
.\Invoke-EvilMist.ps1 -Script EntraPasswordPolicyCheck -Matrix -OnlyWeakPolicies
# Show only users with password never expires
.\Invoke-EvilMist.ps1 -Script EntraPasswordPolicyCheck -OnlyNeverExpires -ExportPath "never-expires.csv"
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraPasswordPolicyCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraPasswordPolicyCheck-PS1.md
Principais Características:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraPasswordPolicyCheck-PS1.md | scripts/powershell/Invoke-EntraPasswordPolicyCheck.ps1 |
Requisitos: PowerShell 7+, módulos Microsoft.Graph```powershell
.\Invoke-EvilMist.ps1 -Script EntraLegacyAuthCheck
.\Invoke-EvilMist.ps1 -Script EntraLegacyAuthCheck -ExportPath "legacy-auth.csv"
.\Invoke-EvilMist.ps1 -Script EntraLegacyAuthCheck -Matrix -OnlyRecent
.\Invoke-EvilMist.ps1 -Script EntraLegacyAuthCheck -IncludeDisabledUsers -ExportPath "all-legacy-users.csv"
.\Invoke-EvilMist.ps1 -Script EntraLegacyAuthCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraLegacyAuthCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraLegacyAuthCheck-PS1.md)
**Principais Recursos:**
- **Detecção de Protocolos Legados** - Identifica 10 protocolos de autenticação legados (IMAP, POP3, SMTP, Exchange ActiveSync, etc.)
- **Análise de Logs de Login** - Consulta logs de auditoria para uso de autenticação legada (últimos 90 dias)
- **Rastreamento do Último Uso** - Mostra a data e hora da última autenticação legada
- **Estatísticas de Protocolo** - Rastreia logins bem-sucedidos/falhados por protocolo
- **Detecção de Status de MFA** - Identifica usuários sem Autenticação Multifator que usam autenticação legada
- **Avaliação de Risco** - Categoriza usuários por nível de risco (CRÍTICO/ALTO/MÉDIO/BAIXO) com base em padrões de uso e recência
- **Análise de Atividade** - Estatísticas de login, distribuição de protocolos, recência de uso
- **Visualização em Matriz** - Formato de tabela compacta para varredura visual rápida
- **Opções de Filtro** - Mostrar apenas uso recente ou incluir contas desabilitadas
- **Opções de Exportação** - CSV/JSON com detalhes abrangentes de autenticação legada
- **Modo Furtivo** - Atrasos e jitter configuráveis para evitar detecção
| Versão | Documentação | Arquivo |
|---------|---------------|------|
| PowerShell | [EntraLegacyAuthCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraLegacyAuthCheck-PS1.md) | `scripts/powershell/Invoke-EntraLegacyAuthCheck.ps1` |
---
### Análise de Licença e SKU (PowerShell)
**Requisitos:** PowerShell 7+, módulos Microsoft.Graph```powershell
# Analyze all license SKUs and user assignments
.\Invoke-EvilMist.ps1 -Script EntraLicenseCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraLicenseCheck -ExportPath "licenses.csv"
# Show only users with privileged licenses (E5, P2) in matrix view
.\Invoke-EvilMist.ps1 -Script EntraLicenseCheck -Matrix -OnlyPrivilegedLicenses
# Show only unused license assignments
.\Invoke-EvilMist.ps1 -Script EntraLicenseCheck -OnlyUnusedLicenses -ExportPath "unused-licenses.csv"
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraLicenseCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraLicenseCheck-PS1.md
Principais funcionalidades:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraLicenseCheck-PS1.md | scripts/powershell/Invoke-EntraLicenseCheck.ps1 |
Requisitos: PowerShell 7+, módulos Microsoft.Graph```powershell
.\Invoke-EvilMist.ps1 -Script EntraDirectorySyncCheck
.\Invoke-EvilMist.ps1 -Script EntraDirectorySyncCheck -ExportPath "sync-status.csv"
.\Invoke-EvilMist.ps1 -Script EntraDirectorySyncCheck -Matrix -OnlySyncErrors
.\Invoke-EvilMist.ps1 -Script EntraDirectorySyncCheck -OnlyStaleSync -ExportPath "stale-sync.csv"
.\Invoke-EvilMist.ps1 -Script EntraDirectorySyncCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraDirectorySyncCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraDirectorySyncCheck-PS1.md)
**Principais Características:**
- **Análise do Estado da Sincronização** - Identifica utilizadores sincronizados vs apenas na cloud
- **Detecção de Erros de Sincronização** - Enumera todos os erros de aprovisionamento e sincronização
- **Detecção de Sincronização Desatualizada** - Identifica utilizadores com sincronização desatualizada (>7 dias)
- **Identificação de Conflitos de Sincronização** - Detecta atributos duplicados e conflitos
- **Análise do Âmbito da Sincronização** - Verifica configuração e âmbito da sincronização
- **Avaliação de Risco** - Categoriza utilizadores por nível de risco (CRITICAL/HIGH/MEDIUM/LOW) com base na saúde da sincronização
- **Análises de Atividade** - Estatísticas de sincronização, detalhamento de erros, análise de domínios
- **Vista em Matriz** - Formato de tabela compacta para rápida inspeção visual
- **Opções de Filtragem** - Mostrar apenas erros de sincronização, sincronização desatualizada, ou incluir contas desativadas
- **Opções de Exportação** - CSV/JSON com detalhes abrangentes de sincronização
- **Modo Furtivo** - Atrasos e jitter configuráveis para evitar deteção
| Versão | Documentação | Arquivo |
|---------|---------------|------|
| PowerShell | [EntraDirectorySyncCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraDirectorySyncCheck-PS1.md) | `scripts/powershell/Invoke-EntraDirectorySyncCheck.ps1` |
---
### Enumeração do Power Platform (PowerShell)
**Requisitos:** PowerShell 7+, módulos Microsoft.Graph, permissões de Administrador do Power Platform ou Criador de Ambiente
**Autenticação:** O script lida automaticamente com a autenticação da API do Power Platform:
- **Padrão**: Fluxo de código de dispositivo (prompt do navegador) - nenhuma configuração necessária
- **Azure CLI**: Use `-UseAzCliToken` - executa automaticamente `az login` se necessário
- **Azure PowerShell**: Use `-UseAzPowerShellToken` - executa automaticamente `Connect-AzAccount` se necessário (usa a mesma conta da autenticação Graph)```powershell
# Enumerate all Power Apps and Power Automate flows
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -ExportPath "power-platform.csv"
# Show only high-risk resources (CRITICAL/HIGH) in matrix view
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -Matrix -OnlyHighRisk
# Show only resources with sensitive connectors
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -OnlySensitiveConnectors -ExportPath "sensitive.csv"
# Use Azure CLI (automatically runs 'az login' if needed)
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -UseAzCliToken
# Use Azure PowerShell (automatically runs 'Connect-AzAccount' if needed, uses Graph context account)
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -UseAzPowerShellToken
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraPowerPlatformCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraPowerPlatformCheck-PS1.md
Principais recursos:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraPowerPlatformCheck-PS1.md | scripts/powershell/Invoke-EntraPowerPlatformCheck.ps1 |
Requisitos: PowerShell 7+, módulos Microsoft.Graph```powershell
.\Invoke-EvilMist.ps1 -Script EntraAttackPathCheck
.\Invoke-EvilMist.ps1 -Script EntraAttackPathCheck -ExportPath "attack-paths.csv"
.\Invoke-EvilMist.ps1 -Script EntraAttackPathCheck -Matrix -OnlyHighRisk
.\Invoke-EvilMist.ps1 -Script EntraAttackPathCheck -IncludeDisabledUsers -ExportPath "all-paths.csv"
.\Invoke-EvilMist.ps1 -Script EntraAttackPathCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraAttackPathCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraAttackPathCheck-PS1.md)
**Principais Funcionalidades:**
- **Análise de Escalação de Privilégios** - Identifica caminhos para privilégios elevados por meio de grupos atribuíveis a funções
- **Detecção de Delegação de Redefinição de Senha** - Encontra usuários que podem redefinir senhas de outros usuários
- **Análise de Associação Transitiva a Grupos** - Identifica acesso indireto a grupos privilegiados
- **Detecção de Acesso a Caixas de Correio Compartilhadas** - Identifica caixas de correio compartilhadas que poderiam ser usadas para movimento lateral
- **Avaliação de Risco** - Categoriza caminhos de ataque por nível de risco (CRÍTICO/ALTO/MÉDIO) com base no tipo de caminho e postura de segurança do usuário
- **Análise de Complexidade de Caminho** - Avalia a complexidade do caminho de ataque (Baixa/Média/Alta)
- **Detecção de Status de MFA** - Identifica usuários sem Autenticação Multifator nos caminhos de ataque
- **Rastreamento do Último Login** - Mostra data/hora de login e padrões de atividade
- **Análise de Atividades** - Estatísticas de login, contas obsoletas, usuários inativos
- **Visualização em Matriz** - Formato de tabela compacta para varredura visual rápida
- **Opções de Filtragem** - Mostrar apenas caminhos de alto risco ou incluir contas desabilitadas
- **Opções de Exportação** - CSV/JSON com detalhes abrangentes do caminho de ataque
- **Modo Furtivo** - Atrasos configuráveis e jitter para evitar detecção
| Versão | Documentação | Arquivo |
|--------|--------------|---------|
| PowerShell | [EntraAttackPathCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraAttackPathCheck-PS1.md) | `scripts/powershell/Invoke-EntraAttackPathCheck.ps1` |
---
### Azure RBAC Role Assignment Audit & Drift Detection (PowerShell)
**Requisitos:** PowerShell 7+, Az.Accounts, Az.Resources, Microsoft.Graph.Authentication módulos```powershell
# Export all Azure RBAC role assignments across ALL tenants and subscriptions to baseline JSON
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export
# Export to specific file
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -ExportPath "rbac-baseline.json"
# Skip tenants with MFA/Conditional Access issues (common in multi-tenant scenarios)
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -SkipFailedTenants
# Show all users with their Azure permissions in matrix format
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -SkipFailedTenants -ShowAllUsersPermissions
# Expand group memberships to show all users who have Azure access via groups
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -SkipFailedTenants -ExpandGroupMembers
# Combined: Show all users including those with access via groups
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -SkipFailedTenants -ExpandGroupMembers -ShowAllUsersPermissions
# Detect drift against baseline across all tenants
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode DriftDetect -BaselinePath "rbac-baseline.json"
# Detect drift with matrix view and export report
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode DriftDetect -BaselinePath "rbac-baseline.json" -Matrix -ExportPath "drift-report.json"
# Export specific tenant only
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -TenantId "tenant-id-123"
# Export specific subscription with Azure CLI auth
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -SubscriptionId "sub-123" -UseAzCliToken
# Stealth mode drift detection
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode DriftDetect -BaselinePath "baseline.json" -EnableStealth -QuietStealth
# Export excluding PIM/JIT time-bounded assignments (focus on permanent assignments only)
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode Export -ExcludePIM
# Detect drift excluding PIM/JIT assignments (ignore temporary elevated access)
.\Invoke-EvilMist.ps1 -Script EntraAzureRBACCheck -Mode DriftDetect -BaselinePath "baseline.json" -ExcludePIM
📖 Documentação completa: EntraAzureRBACCheck-PS1.md
Principais Recursos:
-SkipFailedTenants)-ShowAllUsersPermissions)-ExpandGroupMembers)-ExcludePIM)| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraAzureRBACCheck-PS1.md | scripts/powershell/Invoke-EntraAzureRBACCheck.ps1 |
Requisitos: PowerShell 7+, módulos Microsoft.Graph```powershell
.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck
.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck -ExportPath "consent-grants.csv"
.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck -Matrix -OnlyHighRisk
.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck -OnlyThirdParty -OnlyAdminConsent
.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck -StaleDays 60 -OnlyStale
.\Invoke-EvilMist.ps1 -Script EntraOAuthConsentCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraOAuthConsentCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraOAuthConsentCheck-PS1.md)
**Principais funcionalidades:**
- **Enumeração de OAuth2PermissionGrant** - Enumera todas as concessões de permissão delegadas no inquilino
- **Detecção de Consentimento de Administrador vs Usuário** - Distingue entre consentimento de administrador em todo o inquilino e consentimento individual de usuário
- **Detecção de Permissões Perigosas** - Identifica escopos de alto risco (Mail.ReadWrite, Files.ReadWrite.All, User.ReadWrite.All, etc.)
- **Detecção de Consentimento Obsoleto** - Encontra concessões de consentimento não utilizadas (limiar configurável, padrão 90 dias)
- **Identificação de Aplicativos de Terceiros** - Identifica automaticamente aplicativos não Microsoft com permissões elevadas
- **Correlação de Atividade de Login** - Faz referência cruzada com atividade de login para detectar aplicativos inativos
- **Avaliação de Risco** - Categoriza concessões de consentimento por nível de risco (CRITICAL/HIGH/MEDIUM/LOW) com base no tipo de consentimento, permissões e origem do aplicativo
- **Análise do Editor** - Rastreia os editores de aplicativos e o status de editor verificado
- **Rastreamento de Recursos** - Identifica quais APIs/recursos cada aplicativo tem acesso
- **Visualização em Matriz** - Formato de tabela compacto para varredura visual rápida
- **Opções de Filtragem** - Mostrar apenas concessões de consentimento de alto risco, de terceiros, obsoletas ou de administrador
- **Opções de Exportação** - CSV/JSON com detalhes abrangentes da concessão de consentimento
- **Modo Furtivo** - Atrasos e jitter configuráveis para evitar detecção
| Versão | Documentação | Arquivo |
|---------|---------------|--------|
| PowerShell | [EntraOAuthConsentCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraOAuthConsentCheck-PS1.md) | `scripts/powershell/Invoke-EntraOAuthConsentCheck.ps1` |
---
### Verificação de Risco de Login (PowerShell)
**Requisitos:** PowerShell 7+, módulos Microsoft.Graph, Azure AD Premium P2```powershell
# Enumerate all risky users
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -ExportPath "risky-users.csv"
# Show only high-risk users in matrix view
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -Matrix -OnlyHighRisk
# Show only active (not remediated) risks
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -OnlyActive
# Include risky sign-ins from the last 7 days
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -IncludeRiskySignIns -DaysBack 7
# Full analysis with pattern detection
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -IncludeRiskySignIns -IncludeRiskDetections -Matrix
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraSignInRiskCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraSignInRiskCheck-PS1.md
Principais funcionalidades:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraSignInRiskCheck-PS1.md | scripts/powershell/Invoke-EntraSignInRiskCheck.ps1 |
Requisitos: PowerShell 7+, módulos Microsoft.Graph, Azure AD Premium P2```powershell
.\Invoke-EvilMist.ps1 -Script EntraPIMCheck
.\Invoke-EvilMist.ps1 -Script EntraPIMCheck -ExportPath "pim-audit.csv"
.\Invoke-EvilMist.ps1 -Script EntraPIMCheck -Matrix -OnlyCritical
.\Invoke-EvilMist.ps1 -Script EntraPIMCheck -OnlyHighPrivilege -MaxActivationHours 2
.\Invoke-EvilMist.ps1 -Script EntraPIMCheck -IncludeGroups -IncludeAccessReviews
.\Invoke-EvilMist.ps1 -Script EntraPIMCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraPIMCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraPIMCheck-PS1.md)
**Principais recursos:**
- **Auditoria de Configuração de Acesso JIT** - Analisa duração máxima de ativação, requisitos de aprovação, aplicação de MFA
- **Análise de Fluxo de Aprovação** - Identifica funções sem aprovação ou com aprovadores ausentes
- **Requisitos de Justificativa** - Detecta funções sem justificativa obrigatória para ativação
- **Aplicação de MFA** - Identifica funções que não exigem MFA para ativação
- **Configuração de Notificações** - Analisa as configurações de notificação de administrador para ativações de funções
- **Detecção de Atribuição Permanente** - Encontra acesso privilegiado permanente que ignora o PIM
- **PIM para Grupos** - Analisa o gerenciamento de acesso privilegiado baseado em grupos
- **Revisões de Acesso** - Verifica a configuração de certificação periódica de acesso
- **Avaliação de Risco** - Categoriza funções por nível de risco (CRÍTICO/ALTO/MÉDIO/BAIXO) com base em lacunas de configuração
- **Análise de Elegível vs Ativo** - Compara atribuições elegíveis com atribuições ativas/permanentes
- **Detecção de Contas Break-Glass** - Identifica atribuições permanentes que podem ser contas de emergência
- **Vista Matricial** - Formato de tabela compacta para varredura visual rápida
- **Opções de Filtragem** - Mostrar apenas funções críticas, funções de alto privilégio ou configurações incorretas
- **Opções de Exportação** - CSV/JSON com detalhes abrangentes da configuração do PIM
- **Modo Furtivo** - Atrasos e jitter configuráveis para evitar detecção
| Versão | Documentação | Arquivo |
|---------|---------------|------|
| PowerShell | [EntraPIMCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraPIMCheck-PS1.md) | `scripts/powershell/Invoke-EntraPIMCheck.ps1` |
---
### Verificação de Segurança do Azure Key Vault (PowerShell)
**Requisitos:** PowerShell 7+, módulos Az.Accounts, Az.KeyVault, Az.Resources, Az.Monitor```powershell
# Perform comprehensive Key Vault security audit
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck -ExportPath "keyvault-audit.csv"
# Show only critical findings in matrix view
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck -Matrix -OnlyCritical
# Audit only Key Vaults with public access enabled
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck -OnlyPublicAccess
# Include secret and certificate expiration analysis
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck -IncludeSecrets -IncludeCertificates -ExpirationDays 90
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraKeyVaultCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraKeyVaultCheck-PS1.md
Principais Funcionalidades:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraKeyVaultCheck-PS1.md | scripts/powershell/Invoke-EntraKeyVaultCheck.ps1 |
Ferramenta abrangente de auditoria de segurança de Conta de Armazenamento do Azure que deteta contas de armazenamento expostas e riscos de exfiltração de dados. Identifica contentores de blob públicos, falhas de configuração de rede e lacunas de proteção de dados.```powershell
.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck
.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck -ExportPath "storage-audit.csv"
.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck -Matrix -OnlyCritical
.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck -OnlyAnonymousContainers -IncludeContainers
.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck -IncludeKeyAge -KeyRotationDays 60
.\Invoke-EvilMist.ps1 -Script EntraStorageAccountCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraStorageAccountCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraStorageAccountCheck-PS1.md)
**Principais características:**
- **Detecção de Blob Container Público** - Identifica containers com acesso anônimo (nível Blob/Container)
- **Verificação de Imposição de HTTPS** - Detecta contas de armazenamento que permitem tráfego HTTP não criptografado
- **Análise de Acesso por Chave Compartilhada** - Identifica contas que usam chaves de armazenamento vs autenticação do Azure AD
- **Auditoria de Segurança de Rede** - Verifica acesso público, regras de firewall, integração VNet, endpoints privados
- **Análise de Proteção de Dados** - Blob soft delete, container soft delete, status de versionamento
- **Rastreamento de Rotação de Chaves** - Identifica chaves de conta de armazenamento que excedem o limite de rotação
- **Replicação entre Locatários** - Detecta replicação de dados para outros locatários (risco de exfiltração)
- **Verificação de Versão TLS** - Garante a imposição mínima de TLS 1.2
- **Criptografia de Infraestrutura** - Verifica configuração de criptografia dupla
- **Verificação de Logs de Diagnóstico** - Verifica se o log de auditoria está ativado
- **Avaliação de Risco** - Categoriza contas de armazenamento por nível de risco (CRÍTICO/ALTO/MÉDIO/BAIXO)
- **Visualização em Matriz** - Formato de tabela compacta para varredura visual rápida
- **Opções de Filtragem** - Mostrar apenas containers críticos, de acesso público ou anônimos
- **Opções de Exportação** - CSV/JSON com detalhes abrangentes da Conta de Armazenamento
- **Modo Stealth** - Atrasos configuráveis e jitter para evitar detecção
| Versão | Documentação | Arquivo |
|---------|---------------|------|
| PowerShell | [EntraStorageAccountCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraStorageAccountCheck-PS1.md) | `scripts/powershell/Invoke-EntraStorageAccountCheck.ps1` |
---
### Verificação de Segurança de Rede (PowerShell)
**Requisitos:** PowerShell 7+, módulos do Azure PowerShell```powershell
# Perform comprehensive Network Security audit
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck -ExportPath "network-audit.csv"
# Show only NSGs with open management ports
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck -OnlyOpenPorts -Matrix
# Full scan with VNets, Bastion, and DDoS analysis
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck -IncludeVNets -IncludeBastion -IncludeDDoS -Matrix
# Include NSG flow logs analysis
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck -IncludeFlowLogs -Matrix
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraNetworkSecurityCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraNetworkSecurityCheck-PS1.md
Principais Funcionalidades:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraNetworkSecurityCheck-PS1.md | scripts/powershell/Invoke-EntraNetworkSecurityCheck.ps1 |
Ferramenta abrangente de auditoria de segurança de Identidade Gerenciada do Azure que identifica permissões excessivas e riscos de segurança. Detecta identidades gerenciadas com altos privilégios, acesso entre assinaturas e identidades não utilizadas.```powershell
.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck
.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck -ExportPath "managed-identity-audit.csv"
.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck -OnlyHighPrivilege -Matrix
.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck -OnlyCrossSubscription -Matrix
.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck -IncludeRoleDetails -Matrix
.\Invoke-EvilMist.ps1 -Script EntraManagedIdentityCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraManagedIdentityCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraManagedIdentityCheck-PS1.md)
**Recursos Principais:**
- **Inventário de Identidades** - Enumeração de identidades gerenciadas atribuídas pelo sistema versus atribuídas pelo usuário
- **Análise de Atribuições de Funções** - Permissões RBAC do Azure para cada identidade gerenciada
- **Detecção de Altos Privilégios** - Identifica funções de Proprietário, Colaborador, Administrador de Acesso do Usuário
- **Detecção de Funções Críticas** - Sinaliza identidades com funções de Proprietário, UAA ou Administrador RBAC
- **Acesso entre Assinaturas** - Detecta identidades com permissões além da assinatura principal
- **Detecção de Identidades Não Utilizadas** - Encontra identidades gerenciadas sem atribuições de função
- **Cobertura de Recursos** - VMs, Serviços de Aplicativos, Aplicações de Funções, Identidades Atribuídas pelo Usuário
- **Análise de Escopo** - Permissões em toda a assinatura vs grupo de recursos vs nível de recurso
- **Avaliação de Risco** - Classificação CRÍTICO/ALTO/MÉDIO/BAIXO com descobertas
- **Exibição em Matriz** - Formato tabular compacto para revisão rápida
- **Opções de Exportação** - CSV/JSON com detalhes abrangentes de identidade
- **Modo Furtivo** - Atrasos e variações configuráveis para evitar detecção
| Versão | Documentação | Arquivo |
|---------|---------------|------|
| PowerShell | [EntraManagedIdentityCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraManagedIdentityCheck-PS1.md) | `scripts/powershell/Invoke-EntraManagedIdentityCheck.ps1` |
---
### Auditoria de Segurança do Exchange Online
Ferramenta abrangente de auditoria de segurança do Exchange Online que detecta vetores de ataque baseados em e-mail e riscos de exfiltração de dados. Identifica regras de caixa de entrada que encaminham para endereços externos, regras de transporte suspeitas, delegações de caixa de correio e lacunas de registro de auditoria.```powershell
# Perform comprehensive Exchange Online security audit
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck -ExportPath "exchange-audit.csv"
# Show only mailboxes with external forwarding
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck -OnlyExternalForwarding -Matrix
# Show only suspicious inbox rules
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck -OnlySuspiciousRules -Matrix
# Include transport rules and OWA policies
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck -IncludeTransportRules -IncludeOWAPolicies -Matrix
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraExchangeCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraExchangeCheck-PS1.md
Principais Características:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraExchangeCheck-PS1.md | scripts/powershell/Invoke-EntraExchangeCheck.ps1 |
Ferramenta abrangente de avaliação de segurança do SharePoint Online para identificar riscos de compartilhamento excessivo e acesso externo. Audita configurações de compartilhamento no nível do locatário e do site para detectar possível exposição de dados.```powershell
.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck
.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck -ExportPath "sharepoint-audit.csv"
.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck -OnlyAnonymousLinks -Matrix
.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck -OnlyPermissiveOverrides -Matrix
.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck -IncludeOneDrive -IncludeSensitivityLabels -Matrix
.\Invoke-EvilMist.ps1 -Script EntraSharePointCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraSharePointCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraSharePointCheck-PS1.md)
**Principais Funcionalidades:**
- **Configurações de Compartilhamento do Locatário** - Análise da política de compartilhamento externo em toda a organização
- **Detecção de Links Anônimos** - Identifica sites que permitem links "Qualquer pessoa"
- **Substituições em Nível de Site** - Detecta sites com compartilhamento mais permissivo que o locatário
- **Análise de Acesso de Convidados** - Acesso de usuários externos a sites confidenciais
- **Compartilhamento do OneDrive** - Configuração de compartilhamento externo de armazenamento pessoal
- **Cobertura de Rótulos de Sensibilidade** - Identifica sites sem classificação de dados
- **Análise de Link Padrão** - Tipo de link padrão e configuração de permissão
- **Política de Expiração de Links** - Configurações de expiração de links anônimos
- **Restrições de Domínio** - Configuração de lista de permissão/bloqueio
- **Avaliação de Risco** - Classificação CRITICAL/HIGH/MEDIUM/LOW com achados
- **Visualização em Matriz** - Formato tabular compacto para revisão rápida
- **Opções de Exportação** - CSV/JSON com detalhes abrangentes do site
- **Modo Furtivo** - Atrasos configuráveis e jitter para evitar detecção
| Versão | Documentação | Arquivo |
|---------|---------------|------|
| PowerShell | [EntraSharePointCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraSharePointCheck-PS1.md) | `scripts/powershell/Invoke-EntraSharePointCheck.ps1` |
---
### Enumeração do SharePoint Online
Ferramenta autenticada de pesquisa e download de arquivos do SharePoint Online usando a API REST do SharePoint. Permite que operadores de red team descubram e exfiltrem documentos confidenciais durante testes de penetração autorizados. Port para PowerShell do [ElephantPoint](https://github.com/nettitude/ElephantPoint) (Nettitude).```powershell
# Zero-config search — auto-connects, auto-detects SharePoint domain
.\Invoke-EvilMist.ps1 -Script SharePointEnum -Query "password"
# Device code authentication (for headless terminals)
.\Invoke-EvilMist.ps1 -Script SharePointEnum -UseDeviceCode -Query "credentials"
# Direct bearer token from ROADtools/TokenTactics
.\Invoke-EvilMist.ps1 -Script SharePointEnum -SPOUrl example.sharepoint.com -Token $token -Query "confidential"
# Download file as Base64 for C2 exfiltration
.\Invoke-EvilMist.ps1 -Script SharePointEnum -SPOUrl example.sharepoint.com -Token $token -FileUrl "/sites/hr/Shared Documents/salaries.xlsx" -Base64
# Stealth search with matrix output and JSON export
.\Invoke-EvilMist.ps1 -Script SharePointEnum -Query "budget" -EnableStealth -QuietStealth -Matrix -ExportPath "results.json"
📖 Documentação completa: SharePointEnum-PS1.md
Principais funcionalidades:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | SharePointEnum-PS1.md | scripts/powershell/Invoke-SharePointEnum.ps1 |
Ferramenta abrangente de avaliação de segurança do Microsoft Teams para auditar configurações de colaboração. Identifica riscos de acesso externo, políticas de convidados, lacunas de segurança em reuniões e problemas de permissão de aplicativos.```powershell
.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck
.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck -ExportPath "teams-audit.csv"
.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck -OnlyMeetingRisks -Matrix
.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck -OnlyExternalAccess -Matrix
.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck -IncludeTeamsInventory -IncludeAppPolicies -Matrix
.\Invoke-EvilMist.ps1 -Script EntraTeamsCheck -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraTeamsCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraTeamsCheck-PS1.md)
**Principais Recursos:**
- **Acesso Externo (Federação)** - Analisar quem pode se comunicar de fora da organização
- **Políticas de Acesso de Convidados** - Capacidades e permissões de usuários convidados
- **Políticas de Reunião** - Participação anônima, bypass do lobby, configurações de gravação
- **Políticas de Permissão de Aplicativos** - Controles de acesso para aplicativos de terceiros e personalizados
- **Políticas de Mensagens** - Configurações de chat e mensagens
- **Inventário do Teams** - Visibilidade, associação de convidados e análise de governança
- **Configuração do Cliente** - Configurações de segurança do cliente Teams
- **Avaliação de Risco** - Classificação CRÍTICO/ALTO/MÉDIO/BAIXO com descobertas
- **Visualização em Matriz** - Formato tabular compacto para revisão rápida
- **Opções de Exportação** - CSV/JSON com detalhes abrangentes de configuração
- **Modo Stealth** - Atrasos e jitter configuráveis para evitar detecção
| Versão | Documentação | Arquivo |
|---------|---------------|------|
| PowerShell | [EntraTeamsCheck-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraTeamsCheck-PS1.md) | `scripts/powershell/Invoke-EntraTeamsCheck.ps1` |
---
### Análise de Caminhos de Ataque entre Serviços do Azure
Ferramenta abrangente de análise de caminhos de ataque entre serviços do Azure que identifica caminhos de ataque de múltiplos saltos abrangendo vários serviços do Azure. Revela como o acesso a um recurso pode levar ao comprometimento de outros recursos em todo o ambiente do Azure.```powershell
# Perform comprehensive cross-service attack path analysis
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck
# Export results to CSV
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck -ExportPath "azure-attack-paths.csv"
# Show only critical attack paths in matrix view
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck -OnlyCritical -Matrix
# Show critical and high-risk paths
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck -OnlyHighRisk -Matrix
# Include inherited permission paths with deeper analysis
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck -IncludeInheritedPaths -MaxPathDepth 4
# Stealth mode scan
.\Invoke-EvilMist.ps1 -Script EntraAzureAttackPathCheck -EnableStealth -QuietStealth
📖 Documentação completa: EntraAzureAttackPathCheck-PS1.md
Principais Recursos:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraAzureAttackPathCheck-PS1.md | scripts/powershell/Invoke-EntraAzureAttackPathCheck.ps1 |
Gerador unificado de relatórios de segurança HTML que executa múltiplas verificações de segurança do EvilMist e produz um painel executivo abrangente com avaliação de risco, prioridades de remediação e análise de tendências.```powershell
.\Invoke-EvilMist.ps1 -Script EntraReport -QuickScan
.\Invoke-EvilMist.ps1 -Script EntraReport -ComprehensiveScan -ExportPath "full-report.html"
.\Invoke-EvilMist.ps1 -Script EntraReport -Checks MFA,Roles,ConditionalAccess,AttackPaths
.\Invoke-EvilMist.ps1 -Script EntraReport -Checks All -ExportPath "security-report.html"
.\Invoke-EvilMist.ps1 -Script EntraReport -ComprehensiveScan -BaselinePath "previous-report.json"
.\Invoke-EvilMist.ps1 -Script EntraReport -QuickScan -EnableStealth -QuietStealth
📖 **Documentação completa:** [EntraReport-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraReport-PS1.md)
**Principais Funcionalidades:**
- **Relatórios Consolidados** - Execute várias verificações de segurança com um único comando
- **Painel Executivo** - Relatório HTML profissional com pontuação de segurança (0-100)
- **Visão Geral de Gravidade** - Contagem de descobertas CRÍTICAS, ALTAS, MÉDIAS, BAIXAS
- **Matriz de Prioridades de Remediação** - Ações priorizadas (P1-P4) com cronogramas recomendados
- **Análise de Tendências** - Compare com relatórios de base para acompanhar melhorias de segurança
- **Modo de Varredura Rápida** - Verificações de segurança principais (MFA, Roles, CA, Attack Paths, OAuth, PIM)
- **Varredura Abrangente** - Todas as verificações de segurança disponíveis para cobertura total
- **Exportação JSON** - Exportação automática de base para comparações futuras
- **Modo Furtivo** - Atrasos e jitter configuráveis para evitar detecção
| Versão | Documentação | Arquivo |
|---------|---------------|------|
| PowerShell | [EntraReport-PS1.md](https://github.com/logisek/evilmist/blob/HEAD/docs/EntraReport-PS1.md) | `scripts/powershell/Invoke-EntraReport.ps1` |
---
### Avaliação de Conformidade (CIS/NIST/SOC2/ISO27001/GDPR)
Ferramenta abrangente de avaliação de conformidade que avalia a configuração de segurança do Azure Entra ID em relação a estruturas padrão da indústria, incluindo CIS Microsoft Azure Foundations Benchmark, NIST 800-53, SOC 2, ISO 27001 e GDPR.```powershell
# Comprehensive compliance assessment against all frameworks
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -Matrix
# CIS Azure Benchmark assessment
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -Framework CIS -ExportPath "cis-compliance.csv"
# NIST 800-53 assessment with remediation guidance
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -Framework NIST -IncludeRemediation
# Executive report with compliance score
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -GenerateExecutiveReport -ExportPath "compliance-report.html"
# SOC 2 assessment showing only failed controls
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -Framework SOC2 -OnlyFailed
# Filter by NIST control family (e.g., Access Control)
.\Invoke-EvilMist.ps1 -Script EntraComplianceCheck -Framework NIST -ControlFamily AC
📖 Documentação completa: EntraComplianceCheck-PS1.md
Principais Funcionalidades:
| Versão | Documentação | Arquivo |
|---|---|---|
| PowerShell | EntraComplianceCheck-PS1.md | scripts/powershell/Invoke-EntraComplianceCheck.ps1 |
Ambas as versões fornecem a mesma funcionalidade principal:
|---------|---------------------|-------------------|---------------------------|----------------------------|----------------------|------------------------|--------------------------|--------------------------|------------------------|---------------------|-------------------|-------------|---------------------|-------------------|--------------|---------------------|-------------------|-------------------|-------------------|-------------------|-------------------| | Propósito | Enumeração abrangente de usuários | Auditoria de segurança MFA focada | Governança de acesso de convidados | Auditoria de acesso administrativo crítico | Auditoria de atribuição de função privilegiada | Auditoria de segurança de contas de serviço | Auditoria de segurança de registro de aplicativos | Análise de lacunas de política de segurança | Auditoria de acesso administrativo com escopo | Auditoria de higiene de contas | Auditoria de confiança e conformidade de dispositivos | Auditoria de configuração de SSPR | Auditoria de segurança de política de senhas | Auditoria de segurança de autenticação legada | Análise de licenças e SKU | Auditoria de status e integridade de sincronização de diretório | Enumeração e auditoria de segurança do Power Platform | Análise de segurança e governança de grupos | Análise de caminho de ataque - escalonamento de privilégio e movimento lateral | Exportação de linha de base de RBAC do Azure multilocatário e detecção de desvios | Auditoria de concessão de consentimento OAuth - detecção de consentimento ilícito | | Enumeração de Usuários | 15+ métodos | Método padrão | Focado em convidados | Baseado em atribuição de aplicativo | Baseado em atribuição de função | Focado em service principal | | | | | | Focado em autenticação legada | Focado em sincronização | ❌ | | Detecção de MFA | Básico | Avançado com tipos de métodos | Avançado com tipos de métodos | Avançado com tipos de métodos | Avançado com tipos de métodos | Verificação de MFA do proprietário | | | | | | Avançado com tipos de métodos | ❌ | ❌ | | Detecção de Caixa de Correio Compartilhada | ❌ | ✅ Automático | ❌ (N/A para convidados) | ❌ (N/A para acesso de aplicativos) | ❌ (N/A para funções) | ❌ (N/A para SPs) | | | | | | ❌ (N/A para autenticação legada) | ❌ | ❌ | | Extração de Domínio de Convidados | ❌ | ❌ | ✅ Automático | ❌ | ❌ | ❌ | | | | | | ❌ | ❌ | ❌ | | Rastreamento de Status de Convite | ❌ | ❌ | ✅ Com datas de aceitação | ❌ | ❌ | ❌ | | | | | | ❌ | ❌ | ❌ | | Rastreamento de Acesso a Aplicativos | ❌ | ❌ | ❌ | ✅ Cobertura multi-aplicativo | ❌ | ❌ | | | | | | ❌ | ❌ | ❌ | | Rastreamento de Atribuição de Função | ❌ | ❌ | ❌ | ❌ | ✅ Todas as funções de diretório | ❌ | | | | | | ❌ | ❌ | ✅ Todas as funções RBAC do Azure | | Rastreamento de Atribuição PIM | ❌ | ❌ | ❌ | ❌ | ✅ Elegível e Ativo | ❌ | | | | | | ❌ | ❌ | ❌ | | Enumeração de Credenciais | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Segredos e certificados | ✅ Segredos e certificados | | | | | | ❌ | ❌ | ❌ | | Rastreamento de Expiração de Credenciais | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Expiradas e expirando em breve | ✅ Expiradas e expirando em breve | | | | | | ❌ | ❌ | ❌ | | Análise de Permissões | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Alto risco e crítico | ✅ Alto risco e crítico (permissões de API) | | | | | | ❌ | ❌ | ✅ Permissões de função RBAC | | Análise de Proprietário | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Com status de MFA | ✅ Com status de MFA | ❌ | | | | | ❌ | ❌ | ✅ Proprietários de grupo com status MFA | ❌ | | Enumeração de Registro de Aplicativos | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Abrangente | | | | | | ❌ | ❌ | ❌ | | Análise de Permissões de API | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Delegada e de aplicativo | | | | | | ❌ | ❌ | ❌ | | Rastreamento de Data de Atribuição | ❌ | ❌ | ✅ Datas de convite | ✅ Datas de atribuição | ✅ Datas de atribuição e duração | ❌ | ❌ | | | | | ❌ | ❌ | ✅ Datas de criação de atribuição de função | | Detecção de Exclusão de Política | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Usuários, grupos, funções, aplicativos | | | | | ❌ | ❌ | ❌ | | Lacunas de Aplicação de MFA | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Análise em nível de política | | | | | ❌ | ❌ | ❌ | | Cobertura de Aplicativos Críticos | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 10 aplicativos críticos | | | | | ❌ | ❌ | ❌ | | Detecção de Autenticação Legada | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Direcionamento de política | | | | | ✅ 10 protocolos | ❌ | ❌ | | Detecção de Protocolo Legado | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | | | | ✅ IMAP/POP3/SMTP/EAS/etc | ❌ | ❌ | | Último Uso de Autenticação Legada | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | | | | ✅ Rastreamento de data/hora | ❌ | ❌ | | Estatísticas de Protocolo | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | | | | ✅ Contagens de sucesso/falha | ❌ | ❌ | | Detecção de Conflito de Política | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Redundante/conflitante | ❌ | ❌ | ❌ | | | ❌ | ❌ | ❌ | | Enumeração de Unidade Administrativa | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Abrangente | ❌ | ❌ | ❌ | | | ❌ | ❌ | ❌ | | Análise de Atribuição de Função com Escopo | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Todas as atribuições com escopo | ❌ | ❌ | ❌ | | | ❌ | ❌ | ❌ | | Enumeração de Membros da UA | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Membros e funções | ❌ | ❌ | ❌ | | | ❌ | ❌ | ❌ | | Detecção de Contas Obsoletas | Limitado | Limitado | Limitado | Limitado | Limitado | ❌ | ❌ | Limitado | ✅ >90 dias inativo | ❌ | | | Limitado | ❌ | ❌ | | Detecção de Nunca Conectado | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Análise de idade da conta | ❌ | | | ❌ | ❌ | ❌ | | Detecção de Desperdício de Licença | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Desabilitado com licenças | ❌ | | | ❌ | ❌ | ❌ | | Rastreamento de Expiração de Senha | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Senhas expiradas | ❌ | ❌ | ✅ Análise de expiração | ❌ | ❌ | ❌ | | Detecção de Status de SSPR | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Habilitado/Registrado/Capaz | ❌ | ❌ | ❌ | ❌ | | Análise de Método de SSPR | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Métodos de registro | ❌ | ❌ | ❌ | ❌ | | Detecção de Método de Backup | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Nenhum método de backup | ❌ | ❌ | ❌ | ❌ | | Classificação de Método Forte | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Métodos fortes vs. fracos | ❌ | ❌ | ❌ | ❌ | | Enumeração de Dispositivos | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Abrangente | ❌ | ❌ | ❌ | ❌ | ❌ | | Detecção de Status de Conformidade | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | ✅ Conforme/Não conforme/Desconhecido | | | ❌ | ❌ | ❌ | | Detecção de BYOD | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | ✅ Automático | | | ❌ | ❌ | ❌ | | Detecção de Conexão Obsoleta | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | ✅ >90 dias | ✅ >90 dias | | | Limitado | ❌ | ❌ | | Políticas de Conformidade do Intune | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Enumeração completa | | | ❌ | ❌ | ❌ | | Análise de Confiança do Dispositivo | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Tipos de associação | | | ❌ | ❌ | ❌ | | Status de Gerenciamento | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Gerenciado/Não gerenciado | | | ❌ | ❌ | ❌ | | Rastreamento de Última Conexão | ✅ | ✅ Com análises | ✅ Com análises | ✅ Com análises | ✅ Com análises | Limitado (atividade SP) | ❌ | ✅ Com análises | ✅ Com análises | ✅ Com análises | ✅ Com análises | ✅ Com análises | ✅ Com análises | ✅ Com análises | ✅ Com análises | ❌ | | Verificação de Capacidade de Conexão | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | Detecção de Status de Sincronização | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Sincronizado vs. Somente Nuvem | ❌ | | Detecção de Erro de Sincronização | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Todos os erros de provisionamento | ❌ | | Detecção de Sincronização Obsoleta | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ >7 dias desde a sincronização | ❌ | | Identificação de Conflito de Sincronização | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Atributos duplicados | ❌ | | Análise de Escopo de Sincronização | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Configuração básica | ❌ | | Enumeração de SKU do Locatário | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Enumeração completa | ❌ | ❌ | | Rastreamento de Atribuição de Licença | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Todas as atribuições | ❌ | ❌ | | Detecção de Licença Privilegiada | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ E5, P2, etc. | ❌ | ❌ | | Detecção de Licença Não Utilizada | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Desabilitado com licenças | ❌ | ❌ | ❌ | ❌ | ✅ Nunca conectado | ❌ | ❌ | | Análise de Uso de Licença | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Estatísticas de consumo | ❌ | ❌ | ❌ | | Enumeração de Power Apps | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Abrangente | ❌ | | Enumeração de Fluxos Power Automate | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Abrangente | ❌ | | Detecção de Conector Sensível | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ 30+ conectores | ❌ | | Detecção de Ação de Alto Risco | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Excluir/Criar/Modificar | ❌ | | Análise de Risco de Conector | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ CRÍTICO/ALTO/MÉDIO/BAIXO | ❌ | ❌ | | Enumeração de Grupos | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Abrangente (todos os tipos) | ❌ | | Detecção de Sem Proprietário | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Grupos órfãos | ❌ | | Detecção de Associação Excessiva | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ >100 ou >500 membros | ❌ | | Detecção de Grupo Atribuível a Função | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Grupos de risco CRÍTICO | ❌ | | Análise de Tipo de Grupo | ✅ Básico | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Segurança/M365/Distribuição/Dinâmico | ❌ | | Enumeração de Concessão de Consentimento OAuth | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Todos os OAuth2PermissionGrants | | Detecção de Consentimento de Administrador vs. Usuário | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Abrangente no locatário vs. individual | | Detecção de Permissão Perigosa | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Acesso a E-mail/Arquivos/Diretório | | Detecção de Consentimento Obsoleto | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Limiar configurável | | Detecção de Aplicativo de Terceiros | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Microsoft vs. terceiros | | Verificação de Editor | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Status de editor verificado | | Varredura Multilocatário | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Todos os locatários acessíveis | ❌ | | Pular Locatários com Falha | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Continuar em falhas de MFA/CA | ❌ | | Exportação de Linha de Base RBAC do Azure | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Linha de base JSON | ❌ | | Detecção de Desvio RBAC do Azure | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Atribuições novas/removidas/modificadas | ❌ | | Suporte a Multissinatura | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Todas as assinaturas entre locatários | ❌ | | Expansão de Membros de Grupo | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Expandir grupos para exibir usuários | ❌ | | Matriz de Permissões de Todos os Usuários | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Visualização de permissão centrada no usuário | ❌ | | Análise de Hierarquia de Escopo | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Sub/RG/Recurso | ❌ | | Exclusão de PIM/JIT | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Excluir atribuições com limite de tempo | ❌ | | Detecção de Condição ABAC | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Desvio de incompatibilidade de condição | ❌ | | Instruções de Remediação | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ Terraform/CLI/PowerShell | ❌ | | Avaliação de Nível de Risco | Básico | Avançado (ALTO/MÉDIO/BAIXO) | Avançado (ALTO/MÉDIO/BAIXO) | Avançado (ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | Avançado (CRÍTICO/ALTO/MÉDIO) | Avançado (CRÍTICO/ALTO/MÉDIO/BAIXO) | | Análises de Atividade | Limitado | Detalhado (obsoleto/recente/nunca) | Detalhado (obsoleto/recente/nunca) | Detalhado (obsoleto/recente/nunca) | Detalhado (obsoleto/recente/nunca) | Básico (baseado em idade) | Detalhado (expiração de credencial/análise de permissão) | Análise de lacunas de política | Detalhado (atividade de administrador com escopo) | Detalhado (indicadores obsoletos) | Detalhado (obsoleto/recente/nunca) | Detalhado (obsoleto/recente/nunca) | Detalhado (idade da senha/lacunas de política) | Detalhado (recência de uso/estatísticas de protocolo) | Detalhado (uso de licença/rastreamento não utilizado) | Detalhado (integridade de sincronização/estatísticas de erro) | Detalhado (estatísticas de recurso/ambiente/proprietário) | Detalhado (estatísticas de tipo de grupo/proprietário/associação) | Detalhado (estatísticas de tipo de caminho de ataque/complexidade/risco) | Detalhado (estatísticas de tipo de desvio/função/locatário/assinatura) | Detalhado (estatísticas de tipo de consentimento/permissão/obsoleto) | | Visualização de Matriz | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | Análise por Departamento | ✅ | ✅ Com estatísticas | ✅ Com estatísticas | ✅ Com estatísticas | ✅ Com estatísticas | ❌ | ❌ | ✅ Com estatísticas | ✅ Com estatísticas | ❌ | ✅ Com estatísticas | ✅ Com estatísticas | ✅ Com estatísticas | ✅ Com estatísticas | ✅ Com estatísticas | ❌ | ❌ | ❌ | ❌ | ❌ | | Exportação para BloodHound | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | Relatório HTML | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | | Exportação CSV/JSON | ✅ | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Campos aprimorados | ✅ Relatório de linha de base/desvio JSON | ✅ Campos aprimorados | | Modo Furtivo | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | | | Reconhecimento de equipe vermelha | Auditorias de conformidade MFA | Segurança de usuários externos | Auditoria de acesso privilegiado | Governança de funções privilegiadas | Segurança de contas de serviço | Segurança de registro de aplicativos e gerenciamento de credenciais | Análise de lacunas de política de segurança | Governança de acesso administrativo com escopo | Higiene e limpeza de contas | Confiança e conformidade de dispositivos | Segurança de redefinição de senha | Conformidade de política de senhas | Migração e segurança de autenticação legada | Governança de licenças e otimização de custos | Integridade de sincronização de diretório e rastreamento de erros | Segurança do Power Platform e governança de conectores | Segurança e governança de grupos | Análise de caminho de ataque e detecção de escalonamento de privilégio | Governança RBAC do Azure multilocatário e detecção de acesso não autorizado | Segurança de consentimento OAuth e detecção de concessão de consentimento ilícito |
pip install -r requirements.txt
Ou instale manualmente:```bash
pip install msal requests
# Optional: Additional authentication methods
pip install azure-identity
Enumerate-EntraUsers: O script instalará automaticamente o módulo Microsoft.Graph.Users necessário na primeira execução.
MFA Security Check, Guest Account Enumeration, Critical Admin Access Check, Privileged Role Check, Service Principal Check, Application Registration Check, Conditional Access Check, Administrative Unit Check, Stale Account Check, Device Trust Check, SSPR Check, Password Policy Check, Legacy Auth Check, License Check, Directory Sync Check, Power Platform Check e Group Security Check: Requerem o SDK do Microsoft Graph PowerShell:
Azure RBAC Check: Requer módulos do Azure PowerShell:```powershell Install-Module Az -Scope CurrentUser
Ou instale módulos individuais:```powershell
Install-Module Az.Accounts -Scope CurrentUser
Install-Module Az.Resources -Scope CurrentUser
Outras ferramentas:```powershell Install-Module Microsoft.Graph -Scope CurrentUser
Ou instale módulos individuais:```powershell
Install-Module Microsoft.Graph.Authentication -Scope CurrentUser
Install-Module Microsoft.Graph.Users -Scope CurrentUser
Install-Module Microsoft.Graph.Identity.SignIns -Scope CurrentUser
Install-Module Microsoft.Graph.Identity.DirectoryManagement -Scope CurrentUser
Install-Module Microsoft.Graph.Applications -Scope CurrentUser
Install-Module Microsoft.Graph.Groups -Scope CurrentUser
Ambos os scripts suportam múltiplos métodos de autenticação:
az loginConnect-AzAccountGRAPH_ACCESS_TOKEN ou AZURE_ACCESS_TOKENA versão Python também suporta:
Esta seção fornece uma matriz abrangente dos métodos de autenticação e permissões de API exigidas por cada script no kit de ferramentas.
Todos os scripts suportam os mesmos métodos de autenticação principais, com pequenas variações baseadas na API de destino:
Scripts: EntraRecon, EntraMFACheck, EntraGuestCheck, EntraAppAccess, EntraRoleCheck, EntraServicePrincipalCheck, EntraConditionalAccessCheck, EntraAdminUnitCheck, EntraStaleAccountCheck, EntraDeviceCheck, EntraSSPRCheck, EntraPasswordPolicyCheck, EntraLegacyAuthCheck, EntraLicenseCheck, EntraDirectorySyncCheck, EntraPowerPlatformCheck, EntraGroupCheck, EntraApplicationCheck, EntraAttackPathCheck, EntraOAuthConsentCheck, EntraSignInRiskCheck, EntraPIMCheck, EntraComplianceCheck
Scripts: EntraAzureRBACCheck, EntraKeyVaultCheck, EntraStorageAccountCheck, EntraManagedIdentityCheck, EntraNetworkSecurityCheck, EntraAzureAttackPathCheck
A tabela a seguir mostra os escopos obrigatórios e de fallback para cada script baseado no Microsoft Graph. Os escopos de fallback são usados quando o usuário não tem permissões para o conjunto completo de escopos obrigatórios.
Esses scripts usam o Azure PowerShell (módulo Az) e exigem permissões do Azure RBAC em vez de escopos do Microsoft Graph:
Os seguintes escopos do Microsoft Graph são mais frequentemente exigidos em todo o kit de ferramentas:
| Escopo | Scripts que Usam | Propósito |
|---|---|---|
Directory.Read.All | 21+ scripts | Ler objetos do diretório (usuários, grupos, funções, configurações) |
User.Read.All | 19+ scripts | Ler todas as propriedades do usuário, incluindo atividade de login |
scripts/python/entra_recon.py |
| Documento | Descrição |
|---|
| EntraRecon-PS1.md | Documentação completa do script PowerShell incluindo todos os parâmetros, funcionalidades e exemplos de uso |
| EntraRecon-PY.md | Documentação completa do script Python incluindo métodos de autenticação, configuração stealth e exemplos |
| EntraMFACheck-PS1.md | Documentação da Verificação de Segurança MFA incluindo detecção de caixas de correio compartilhadas, rastreamento de login e avaliação de risco |
| EntraGuestCheck-PS1.md | Documentação da Enumeração de Contas Convidados incluindo extração de domínio convidado, rastreamento de convites e análise de segurança |
| EntraAppAccess-PS1.md | Documentação da Verificação de Acesso a Aplicativos PowerShell & Graph CLI incluindo rastreamento de acesso a aplicativos, datas de atribuição e análise de acesso privilegiado |
| EntraRoleCheck-PS1.md | Documentação da Verificação de Funções Privilegiadas incluindo enumeração de funções, rastreamento de atribuições PIM, avaliação de risco e análise de segurança |
| EntraServicePrincipalCheck-PS1.md | Documentação da Verificação de Segurança de Principal de Serviço incluindo enumeração de credenciais, rastreamento de expiração, análise de permissões, segurança do proprietário e avaliação de risco |
| EntraConditionalAccessCheck-PS1.md | Documentação da Verificação de Segurança da Política de Acesso Condicional incluindo enumeração de políticas, detecção de exclusão, lacunas de imposição MFA, cobertura de aplicativos críticos e avaliação de risco |
| EntraStaleAccountCheck-PS1.md | Documentação da Verificação de Contas Obsoletas incluindo detecção de contas obsoletas, detecção de contas nunca logadas, detecção de desperdício de licenças, rastreamento de expiração de senha e análise de higiene de contas |
| EntraDeviceCheck-PS1.md | Documentação da Verificação de Confiança e Conformidade de Dispositivos incluindo enumeração de dispositivos, detecção de status de conformidade, detecção BYOD, rastreamento de login obsoleto, políticas de conformidade Intune e avaliação de risco |
| EntraSSPRCheck-PS1.md | Documentação da Verificação de Redefinição de Senha de Autoatendimento incluindo detecção de status SSPR, análise de métodos de registro, detecção de métodos de backup, classificação de métodos fortes, correlação MFA e avaliação de risco |
| EntraPasswordPolicyCheck-PS1.md | Documentação da Verificação de Segurança da Política de Senhas incluindo análise de expiração de senha, detecção de senhas que nunca expiram, verificação de requisitos de complexidade, identificação de políticas fracas, rastreamento de idade da senha e avaliação de risco |
| EntraLegacyAuthCheck-PS1.md | Documentação da Verificação de Autenticação Legada incluindo detecção de protocolo legado, análise de logs de login, rastreamento de último uso, estatísticas de protocolo, correlação MFA e avaliação de risco |
| EntraLicenseCheck-PS1.md | Documentação da Análise de Licenças e SKUs incluindo enumeração de SKUs do inquilino, rastreamento de atribuição de licenças de usuário, detecção de licenças privilegiadas, identificação de licenças não utilizadas e avaliação de risco |
| EntraAdminUnitCheck-PS1.md | Documentação da Verificação de Segurança de Unidades Administrativas incluindo enumeração de UAs, análise de atribuições de funções escopo, enumeração de membros, detecção de status MFA, avaliação de risco e análise de acesso de administrador escopo |
| EntraDirectorySyncCheck-PS1.md | Documentação da Verificação de Status de Sincronização de Diretório incluindo análise de status de sincronização, detecção de erros de sincronização, detecção de sincronização obsoleta, identificação de conflitos de sincronização, análise de escopo de sincronização e avaliação de risco |
| EntraPowerPlatformCheck-PS1.md | Documentação da Enumeração do Power Platform incluindo enumeração de Power Apps, enumeração de fluxos Power Automate, detecção de conectores sensíveis, identificação de ações de alto risco, análise de conectores e avaliação de risco |
| EntraGroupCheck-PS1.md | Documentação da Análise de Segurança de Grupos incluindo enumeração de grupos, análise do proprietário com status MFA, detecção de grupos sem proprietário, detecção de associação excessiva, detecção de grupos atribuíveis a funções e avaliação de risco |
| EntraApplicationCheck-PS1.md | Documentação da Verificação de Segurança de Registro de Aplicativos incluindo enumeração de aplicativos, análise de credenciais, rastreamento de expiração, análise de permissões de API, avaliação de segurança do proprietário e avaliação de risco |
| EntraAttackPathCheck-PS1.md | Documentação da Análise de Caminho de Ataque incluindo caminhos de escalonamento de privilégios, delegações de redefinição de senha, associações transitivas de grupos, acesso a caixas de correio compartilhadas, avaliação de risco e análise de complexidade de caminhos |
| EntraAzureRBACCheck-PS1.md | Documentação da Auditoria de Atribuições de Funções RBAC do Azure e Detecção de Desvio incluindo exportação de linha de base, detecção de desvio, suporte a várias assinaturas, suporte a vários inquilinos, pular inquilinos com falha, expansão de membros de grupo, matriz de permissões de todos os usuários, exclusão PIM/JIT, detecção de incompatibilidade de condição ABAC, instruções de remediação (Terraform/CLI/PowerShell), rastreamento de atribuições de funções, detecção de alterações não autorizadas e avaliação de risco |
| EntraOAuthConsentCheck-PS1.md | Documentação da Auditoria de Concessão de Consentimento OAuth incluindo enumeração de OAuth2PermissionGrant, detecção de consentimento de administrador vs usuário, identificação de permissões perigosas, detecção de consentimento obsoleto, análise de aplicativos de terceiros, correlação de atividade de login e avaliação de risco para detecção de concessão de consentimento ilícita |
| EntraSignInRiskCheck-PS1.md | Documentação da Análise de Proteção de Identidade incluindo enumeração de usuários arriscados, rastreamento de nível/estado de risco, análise de detecção de risco, detecção de viagem impossível, detecção de IP anônimo, detecção de pulverização de senhas, detecção de credenciais vazadas, análise de padrões, análise de tempo e orientações de remediação |
| EntraPIMCheck-PS1.md | Documentação da Auditoria de Configuração do Privileged Identity Management (PIM) incluindo lacunas de configuração de acesso JIT, análise de fluxo de aprovação, imposição MFA, requisitos de justificativa, configuração de notificações, detecção de atribuição permanente, PIM para Grupos, Revisões de Acesso e avaliação de risco |
| EntraKeyVaultCheck-PS1.md | Documentação da Auditoria de Segurança do Azure Key Vault incluindo análise do modelo de acesso (RBAC vs políticas de acesso), status de exclusão suave e proteção contra purga, auditoria de segurança de rede (acesso público, firewall, VNet), detecção de endpoint privado, detecção de permissões excessivamente permissivas, verificação de log de diagnóstico, rastreamento de expiração de segredos/certificados/chaves e avaliação de risco |
| EntraStorageAccountCheck-PS1.md | Documentação da Auditoria de Segurança de Contas de Armazenamento do Azure incluindo detecção de contêiner de blob público, verificação de imposição HTTPS, análise de acesso de chave compartilhada, auditoria de segurança de rede (acesso público, firewall, VNet, endpoints privados), análise de proteção de dados (exclusão suave, versionamento), rastreamento de rotação de chaves, detecção de replicação entre inquilinos, verificação de versão TLS, verificação de criptografia de infraestrutura, verificação de log de diagnóstico e avaliação de risco |
| EntraNetworkSecurityCheck-PS1.md | Documentação da Auditoria de Segurança de Rede do Azure incluindo análise de regras NSG, detecção de regras excessivamente permissivas (0.0.0.0/0, Any-Any), detecção de portas de gerenciamento abertas (RDP, SSH, WinRM), análise de uso do Azure Bastion, status de proteção DDoS, segurança de emparelhamento VNet, cobertura NSG de sub-rede, configuração de logs de fluxo NSG, análise de gateway VPN/ExpressRoute, status de análise de tráfego e avaliação de risco |
| EntraManagedIdentityCheck-PS1.md | Documentação da Auditoria de Segurança de Identidades Gerenciadas do Azure incluindo inventário de identidades atribuídas pelo sistema vs atribuídas pelo usuário, análise de atribuições de funções, detecção de identidades com alto privilégio (Owner, Contributor, UAA), detecção de funções críticas, detecção de acesso entre assinaturas, identificação de identidades não utilizadas, cobertura de recursos (VMs, App Services, Function Apps), análise de escopo e avaliação de risco |
| EntraExchangeCheck-PS1.md | Documentação da Auditoria de Segurança do Exchange Online incluindo análise de regras de caixa de entrada, detecção de encaminhamento externo, auditoria de regras de transporte, análise de delegação de caixa de correio, status de log de auditoria, análise de política OWA, regras de acesso do cliente, detecção de indicadores BEC, detecção de regras suspeitas e avaliação de risco |
| EntraSharePointCheck-PS1.md | Documentação da Auditoria de Segurança do SharePoint Online incluindo configurações de compartilhamento do inquilino, detecção de links anônimos, detecção de substituição no nível do site, análise de acesso de convidados, configuração de compartilhamento do OneDrive, cobertura de rótulos de sensibilidade, análise de link padrão, políticas de expiração de links e avaliação de risco |
| EntraTeamsCheck-PS1.md | Documentação da Auditoria de Segurança do Microsoft Teams incluindo configurações de acesso externo (federação), políticas de acesso de convidados, análise de política de reunião (participação anônima, bypass do lobby), políticas de permissão de aplicativos, políticas de mensagens, análise de inventário do Teams e avaliação de risco |
| EntraAzureAttackPathCheck-PS1.md | Documentação da Análise de Caminho de Ataque entre Serviços do Azure incluindo caminhos de VM para Key Vault, escalonamento de privilégio de identidade gerenciada, movimento lateral de armazenamento, vulnerabilidades de função personalizada, caminhos entre assinaturas, herança de grupo de gerenciamento, narrativas de ataque e avaliação de risco |
| EntraReport-PS1.md | Documentação do Gerador de Relatórios de Segurança Consolidados incluindo execução de várias verificações, painel executivo HTML, cálculo de pontuação de segurança, matriz de prioridade de remediação, análise de tendências com comparação de linha de base, modos de verificação rápida e verificação abrangente e exportação de linha de base JSON |
| EntraComplianceCheck-PS1.md | Documentação da Avaliação de Conformidade incluindo mapeamento CIS Azure Benchmark, mapeamento de controles NIST 800-53, Critérios de Serviço de Confiança SOC 2, controles ISO 27001, indicadores GDPR, pontuação de conformidade, filtragem por família de controles e relatórios executivos |
| SharePointEnum-PS1.md | Documentação da Enumeração do SharePoint Online incluindo pesquisa REST API, consultas FQL, filtros de refinamento, download de arquivos (disco e Base64), detecção automática, fallback de autenticação inteligente (validação de token de sessão, fallback Azure CLI, fluxo de código de dispositivo MSAL), modo stealth e opções de exportação |
| Funcionalidade | PowerShell | Python |
|---|
| Enumeração de Usuários (15+ métodos) | ✅ | ✅ |
| Avaliação de Segurança | ✅ | ✅ |
| Superfície de Ataque de Credenciais | ✅ | ✅ |
| Análise de Acesso Condicional | ✅ | ✅ |
| Enumeração de Dispositivos/Intune | ✅ | ✅ |
| Análise de Caminho de Ataque | ✅ | ✅ |
| Enumeração do Power Platform | ✅ | ✅ |
| Análise de Movimento Lateral | ✅ | ✅ |
| Exportação BloodHound | ✅ | ✅ |
| Geração de Relatório HTML | ✅ | ✅ |
| Modo Stealth | ✅ | ✅ |
| Menu Interativo | ✅ | ✅ |
| Token Azure CLI | ✅ | ✅ |
| Fluxo de Código do Dispositivo | ✅ | ✅ |
| Troca de Token de Atualização | ❌ | ✅ |
| Banco de Dados Estendido de IDs de Aplicativos | ❌ | ✅ |
| Predefinições Stealth | ❌ | ✅ |
| Parâmetro | Método | Descrição |
|---|
| (padrão) | Interativo | Connect-MgGraph com prompt OAuth interativo no navegador |
-UseAzCliToken | Token da CLI do Azure | Usa az account get-access-token --resource https://graph.microsoft.com |
-UseAzPowerShellToken | Token do Azure PowerShell | Usa Get-AzAccessToken -ResourceUrl "https://graph.microsoft.com" |
| Parâmetro | Método | Descrição |
|---|
| (padrão) | Interativo | Connect-AzAccount com prompt interativo no navegador |
-UseAzCliToken | Token da CLI do Azure | Usa sessão existente do az login |
-UseAzPowerShellToken | Token do Azure PowerShell | Usa sessão existente do Connect-AzAccount |
-UseDeviceCode | Fluxo de Código de Dispositivo | Connect-AzAccount -UseDeviceAuthentication para terminais headless |
| Script | Módulo | Autenticação |
|---|
| EntraExchangeCheck | ExchangeOnlineManagement | Connect-ExchangeOnline (requer a função de Administrador do Exchange) |
| EntraSharePointCheck | Microsoft.Online.SharePoint.PowerShell | Connect-SPOService para a URL do Administrador do SharePoint (requer a função de Administrador do SharePoint) |
| SharePointEnum | Az.Accounts (opcional) | Fallback inteligente: token de sessão do Azure → CLI do Azure → fluxo de código de dispositivo MSAL (ID do cliente do Microsoft Office) |
| EntraTeamsCheck | MicrosoftTeams | Connect-MicrosoftTeams (requer a função de Administrador do Teams) |
| Script | Escopos Obrigatórios | Escopos de Fallback |
|---|
| Invoke-EntraApplicationCheck | Application.Read.All, Directory.Read.All, User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.All | Application.Read.All, Directory.Read.All, User.ReadBasic.All |
| Invoke-EntraRoleCheck | Directory.Read.All, RoleManagement.Read.Directory, User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.All | Directory.Read.All, RoleManagement.Read.Directory, User.ReadBasic.All |
| Invoke-EntraMFACheck | User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.All | User.ReadBasic.All, UserAuthenticationMethod.Read.All |
| Invoke-EntraGroupCheck | Directory.Read.All, Group.Read.All, User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.All | Directory.Read.All, Group.Read.All, User.ReadBasic.All |
| Invoke-EntraGuestCheck | User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.All | User.ReadBasic.All, UserAuthenticationMethod.Read.All |
| Invoke-EntraAdminUnitCheck | Directory.Read.All, AdministrativeUnit.Read.All, RoleManagement.Read.Directory, User.Read.All, UserAuthenticationMethod.Read.All | Directory.Read.All, AdministrativeUnit.Read.All, User.ReadBasic.All |
| Invoke-EntraConditionalAccessCheck | Policy.Read.All, Directory.Read.All, Application.Read.All, User.Read.All | Policy.Read.All, Directory.Read.All |
| Invoke-EntraDeviceCheck | Device.Read.All, Directory.Read.All, DeviceManagementManagedDevices.Read.All, DeviceManagementConfiguration.Read.All | Device.Read.All, Directory.Read.All |
| Invoke-EntraDirectorySyncCheck | Directory.Read.All, User.Read.All, AuditLog.Read.All | Directory.Read.All, User.ReadBasic.All |
| Invoke-EntraAttackPathCheck | Directory.Read.All, Group.Read.All, User.Read.All, UserAuthenticationMethod.Read.All, RoleManagement.Read.Directory, AuditLog.Read.All | Directory.Read.All, Group.Read.All, User.ReadBasic.All |
| Invoke-EntraServicePrincipalCheck | Application.Read.All, Directory.Read.All, User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.All | Application.Read.All, Directory.Read.All, User.ReadBasic.All |
| Invoke-EntraPasswordPolicyCheck | User.Read.All, Directory.Read.All, AuditLog.Read.All | User.ReadBasic.All, Directory.Read.All |
| Invoke-EntraLicenseCheck | Directory.Read.All, User.Read.All | User.ReadBasic.All |
| Invoke-EntraLegacyAuthCheck | AuditLog.Read.All, Directory.Read.All, User.Read.All, UserAuthenticationMethod.Read.All | Directory.Read.All, User.ReadBasic.All |
| Invoke-EntraSSPRCheck | User.Read.All, UserAuthenticationMethod.Read.All, Reports.Read.All, AuditLog.Read.All | User.ReadBasic.All, Reports.Read.All |
| Invoke-EntraStaleAccountCheck | User.Read.All, Directory.Read.All, AuditLog.Read.All | User.ReadBasic.All, Directory.Read.All |
| Invoke-EntraAppAccess | Application.Read.All, Directory.Read.All, User.Read.All, UserAuthenticationMethod.Read.All, AuditLog.Read.All | Application.Read.All, Directory.Read.All, User.ReadBasic.All |
| Invoke-EntraPIMCheck | Directory.Read.All, User.Read.All, RoleManagement.Read.Directory, PrivilegedAccess.Read.AzureAD | Directory.Read.All, User.ReadBasic.All |
| Invoke-EntraOAuthConsentCheck | Application.Read.All, Directory.Read.All, User.Read.All, AuditLog.Read.All | Application.Read.All, Directory.Read.All, User.ReadBasic.All |
| Invoke-EntraSignInRiskCheck | IdentityRiskyUser.Read.All, IdentityRiskySignIn.Read.All, IdentityRiskDetection.Read.All, AuditLog.Read.All, User.Read.All, Directory.Read.All | IdentityRiskyUser.Read.All, IdentityRiskySignIn.Read.All, IdentityRiskDetection.Read.All |
| Invoke-EntraPowerPlatformCheck | User.Read.All, Directory.Read.All, Application.Read.All | (Permissões da API do Power Platform via contexto do usuário) |
| Invoke-EntraComplianceCheck | Directory.Read.All, Policy.Read.All, User.Read.All, Application.Read.All, AuditLog.Read.All, RoleManagement.Read.Directory, IdentityRiskyUser.Read.All, IdentityRiskEvent.Read.All, UserAuthenticationMethod.Read.All | Directory.Read.All, Policy.Read.All, User.ReadBasic.All |
| Script | Permissões do Azure RBAC | Escopos Adicionais do Graph |
|---|
| Invoke-EntraAzureRBACCheck | Função de Leitor em todas as assinaturas de destino | User.Read, Directory.Read.All, GroupMember.Read.All |
| Invoke-EntraKeyVaultCheck | Leitor nas assinaturas, Leitor do Key Vault para enumeração de segredos | - |
| Invoke-EntraStorageAccountCheck | Leitor nas assinaturas, Leitor de Dados de Blob do Storage para enumeração de contêineres | - |
| Invoke-EntraManagedIdentityCheck | Leitor nas assinaturas | Directory.Read.All para consultas do Graph |
| Invoke-EntraNetworkSecurityCheck | Leitor nas assinaturas para enumeração de NSG/VNet | - |
| Invoke-EntraAzureAttackPathCheck | Leitor nas assinaturas, Leitor do Key Vault para enumeração de políticas de acesso | - |
| Script | Módulo | Funções/Permissões Obrigatórias |
|---|
| Invoke-EntraExchangeCheck | ExchangeOnlineManagement | Administrador do Exchange ou equivalente. Necessário para: Get-InboxRule, Get-TransportRule, Get-MailboxPermission, Get-Mailbox |
| Invoke-EntraSharePointCheck | Microsoft.Online.SharePoint.PowerShell | Administrador do SharePoint ou equivalente. Necessário para: Get-SPOTenant, Get-SPOSite, cmdlets de configuração de compartilhamento |
| Invoke-SharePointEnum | Az.Accounts (opcional) | Qualquer usuário com acesso ao SharePoint. Usa a API de Pesquisa REST do SharePoint com permissões delegadas via sessão do Azure, CLI do Azure ou fluxo de código de dispositivo MSAL |
| Invoke-EntraTeamsCheck | MicrosoftTeams | Administrador do Teams ou equivalente. Necessário para: Get-CsTenantFederationConfiguration, Get-CsTeamsMeetingPolicy, Get-CsTeamsClientConfiguration, Get-Team |