
CyberArk Auditoria de Segurança
Uma ferramenta abrangente de avaliação de segurança baseada em PowerShell para plataformas CyberArk Privileged Access Management (PAM). Projetada para profissionais de segurança ofensiva, red teamers e testadores de penetração.
Esta ferramenta é projetada para ser executada REMOTAMENTE contra servidores CyberArk via rede. Ela NÃO precisa ser executada nos próprios servidores CyberArk. Todas as verificações são realizadas pela rede usando a API PVWA, varredura de portas e testes web.
Esta ferramenta realiza verificações de segurança incluindo conformidade com CIS Benchmark, melhores práticas do fornecedor, testes de caixa preta, análise de segurança de rede, verificações de vulnerabilidades específicas de CVE (incluindo CVEs de 2025), segurança de identidade de máquinas, gerenciamento de segredos, avaliação de privilégios zero permanentes (ZSP), governança de identidade e verificações de segurança aprimoradas.
| Funcionalidade | Descrição |
|---|---|
| Auditoria Remota | Todas as verificações realizadas remotamente pela rede - sem necessidade de instalação nos servidores CyberArk |
| Modo OPSEC | Varredura furtiva com atrasos configuráveis, jitter e pegada de detecção reduzida |
| Suporte a Proxy | Roteie todo o tráfego através do Burp Suite, ZAP ou outros proxies de interceptação |
| Ataques de Temporização | Detecte enumeração de usuários e injeção cega via análise de tempo de resposta |
| Segurança JWT | Teste para bypass de algoritmo none, confusão de chaves, algoritmos de assinatura fracos |
| Teste de WebSocket | Descubra endpoints em tempo real e teste para Hijacking de WebSocket entre sites |
| Evasão de WAF | Teste bypasses de codificação, poluição de parâmetros HTTP, contrabando de requisições |
| Rotação de User-Agent | Strings User-Agent aleatórias ou personalizadas para evitar impressão digital |
| Execução Paralela | Execução paralela opcional para varreduras mais rápidas |
| Modo Silencioso | Saída de console reduzida para automação e script |
| Segurança de Credenciais | Manipulação segura com limpeza de memória após o uso |
| Relatórios Abrangentes | Painel HTML, 7 arquivos CSV e JSON estruturado para uso programático |
| Evidência de PoC | Prova de conceito de requisição/resposta incluída no relatório HTML para teste de penetração |
| Execução Seletiva | Execute apenas categorias específicas de verificação (portscan, CVE, blackbox, authenticated, network) |
| Redução de Falsos Positivos | Impressão digital de linha de base para eliminar falsos positivos de captura geral de SPA |
| Testes de Autenticação de Identidade | Verificações de divulgação de informações e enumeração de StartAuthentication/ForgotUsername |
| Fase de Auditoria | Acesso Necessário |
|---|---|
| Fase 1 (Não Autenticado) | Acesso de rede ao PVWA (HTTPS/443) |
| Fase 2 (Autenticado) | Credenciais da API CyberArk com função de Administrador do Vault ou Auditor |
Este script é completamente autocontido e usa apenas capacidades nativas do PowerShell e .NET Framework. Nenhuma ferramenta ou módulo adicional precisa ser instalado.
O script utiliza:
System.Net.Sockets.TcpClient, System.Net.Security.SslStream para análise de rede e TLSInvoke-WebRequest, Invoke-RestMethod para testes HTTP/APISystem.Security.Cryptography.X509Certificates para análise de certificadosAbra o PowerShell e execute:```powershell $PSVersionTable.PSVersion
Verifique se a versão principal é **7 ou superior**. Caso contrário, [baixe o PowerShell 7.x](https://github.com/PowerShell/PowerShell/releases).
> **Nota:** Este script requer PowerShell 7.0 ou posterior. O Windows PowerShell 5.1 não é suportado.
### Passo 2: Baixar o Script
**Opção A: Clonar o repositório (recomendado)**```powershell
git clone https://github.com/Logisek/HuntCyberArk.git
cd HuntCyberArk
Opção B: Baixar diretamente```powershell
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/Logisek/HuntCyberArk/main/CyberArk-Security-Audit.ps1" -OutFile "CyberArk-Security-Audit.ps1"
### Passo 3: Definir Política de Execução (se necessário)
Se você encontrar erros de execução de script, permita temporariamente a execução de script:```powershell
# Check current policy
Get-ExecutionPolicy
# Set for current session only (recommended)
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
# Or unblock the downloaded script
Unblock-File -Path .\CyberArk-Security-Audit.ps1
Para testes TLS adequados, certifique-se de que sua sessão do PowerShell suporta TLS 1.2+:```powershell
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
### Passo 5: Teste de Conectividade
Verifique se você pode acessar o servidor PVWA:```powershell
# Test basic connectivity
Test-NetConnection -ComputerName pvwa.domain.com -Port 443
# Test HTTPS endpoint
Invoke-WebRequest -Uri "https://pvwa.domain.com/PasswordVault/" -UseBasicParsing -TimeoutSec 10
O PowerShell 7 oferece desempenho melhorado e melhor suporte a TLS:```powershell
winget install Microsoft.PowerShell
## Fases de Auditoria e Requisitos de Autenticação
A auditoria é executada em duas fases, cada uma com requisitos de autenticação diferentes:
### Fase 1: Verificações Não Autenticadas (Nenhuma credencial necessária)
Testes externos/blackbox que podem ser executados sem nenhuma credencial:
- Segurança de rede (varredura de portas, exposição da porta do cofre)
- Configuração TLS/SSL e análise de certificados
- Segurança web blackbox (endpoints expostos, divulgação de informações)
- Cabeçalhos de segurança e segurança de cookies do PVWA
- Testes de vulnerabilidade específicos de CVE (incluindo CVEs de 2025)
- Testes de segurança de API (endpoints não autenticados)
- Detecção de versão de componentes
- Detecção de ataque de temporização
- Testes de segurança JWT/OAuth2
- Descoberta de endpoints WebSocket
- Testes de evasão de WAF
- Testes de endpoints de autenticação do CyberArk Identity/Privilege Cloud (StartAuthentication, ForgotUsername)
**Caso de Uso**: Testes de penetração, avaliações de segurança externas, reconhecimento rápido
### Fase 2: Verificações Autenticadas (Credenciais da API CyberArk necessárias)
Auditorias de configuração profundas que exigem acesso à API REST do CyberArk:
- Configurações e permissões de cofres
- Configurações de gerenciamento de contas e credenciais
- Configurações de plataforma
- Contas de usuário e permissões do cofre
- Configurações de métodos de autenticação
- Status de saúde dos componentes
- Configurações de Master Policy, PSM, CPM, PTA
- Segurança de Identidade de Máquina (contas de serviço, AppIDs)
- Gerenciamento de Segredos (configuração CP/CCP)
- Privilégios Zero Permanentes (avaliação de acesso JIT)
- Governança de Identidade (identidades órfãs, desvio de permissões)
- Segurança na Nuvem (integração AWS/Azure/GCP)
- Recuperação de Desastres (Cofre DR, saúde do cluster HA)
- Mapeamento de Conformidade (NIST, SOC 2, PCI-DSS)
- Integração do Secrets Hub (sincronização de segredos nativa da nuvem)
- Segurança do Acesso Remoto / Alero
- Segurança de segredos do Kubernetes
- Segurança da pipeline DevSecOps
- Verificações específicas do Privilege Cloud / SaaS
- Integração CyberArk Identity / Idaptive
- Segurança de plug-ins personalizados
- Segurança de backup
- Integração HSM
- Detecção avançada do PTA
- Integrações de terceiros (SIEM, ITSM, SOAR)
- Métricas de higiene operacional
- Simulação de caminho de ataque
- Integridade da cadeia de suprimentos
- Segmentação de rede
**Permissões Necessárias**: Função de Administrador do Cofre ou Auditor recomendada
## Funcionalidades
### Categorias de Verificações de Segurança
| Categoria | Prefixo de Controle | Descrição |
|----------|---------------|-------------|
| CIS Benchmark | 1.x - 8.x | Conformidade com CIS CyberArk PAM Benchmark v1.0 |
| Melhores Práticas do Fornecedor | V1.x - V8.x | Recomendações de hardening de segurança do CyberArk |
| Testes Blackbox | BB1 - BB11 | Testes de segurança externos sem autenticação |
| Segurança de Rede | NET1 - NET7 | Varredura de portas e análise de exposição de rede |
| Segurança TLS | TLS1 - TLS4 | Configuração SSL/TLS e análise de cifras |
| Verificações CVE | CVE1 - CVE23 | Detecção de vulnerabilidades conhecidas do CyberArk (2018-2025) |
| Boletins de Segurança | CA25-x | Verificações de boletins de segurança do CyberArk |
| Segurança de API | API1 - API5 | Testes de segurança da API REST |
| Segurança de Autenticação | AUTH1 - AUTH2 | Testes de endpoints de autenticação do CyberArk Identity/Privilege Cloud |
| **Segurança Avançada** | | |
| Identidade de Máquina | MID1 - MID9 | Segurança de contas de serviço, AppID e provedor AIM |
| Gerenciamento de Segredos | SEC1 - SEC14 | Segurança do Credential Provider/CCP e Conjur |
| Privilégios Zero Permanentes | ZSP1 - ZSP5 | Acesso JIT e avaliação de privilégios |
| Governança de Identidade | IGA1 - IGA8 | Gerenciamento do ciclo de vida e permissões |
| Integração EPM | EPM1 - EPM6 | Verificações do Endpoint Privilege Manager |
| Segurança na Nuvem | CLD1 - CLD6 | Verificações de Acesso Seguro à Nuvem |
| Recuperação de Desastres | DR1 - DR5 | Configuração de HA e DR |
| Mapeamento de Conformidade | COMP1 - COMP4 | Alinhamento com NIST, SOC2, PCI-DSS |
| Registro de Auditoria | AUD1 - AUD4 | Validação de SIEM e registro |
| **Expansão da Postura de Segurança** | | |
| Secrets Hub | SH1 - SH6 | Saúde da sincronização de segredos na nuvem, latência, desvio de versão |
| Acesso Remoto / Alero | RA1 - RA6 | Convite de fornecedor, MFA, limites de sessão, vinculação de dispositivo |
| Segredos do Kubernetes | K8S1 - K8S8 | Secrets Provider, RBAC, segurança de pod, Conjur follower |
| Pipeline DevSecOps | DSO1 - DSO6 | Recuperação de segredos em CI/CD, detecção de dispersão, tokens de curta duração |
| Privilege Cloud | PC1 - PC5 | Saúde do conector, isolamento de inquilino, integração ISP |
| CyberArk Identity | IDN1 - IDN6 | Integração SSO, MFA adaptativo, pontuação de risco de sessão |
| Plug-ins Personalizados | PLG1 - PLG5 | Segurança de plug-ins PSM/CPM, assinaturas digitais, ACLs |
| Segurança de Backup | BKP1 - BKP5 | Criptografia, permissões de arquivo, teste de restauração |
| Integração HSM | HSM1 - HSM4 | Saúde do HSM, encapsulamento de chaves, isolamento de partição |
| Aprofundamento PTA | PTAD1 - PTAD6 | Regras personalizadas, qualidade ML, UEBA, fadiga de alertas |
| Integração de Terceiros | TPI1 - TPI5 | Conectividade SIEM/ITSM/SOAR, saúde de credenciais |
| Higiene Operacional | OPS1 - OPS8 | Fila de integração, falhas do CPM, métricas do PSM, licença |
| Simulação de Caminho de Ataque | APS1 - APS6 | PtH, retransmissão NTLM, Kerberoasting, escalonamento de privilégios |
| Integridade da Cadeia de Suprimentos | SCI1 - SCI5 | Hashes de arquivos, atualização de patches, assinatura de código |
| Segmentação de Rede | NSG1 - NSG5 | Isolamento do cofre, ACLs de componentes, monitoramento Leste-Oeste |
### Cobertura Detalhada das Verificações
#### Conformidade com CIS Benchmark (1.x - 8.x)
- Configuração dedicada do servidor do Cofre
- Regras de firewall e hardening de serviços
- Configurações de senha da Master Policy
- Complexidade e expiração de senhas
- Acesso e permissões de cofres
- Gerenciamento automático de senhas
- Segurança MFA e LDAP
- Gravação de sessão PSM
- Registro de auditoria e integração SIEM
- Configuração TLS
#### Melhores Práticas do Fornecedor (V1.x - V8.x)
- Configurações da Master Policy (período de validade, senhas de uso único, acesso exclusivo)
- Gravação PSM, registro de teclas, restrições de área de transferência
- Regras de descoberta e integração de contas
- Detecção de anomalias do PTA
- Segurança de componentes de conexão
- Contas vinculadas (logon/reconciliação)
- Cabeçalhos de segurança HTTP do PVWA
- Configuração do serviço CPM
#### Testes de Segurança Blackbox (BB1 - BB11)
- Endpoints sensíveis expostos (Swagger, documentação da API, páginas de administrador)
- Divulgação de informações (versão, stack traces)
- Testes de credenciais padrão
- Métodos HTTP perigosos (PUT, DELETE, TRACE)
- Atributos de segurança de cookies (Secure, HttpOnly, SameSite)
- Configuração incorreta de CORS
- Exposição de arquivos de backup/configuração
- Listagem de diretório
- Problemas de certificado SSL/TLS
- Detecção de limitação de taxa
- Padrões de vulnerabilidade conhecidos
#### Segurança de Autenticação do CyberArk Identity / Privilege Cloud (AUTH1 - AUTH2)
- **Divulgação de Informações no StartAuthentication**: Detecta exposição de dados sensíveis, incluindo:
- Exposição de ID de sessão em respostas de pré-autenticação
- Enumeração de usuários por meio de desafios de autenticação (usuários válidos vs. inválidos)
- Divulgação do mecanismo MFA (UP, SMS, EMAIL, OATH, QR, etc.)
- Divulgação de e-mail/PII em respostas de autenticação
- Exposição de ID do inquilino
- Detalhes da configuração de autenticação
- **Enumeração do Endpoint ForgotUsername**: Testa a enumeração de nomes de usuário via recuperação de senha:
- Detecção de disponibilidade do recurso
- Análise de resposta diferencial para usuários válidos vs. inválidos
#### Segurança de Rede (NET1 - NET7)
- **Varredura de Portas**: Varredura abrangente de portas específicas do CyberArk
- PVWA (443, 80)
- Cofre (1858, 1859)
- Administrativas (RDP, SSH, WinRM)
- Banco de dados (MSSQL, MySQL, PostgreSQL, Oracle)
- Protocolos (SMB, NetBIOS, LDAP, SNMP)
- Análise de segurança da porta do cofre (1858)
- Configuração de segurança DNS
#### Segurança TLS/SSL (TLS1 - TLS4)
- Detecção de protocolos fracos (SSLv2, SSLv3, TLS 1.0, TLS 1.1)
- Análise de força do conjunto de cifras
- Detecção de cifras fracas (RC4, DES, 3DES, MD5, NULL, EXPORT)
- Validação de certificado
- Verificação de tamanho de chave
- Verificação de algoritmo de assinatura
#### Verificações de Vulnerabilidade Específicas de CVE (CVE1 - CVE23)
- **CVE-2018-9842**: Divulgação de memória do Cofre pela porta 1858
- **CVE-2018-9843**: RCE por desserialização no PVWA (pré-autenticação)
- **CVE-2019-7442**: XXE na autenticação SAML
- **CVE-2021-31796**: Exploração remota de arquivos de credenciais (sonda arquivos .cred expostos, analisa VerificationsFlag para determinar se as senhas podem ser descriptografadas)
- **CVE-2021-37151**: Enumeração de nomes de usuário do CyberArk Identity por comprimento de resposta MFA (Médio) - Detectada por verificação de divulgação de informações no StartAuthentication
- **CVE-2022-22700**: Enumeração de nomes de usuário do CyberArk Identity por cabeçalho de temporização X-CFY-TX-TM (Médio) - Detectada por verificação de divulgação de informações no StartAuthentication
- **CWE-200**: Divulgação de informações no endpoint StartAuthentication (ID de sessão, mecanismos MFA, ID do inquilino, configuração de autenticação)
- **CWE-203**: Enumeração de nomes de usuário no endpoint ForgotUsername por discrepância observável
- **CVE-2024-42340**: CWE-602 Bypass da aplicação do lado do cliente
- **CVE-2024-42339**: IDOR / Divulgação de informações sensíveis
- **CVE-2024-54840**: Injeção de cabeçalho Host no PVWA (Médio)
- **CVE-2024-57967**: Escalonamento de privilégios por mapeamento LDAP no PVWA (Médio)
- **CVE-2025-22270**: Injeção de HTML no EPM no gerenciamento de funções
- **CVE-2025-22271**: Spoofing de X-Forwarded-For no EPM
- **CVE-2025-22272**: XSS no EPM via modalDlgMsgInternal
- **CVE-2025-22273**: Força bruta de alteração de senha no EPM
- **CVE-2025-22274**: Injeção de definição de aplicativo no EPM
- **CVE-2025-49827**: Bypass do autenticador IAM do Secrets Manager (Crítico)
- **CVE-2025-49828**: Execução remota de código no Secrets Manager (Alto)
- **CVE-2025-49829**: Validações ausentes no Secrets Manager (Moderado)
- **CVE-2025-49830**: Path traversal e divulgação de arquivos no Secrets Manager (Alto)
- **CVE-2025-49831**: Bypass de rede no Secrets Manager (Crítico)
- Boletins de Segurança: CA25-25, CA25-29, CA25-32, CA25-34, CA25-35
- Verificações adicionais: Path traversal, indicadores Log4Shell, versões de API legadas
- Terceiros: poluição de protótipo ag-grid (CVE-2024-38996), Log4Shell (CVE-2021-44228)
#### Testes de Segurança de API (API1 - API5)
- **BOLA/IDOR**: Autorização de nível de objeto quebrada
- **Testes de Injeção**: Injeção SQL, injeção LDAP
- **Mass Assignment**: Injeção de propriedades privilegiadas
- **Versionamento de API**: Detecção de endpoints de API legados
#### Verificações de Segurança Avançadas
- Detecção de versão de componentes e mapeamento CVE
- Segurança de sessão (fixação, sessões concorrentes)
- Injeção de cabeçalho (cabeçalho Host, CRLF)
- Teste de vulnerabilidade XXE em endpoints SOAP
#### Segurança de Identidade de Máquina (MID1 - MID9)
- Enumeração de contas de serviço e análise de privilégios
- Validação de rotação de senha de identidade de máquina
- Detecção de contas de serviço com privilégios excessivos
- Configuração de autenticação baseada em certificado
- Validação de segurança do AppID (máquinas permitidas, restrições de usuário do SO)
- Detecção de identidade de máquina obsoleta
- Verificação de implantação do AIM Provider
- Segurança da configuração do AIM Provider
- Conectividade do AIM Provider com o cofre
#### Gerenciamento de Segredos (SEC1 - SEC14)
- Verificação de implantação do Credential Provider (CP/CCP)
- Análise de força do método de autenticação do AppID
- Validação da configuração de máquinas permitidas
- Configurações de TTL de cache e intervalo de atualização
- Configuração TLS/mTLS do CCP
- Aplicação da política de rotação de segredos
- Detecção de segredos órfãos/não gerenciados
- Análise de dispersão de credenciais
- Saúde da integração Conjur
- Validação de política MAML
- Configuração do autenticador (LDAP, OIDC, IAM, K8s)
- Criptografia do banco de dados Conjur
- Política de rotação de chaves de API
- Registro de auditoria Conjur
#### Privilégios Zero Permanentes (ZSP1 - ZSP5)
- Detecção de acesso privilegiado permanente
- Validação de fluxo de trabalho de dupla aprovação
- Verificações de limite de sessão concorrente
- Aplicação de check-in/check-out
- Recomendações de redução de privilégios permanentes
- Pontuação de prontidão JIT
#### Governança de Identidade (IGA1 - IGA8)
- Detecção de identidade órfã
- Análise de desvio de permissões
- Detecção de conta de usuário inativa
- Análise de associação excessiva a cofres
- Status de certificação de acesso
- Dispersão de associação a funções/grupos
- Idade da fila de contas pendentes
- Detecção de lacuna de propriedade de conta
#### Integração EPM (EPM1 - EPM6)
*Requer URL do EPM e autenticação opcional*
- Verificação de status da integração EPM
- Avaliação de segurança da política padrão
- Validação do modo de controle de aplicativo
- Status da proteção contra roubo de credenciais
- Requisitos de justificativa para solicitação de elevação
- Configuração de registro de auditoria do EPM
#### Segurança na Nuvem (CLD1 - CLD6)
- Status da integração com provedores de nuvem (AWS, Azure, GCP)
- Configuração de identidade federada
- Validação da política de sincronização de segredos na nuvem
- Avaliação da integração CIEM
- Análise de vinculação de função IAM na nuvem
- Consistência de política em múltiplas nuvens
#### Recuperação de Desastres (DR1 - DR5)
- Status da replicação do Cofre DR
- Verificação de saúde do cluster HA
- Avaliação de redundância de componentes
- Validação da configuração de backup
- Disponibilidade da conta de emergência (break-glass)
#### Mapeamento de Conformidade (COMP1 - COMP4)
- Mapeamento do NIST Cybersecurity Framework
- Indicadores de alinhamento com SOC 2 Tipo II
- Controles relevantes para PCI-DSS
- Pontuação de maturidade do CyberArk Blueprint
#### Registro de Auditoria (AUD1 - AUD4)
- Saúde da integração SIEM
- Configuração de retenção de logs de auditoria
- Validação de alertas de eventos críticos
- Verificação de integridade dos dados de auditoria
#### Segurança do Active Directory (AD1 - AD7) - inspirado no zBang
*Requer conectividade de domínio e o parâmetro `-IncludeADChecks`*
- **Descoberta de Administrador Sombra**: Detecta contas com permissões ACL diretas em objetos privilegiados
- **Detecção de Chave Esqueleto**: Verifica indicadores de malware Skeleton Key em Controladores de Domínio
- **Análise de SID History**: Identifica contas com atributos SID History privilegiados
- **Configuração de SPN Arriscado**: Encontra contas de usuário com SPNs (alvos de Kerberoasting)
- **Delegação Irrestrita**: Descobre contas com delegação Kerberos irrestrita
- **Delegação Restrita com Transição de Protocolo**: Detecta potencial de abuso de S4U2Self
- **Auditoria de Privilégio de Delegação**: Resumo abrangente da configuração de delegação
#### Secrets Hub (SH1 - SH6)
*Requer `-IncludeSecretsHubChecks` e opcionalmente `-SecretsHubUrl`*
- Monitoramento da saúde da sincronização do Secrets Hub
- Medição de latência de sincronização
- Detecção de desvio de versão entre origem e destinos
- Análise de taxa de falha de sincronização
- Validação da configuração de destino
- Registro de auditoria do Secrets Hub
#### Acesso Remoto / Alero (RA1 - RA6)
*Requer `-IncludeRemoteAccessChecks` e opcionalmente `-AleroUrl`*
- Segurança do fluxo de trabalho de convite de fornecedor
- Configuração de limites de tempo de sessão
- Requisitos de vínculo biométrico/de dispositivo
- Completeza do log de auditoria de acesso remoto
- Aplicação de revisão periódica de acesso
- Aplicação de MFA para acesso remoto
#### Segredos do Kubernetes (K8S1 - K8S8)
*Requer `-IncludeK8sChecks` e opcionalmente `-K8sNamespace`, `-ConjurApplianceUrl`*
- Verificação do modo de implantação do Secrets Provider
- Validação do contexto de segurança do pod
- Autenticação JWT da conta de serviço
- Rotação de segredos do Kubernetes
- Configuração RBAC para segredos
- Permissões de segredos montados
- Saúde do Conjur follower
- Registro de auditoria do Kubernetes
#### Pipeline DevSecOps (DSO1 - DSO6)
*Requer `-IncludeDevSecOpsChecks`*
- Padrões de recuperação de segredos em CI/CD
- Detecção de dispersão de segredos na pipeline
- Validação de uso de tokens de curta duração
- Registro de auditoria da pipeline
- Detecção de segredos em artefatos de construção
- Vinculação de identidade da pipeline
#### Privilege Cloud (PC1 - PC5)
*Requer `-IncludePrivilegeCloudChecks` ou `-PrivilegeCloudTenant` ou `-IsPrivilegeCloud`*
- Saúde do conector do Privilege Cloud
- Integração com a Identity Security Platform
- Segurança da API do Privilege Cloud
- Validação de isolamento de inquilino
- Redundância de conector de nuvem
#### CyberArk Identity (IDN1 - IDN6)
*Requer `-IncludeIdentityChecks` ou `-IdentityTenantUrl`*
- Integração SSO com PVWA
- Configuração de política MFA adaptativa
- Sincronização do ciclo de vida da identidade
- Pontuação de risco de sessão
- Integração de auditoria de identidade
- Políticas de catálogo de aplicativos privilegiados
#### Plug-ins Personalizados (PLG1 - PLG5)
*Requer `-IncludePluginChecks`*
- Segurança do conector PSM personalizado
- Riscos de injeção de plug-in CPM personalizado
- Detecção de componentes não autorizados/desatualizados
- Validação de assinatura digital do plug-in
- Permissões de arquivo de script personalizado
#### Segurança de Backup (BKP1 - BKP5)
*Requer `-IncludeBackupSecurityChecks` e opcionalmente `-BackupPath`*
- Criptografia do backup do cofre
- Permissões de arquivo de backup
- Criptografia em trânsito do backup
- Teste de restauração de backup
- Política de retenção de backup
#### Integração HSM (HSM1 - HSM4)
*Requer `-IncludeHSMChecks` e opcionalmente `-HSMProvider`*
- Conectividade e saúde do HSM
- Configuração de encapsulamento de chaves do HSM
- Isolamento de partição do HSM
- Atualização do firmware do HSM
#### Aprofundamento PTA (PTAD1 - PTAD6)
*Requer `-IncludePTADeepDive`*
- Regras de detecção personalizadas do PTA
- Qualidade do modelo ML do PTA
- Fadiga de alertas do PTA (análise de falsos positivos)
- Cobertura de regras de detecção do PTA
- Integração UEBA do PTA
- Ações de resposta automatizada do PTA
#### Integração de Terceiros (TPI1 - TPI5)
*Requer `-IncludeThirdPartyChecks` e opcionalmente `-ServiceNowUrl`, `-SIEMUrl`*
- Integração ITSM (ServiceNow)
- Playbooks de resposta automatizada SOAR
- Correlação de eventos PAM do SIEM
- Saúde do encaminhador de logs do SIEM
- Saúde das credenciais de integração
#### Higiene Operacional (OPS1 - OPS8)
*Requer `-IncludeOperationalChecks`*
- Métricas da fila de integração de contas
- Taxas de falha de alteração de senha do CPM
- Proporções de sucesso/falha de sessão do PSM
- Atraso de reconciliação do CPM
- Erros de conexão de plataforma
- Utilização e capacidade do cofre
- Conformidade de licença
- Tempo de atividade dos componentes
#### Simulação de Caminho de Ataque (APS1 - APS6)
*Requer `-IncludeAttackPathChecks`*
- Caminhos de escalonamento de estação de trabalho para PAM
- Superfície de ataque Pass-the-Hash
- Riscos de retransmissão NTLM
- Resiliência à extração de credenciais em cache
- Exposição a Kerberoasting
- Caminhos de escalonamento de privilégios
#### Integridade da Cadeia de Suprimentos (SCI1 - SCI5)
*Requer `-IncludeSupplyChainChecks`*
- Validação de hash de arquivos de componentes
- Verificação de atualização de patches
- Vulnerabilidades de bibliotecas de terceiros
- Validação de assinatura digital
- Verificação de origem do componente
#### Segmentação de Rede (NSG1 - NSG5)
*Requer `-IncludeNetworkSegmentationChecks`*
- Isolamento de rede do cofre
- Restrições de comunicação PSM para o cofre
- Segmentação de PVWA para backend
- Monitoramento de tráfego Leste-Oeste
- ACLs de rede específicas de componentes
## Requisitos
### Requisitos de Software
| Componente | Versão | Observações |
|-----------|---------|-------|
| PowerShell | 7.0+ | PowerShell 7.x necessário (Windows PowerShell 5.1 não suportado) |
| .NET Framework | 4.5+ | Necessário para operações TLS/SSL e de rede |
| CyberArk PVWA | v12+ | API REST v12 ou posterior para compatibilidade total |
### Requisitos de Acesso por Fase
| Fase | Requisito | Finalidade |
|-------|-------------|---------|
| Fase 1 | Acesso de rede ao PVWA | Testes blackbox, varredura de portas, análise TLS |
| Fase 2 | Credenciais da API CyberArk | Auditorias de configuração, verificações de políticas |
### Requisitos de Credenciais para Verificações Autenticadas
Para a Fase 2 (Verificações Autenticadas), você precisa de credenciais do CyberArk com uma destas funções:
- **Administrador do Cofre**: Acesso total a todas as configurações e definições de segurança
- **Auditor**: Acesso somente leitura a configurações de auditoria (recomendado para avaliações de segurança)
- **Proprietários de Cofres**: Limitado aos cofres que possuem (cobertura parcial de auditoria)
### Recursos do Windows Utilizados
O script utiliza estes recursos do Windows/PowerShell (nenhuma instalação necessária):
| Recurso | Utilizado Para |
|---------|----------|
| `System.Net.Sockets.TcpClient` | Varredura de portas, segurança da porta do cofre |
| `System.Net.Security.SslStream` | Enumeração de protocolos TLS/SSL e cifras |
| `Invoke-WebRequest` / `Invoke-RestMethod` | Testes HTTP, chamadas de API |
## Início Rápido```powershell
# 1. Verify PowerShell version (need 7.0+)
$PSVersionTable.PSVersion
# 2. Enable TLS 1.2
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
# 3. Run unauthenticated scan (no credentials needed)
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -UnauthenticatedOnly
# 4. Run full scan with authentication
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP
Execute verificações de segurança externas sem nenhuma credencial:```powershell
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -UnauthenticatedOnly
### Auditoria Completa com Autenticação```powershell
# Full audit with LDAP authentication
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP
# Full audit with pre-supplied credentials
$cred = Get-Credential
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -Credential $cred
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -SkipPortScan
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -SkipAuthenticatedChecks
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -SkipCVEChecks
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -SkipSecretsChecks
-SkipMachineIdentity -SkipIGAChecks
-SkipCloudChecks
### Executar APENAS Categorias de Verificação Específicas
Use os parâmetros `-Only*` para executar exclusivamente categorias de verificação específicas:```powershell
# Run ONLY port scanning
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -OnlyPortScan
# Run ONLY CVE vulnerability checks
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -OnlyCVEChecks
# Run ONLY network security checks (ports, TLS, DNS)
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -OnlyNetworkChecks
# Run ONLY unauthenticated blackbox checks
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -OnlyBlackboxChecks
# Run ONLY authenticated API checks
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -OnlyAuthenticatedChecks -Credential $cred
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com"
-AuthType LDAP -OutputPath "C:\Reports"
-Credential $cred -SkipPortScan
-SkipCVEChecks -SkipAPITests
-PortScanTimeout 2000 `
-VerboseOutput
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com"
-AuthType LDAP -OutputPath "C:\Reports"
-ComplianceMapping -IncludeEPMChecks
-EPMUrl "https://epm.domain.com"
### Cenários Comuns```powershell
# External penetration test (no access, no credentials)
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -UnauthenticatedOnly
# Internal security audit (with CyberArk credentials)
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP
# Quick check (skip intensive scans)
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -SkipPortScan -SkipCVEChecks
# Fast parallel port scanning (4.5x faster on PowerShell 7+)
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -ParallelExecution -MaxThreads 10
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -OPSECMode -UnauthenticatedOnly
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -Proxy "http://127.0.0.1:8080" -IgnoreCertificateErrors
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -IncludeTimingAttacks -UnauthenticatedOnly
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -IncludeJWTTests
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -IncludeWebSocketTests
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -IncludeWAFEvasion
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -RequestDelay 3 -Jitter 30 -RandomizeUserAgent
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -QuietMode -NoLogo -UnauthenticatedOnly
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com"
-OPSECMode -Proxy "http://127.0.0.1:8080"
-IncludeTimingAttacks -IncludeJWTTests
-IncludeWebSocketTests -IncludeWAFEvasion
-UnauthenticatedOnly
### Cenários de Integração de Ferramentas CyberArk```powershell
# AD Security Audit (zBang-inspired) - detect shadow admins, Kerberos issues
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP -IncludeADChecks
# AD Security with specific Domain Controller
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -IncludeADChecks -DomainController "dc01.domain.com"
# Conjur/Secrets Manager integration check
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -IncludeConjurChecks -ConjurUrl "https://conjur.domain.com"
# Comprehensive audit with CyberArk tools integration
.\CyberArk-Security-Audit.ps1 `
-PVWA "https://pvwa.domain.com" `
-AuthType LDAP `
-IncludeADChecks `
-IncludeConjurChecks `
-ConjurUrl "https://conjur.domain.com" `
-ComplianceMapping
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -OutputPath "C:\SecurityReports\CyberArk"
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -UnauthenticatedOnly -QuietMode -NoLogo
-OutputPath "C:\Reports"
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -ComplianceMapping -OutputPath "C:\ComplianceReports"
$auditResults = .\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP
$auditResults.ReportMetadata.RiskScore $auditResults.Findings | Where-Object { $_.Severity -eq "Critical" } $auditResults.Reports.HTML # Path to HTML report $auditResults.Reports.CSV # Array of CSV file paths $auditResults.Reports.JSON # Path to JSON report
**Output Files Generated:**
Depois de executar uma auditoria, você encontrará estes arquivos no seu diretório de saída:```
C:\SecurityReports\CyberArk\
├── CyberArk_Security_Audit_20260116_143022.html # Interactive HTML dashboard
├── CyberArk_Security_Audit_20260116_143022.json # Comprehensive JSON data
├── CyberArk_Security_Audit_20260116_143022_Executive_Summary.csv
├── CyberArk_Security_Audit_20260116_143022_Full_Findings.csv
├── CyberArk_Security_Audit_20260116_143022_Failed_Findings.csv
├── CyberArk_Security_Audit_20260116_143022_Remediation_Tracker.csv
├── CyberArk_Security_Audit_20260116_143022_Skipped_Checks.csv
├── CyberArk_Security_Audit_20260116_143022_CIS_Compliance_Matrix.csv
└── CyberArk_Security_Audit_20260116_143022_Component_Summary.csv
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeSecretsHubChecks -SecretsHubUrl "https://secretshub.cyberark.cloud"
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeRemoteAccessChecks -AleroUrl "https://alero.cyberark.cloud"
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeK8sChecks -K8sNamespace "cyberark" -ConjurApplianceUrl "https://conjur.domain.com"
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeDevSecOpsChecks
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IsPrivilegeCloud -PrivilegeCloudTenant "my-tenant"
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeIdentityChecks -IdentityTenantUrl "https://aab1234.id.cyberark.cloud"
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeBackupSecurityChecks -BackupPath "D:\VaultBackups"
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeHSMChecks -HSMProvider "Thales"
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludePTADeepDive
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeThirdPartyChecks -ServiceNowUrl "https://company.servicenow.com" -SIEMUrl "https://splunk.domain.com"
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeOperationalChecks
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeAttackPathChecks -IncludeADChecks
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeSupplyChainChecks
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -AuthType LDAP ` -IncludeNetworkSegmentationChecks
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com"
-AuthType LDAP -IncludeSecretsHubChecks
-IncludeRemoteAccessChecks -IncludeK8sChecks
-IncludeDevSecOpsChecks -IncludeIdentityChecks
-IncludePluginChecks -IncludeBackupSecurityChecks
-IncludeHSMChecks -IncludePTADeepDive
-IncludeThirdPartyChecks -IncludeOperationalChecks
-IncludeAttackPathChecks -IncludeSupplyChainChecks
-IncludeNetworkSegmentationChecks `
-ComplianceMapping
## Parâmetros
| Parâmetro | Obrigatório | Padrão | Descrição |
|-----------|----------|---------|-------------|
| PVWA | Sim | - | URL do servidor PVWA (ex.: https://pvwa.domain.com) |
| AuthType | Não | CyberArk | Método de autenticação: CyberArk, LDAP, RADIUS, SAML |
| OutputPath | Não | Diretório atual | Diretório de saída do relatório |
| Credential | Não | Prompt | PSCredential para autenticação |
| **Parâmetros de Pular** | | | |
| SkipPortScan | Não | False | Pular varredura de portas de rede |
| SkipCVEChecks | Não | False | Pular testes de vulnerabilidade específicos de CVE |
| SkipAPITests | Não | False | Pular testes de segurança de API |
| SkipAuthenticatedChecks | Não | False | Pular todas as verificações autenticadas da Fase 2 |
| SkipSecretsChecks | Não | False | Pular verificações de Gerenciamento de Segredos (SEC1-SEC14) |
| SkipMachineIdentity | Não | False | Pular verificações de Identidade de Máquina (MID1-MID9) |
| SkipIGAChecks | Não | False | Pular verificações de Governança de Identidade (IGA1-IGA8) |
| SkipCloudChecks | Não | False | Pular verificações de Segurança em Nuvem (CLD1-CLD6) |
| SkipDRChecks | Não | False | Pular verificações de Recuperação de Desastres (DR1-DR5) |
| SkipDefaultCredentialTests | Não | False | Pular testes de credenciais padrão/fracas (BB3) |
| SkipSecretsHubChecks | Não | False | Pular verificações do Secrets Hub (SH1-SH6) |
| SkipRemoteAccessChecks | Não | False | Pular verificações de Acesso Remoto/Alero (RA1-RA6) |
| SkipK8sChecks | Não | False | Pular verificações do Kubernetes (K8S1-K8S8) |
| SkipDevSecOpsChecks | Não | False | Pular verificações DevSecOps (DSO1-DSO6) |
| SkipPrivilegeCloudChecks | Não | False | Pular verificações do Privilege Cloud (PC1-PC5) |
| SkipIdentityChecks | Não | False | Pular verificações do CyberArk Identity (IDN1-IDN6) |
| SkipPluginChecks | Não | False | Pular verificações de Plugins Personalizados (PLG1-PLG5) |
| SkipBackupSecurityChecks | Não | False | Pular verificações de Segurança de Backup (BKP1-BKP5) |
| SkipHSMChecks | Não | False | Pular verificações de Integração HSM (HSM1-HSM4) |
| SkipPTADeepDive | Não | False | Pular verificações do PTA Deep Dive (PTAD1-PTAD6) |
| SkipThirdPartyChecks | Não | False | Pular verificações de Integração de Terceiros (TPI1-TPI5) |
| SkipOperationalChecks | Não | False | Pular verificações de Higiene Operacional (OPS1-OPS8) |
| SkipAttackPathChecks | Não | False | Pular verificações de Simulação de Caminho de Ataque (APS1-APS6) |
| SkipSupplyChainChecks | Não | False | Pular verificações de Integridade da Cadeia de Suprimentos (SCI1-SCI5) |
| SkipNetworkSegmentationChecks | Não | False | Pular verificações de Segmentação de Rede (NSG1-NSG5) |
| **Parâmetros de Modo** | | | |
| UnauthenticatedOnly | Não | False | Executar apenas a Fase 1 (nenhuma credencial necessária) |
| IncludeEPMChecks | Não | False | Incluir verificações de integração EPM |
| ComplianceMapping | Não | False | Gerar mapeamento de conformidade com frameworks |
| **Execução Seletiva** | | | |
| OnlyPortScan | Não | False | Executar APENAS verificações de varredura de portas |
| OnlyCVEChecks | Não | False | Executar APENAS verificações de vulnerabilidades CVE |
| OnlyAuthenticatedChecks | Não | False | Executar APENAS verificações autenticadas de API |
| OnlyNetworkChecks | Não | False | Executar APENAS verificações de segurança de rede (TLS, portas, DNS) |
| OnlyBlackboxChecks | Não | False | Executar APENAS verificações blackbox não autenticadas |
| **Parâmetros de Ferramentas CyberArk** | | | |
| IncludeADChecks | Não | False | Ativar verificações de segurança do Active Directory (inspirado em zBang) |
| IncludeConjurChecks | Não | False | Ativar verificações de integração do Conjur/Secrets Manager |
| ConjurUrl | Não | - | URL do servidor Conjur para verificações de integração |
| DomainController | Não | - | Controlador de domínio para consultas de segurança do AD |
| **Parâmetros de Red Team** | | | |
| OPSECMode / Stealth | Não | False | Ativar modo OPSEC/stealth com atrasos e ruído reduzido |
| Proxy | Não | - | URL do proxy para roteamento de tráfego (ex.: http://127.0.0.1:8080) |
| ProxyCredential | Não | - | Credenciais para proxy autenticado |
| IgnoreCertificateErrors | Não | False | Ignorar validação de certificado SSL/TLS |
| RequestDelay | Não | 0 | Atraso entre requisições em segundos (0-60) |
| Jitter | Não | 0 | Porcentagem de jitter aleatório (0-100) para variação de tempo |
| UserAgent | Não | - | String User-Agent personalizada |
| RandomizeUserAgent | Não | False | Rotacionar entre strings User-Agent comuns |
| IncludeTimingAttacks | Não | False | Ativar detecção de vulnerabilidade baseada em tempo |
| IncludeJWTTests | Não | False | Ativar testes de segurança JWT/OAuth2 |
| IncludeWebSocketTests | Não | False | Ativar descoberta de endpoints WebSocket |
| IncludeWAFEvasion | Não | False | Ativar testes de bypass de WAF/IDS |
| NoLogo | Não | False | Suprimir exibição de banner |
| QuietMode | Não | False | Reduzir saída do console (mensagens informativas suprimidas) |
| EnablePasswordSpraying | Não | False | Ativar password spraying (requer confirmação explícita) |
| **Parâmetros de Desempenho** | | | |
| ParallelExecution | Não | False | Ativar execução paralela para varreduras mais rápidas |
| MaxThreads | Não | 5 | Número máximo de threads simultâneas (1-20) |
| **Parâmetros de EPM** | | | |
| EPMUrl | Não | - | URL do servidor EPM para verificações de integração EPM |
| **Parâmetros de Postura de Segurança** | | | |
| IncludeSecretsHubChecks | Não | False | Ativar verificações de sincronização em nuvem do Secrets Hub |
| SecretsHubUrl | Não | - | URL do Secrets Hub para verificações de integração |
| IncludeRemoteAccessChecks | Não | False | Ativar verificações de Acesso Remoto/Alero |
| AleroUrl | Não | - | URL do Alero para verificações de acesso de fornecedor |
| IncludeK8sChecks | Não | False | Ativar verificações de segredos do Kubernetes/Container |
| K8sNamespace | Não | default | Namespace do Kubernetes para verificações de segredos |
| ConjurApplianceUrl | Não | - | URL do appliance Conjur para integração K8s |
| IncludeDevSecOpsChecks | Não | False | Ativar verificações de segurança de pipeline DevSecOps |
| IncludePrivilegeCloudChecks | Não | False | Ativar verificações específicas do Privilege Cloud/SaaS |
| IsPrivilegeCloud | Não | False | Indicar que o alvo é Privilege Cloud SaaS |
| PrivilegeCloudTenant | Não | - | Identificador do tenant Privilege Cloud |
| IncludeIdentityChecks | Não | False | Ativar verificações do CyberArk Identity/Idaptive |
| IdentityTenantUrl | Não | - | URL do tenant CyberArk Identity |
| IncludePluginChecks | Não | False | Ativar verificações de segurança de plugins personalizados |
| IncludeBackupSecurityChecks | Não | False | Ativar verificações de segurança de backup |
| BackupPath | Não | - | Caminho para arquivos de backup do Vault para análise |
| IncludeHSMChecks | Não | False | Ativar verificações de integração HSM |
| HSMProvider | Não | - | Tipo de provedor HSM (Thales, nCipher, SafeNet, AWSCloudHSM, AzureHSM, Outro) |
| IncludePTADeepDive | Não | False | Ativar verificações avançadas de detecção PTA |
| IncludeThirdPartyChecks | Não | False | Ativar verificações de integração SIEM/ITSM/SOAR |
| ServiceNowUrl | Não | - | URL do ServiceNow para verificações ITSM |
| SIEMUrl | Não | - | URL do SIEM para verificações de correlação de eventos |
| IncludeOperationalChecks | Não | False | Ativar métricas de higiene operacional |
| IncludeAttackPathChecks | Não | False | Ativar verificações de simulação de caminho de ataque |
| IncludeSupplyChainChecks | Não | False | Ativar verificações de integridade da cadeia de suprimentos |
| IncludeNetworkSegmentationChecks | Não | False | Ativar verificações de segmentação de rede |
| **Outros Parâmetros** | | | |
| PortScanTimeout | Não | 1000 | Timeout de conexão da varredura de portas (ms) |
| VerboseOutput | Não | False | Ativar log detalhado |
## Saída
O script gera relatórios abrangentes em três formatos, projetados para apoiar a redação de relatórios detalhados de avaliação de segurança:
### Formatos de Relatório
#### 1. Relatório HTML (Painel Interativo)
Um relatório HTML moderno e interativo com:
- **Sumário**: Navegação rápida para todas as seções do relatório
- **Resumo Executivo**: Classificação geral de risco, percentual de conformidade, métricas-chave
- **Seção de Riscos Principais**: Top 10 descobertas críticas/altas com impacto nos negócios
- **Matriz de Conformidade CIS Benchmark**: Status de conformidade controle por controle
- **Tabela de Descobertas Detalhadas**: Linhas expansíveis com evidências completas e etapas de remediação
- Clique em qualquer descoberta para revelar: evidências, detalhes técnicos, descrição do risco, impacto nos negócios, pontuação CVSS, etapas de remediação e referências
- **Prova de Conceito (PoC)**: Evidências de Requisição/Resposta para relatórios de teste de penetração (quando disponível)
- **Roteiro de Remediação**: Cronograma priorizado (24h/1sem/30d/90d)
- **Análise de Componentes**: Descobertas agrupadas por componente CyberArk (Vault, CPM, PSM, PVWA, PTA)
- **Verificações Ignoradas**: Requisitos de verificação manual com orientação de acompanhamento
- **Amigável para impressão**: Expande automaticamente todas as descobertas ao imprimir
#### 2. Relatórios CSV (7 Arquivos Separados)
Gera vários arquivos CSV para diferentes públicos:
| Arquivo | Propósito | Público |
|------|---------|----------|
| `Executive_Summary.csv` | Métricas de alto nível e visão geral de riscos | Liderança, Gerência |
| `Full_Findings.csv` | Descobertas completas com mais de 20 campos | Analistas de Segurança |
| `Failed_Findings.csv` | Apenas verificações falhas, ordenadas por gravidade | Equipes de Remediação |
| `Remediation_Tracker.csv` | Rastreador acionável com AtribuídoPara, Status, DataLimite | Operações de TI |
| `Skipped_Checks.csv` | Verificações que exigem verificação manual | Auditores |
| `CIS_Compliance_Matrix.csv` | Status de conformidade controle por controle | Oficiais de Conformidade |
| `Component_Summary.csv` | Descobertas agrupadas por componente | Proprietários de Componentes |
#### 3. Relatório JSON (Dados Estruturados)
Dados estruturados abrangentes para análise programática:```json
{
"reportInfo": { "title", "generatedAt", "version" },
"auditMetadata": { "target", "auditDate", "auditorInfo" },
"executiveSummary": {
"overallRiskRating": "Fair",
"riskScore": 45,
"keyMetrics": { "totalChecks", "passed", "failed", "compliance%" },
"findingsBySeverity": { "critical", "high", "medium", "low" },
"keyRisks": [ /* top 10 findings */ ],
"immediatePriorities": [ /* critical recommendations */ ]
},
"complianceAnalysis": {
"overallCompliance": 78.5,
"cisControlsCompliance": { /* per-control matrix */ }
},
"componentAnalysis": { /* findings by component */ },
"categoryAnalysis": { /* findings by category */ },
"remediationRoadmap": {
"immediate": { "timeframe": "24-48 hours", "findings": [] },
"urgent": { "timeframe": "1 week", "findings": [] },
"standard": { "timeframe": "30 days", "findings": [] },
"routine": { "timeframe": "90 days", "findings": [] }
},
"detailedFindings": { "failed", "passed", "all" },
"skippedChecks": { "summary", "requiresFollowUp", "all" },
"appendix": { "glossary", "severityDefinitions", "riskScoreExplanation" }
}
Cada descoberta agora inclui informações abrangentes para redação de relatórios:
As descobertas são pontuadas por severidade:
Classificações de risco:
A saída é projetada para ajudá-lo a escrever relatórios profissionais de avaliação de segurança:
⚠️ AVISO: Esta ferramenta realiza testes de segurança ativos que podem:
-EnablePasswordSprayingSempre obtenha autorização adequada antes de executar este script.
Use -OPSECMode para reduzir a pegada de detecção durante operações de red team.
Erro: File cannot be loaded because running scripts is disabled on this system
Solução:```powershell
Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
Unblock-File -Path .\CyberArk-Security-Audit.ps1
#### Erro de Versão do PowerShell
**Erro**: `Este script requer PowerShell 7 ou superior.`
**Solução**:```powershell
# Check current version
$PSVersionTable.PSVersion
# Install PowerShell 7
winget install Microsoft.PowerShell
# Or download from: https://github.com/PowerShell/PowerShell/releases
Erro: The request was aborted: Could not create SSL/TLS secure channel
Solução:```powershell
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 -bor [Net.SecurityProtocolType]::Tls13
#### Erros de Validação de Certificado
**Erro**: `The underlying connection was closed: Could not establish trust relationship`
**Solução**: Isso geralmente indica um problema de certificado (ex.: certificado autoassinado) com o PVWA. O script irá capturar automaticamente isso como um achado de segurança e continuará com a avaliação para fornecer cobertura completa. O script inclui bypass de validação de certificado para continuidade operacional:```powershell
# The script automatically bypasses certificate validation for assessment continuity
# while capturing certificate issues as findings
[System.Net.ServicePointManager]::ServerCertificateValidationCallback = { $true }
Erro: Authentication failed: The remote server returned an error: (401) Unauthorized
Soluções:
-AuthType LDAP, -AuthType CyberArk, etc.)$cred = Get-Credential $body = @{ username = $cred.UserName; password = $cred.GetNetworkCredential().Password } | ConvertTo-Json Invoke-RestMethod -Uri "https://pvwa.domain.com/PasswordVault/api/Auth/LDAP/Logon" -Method POST -Body $body -ContentType "application/json"
#### Timeouts de Varredura de Portas
**Erro**: Varreduras de portas demorando muito ou expirando
**Solução**:```powershell
# Increase timeout (default is 1000ms)
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -PortScanTimeout 3000
# Or skip port scanning entirely
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -SkipPortScan
Erro: Não é possível escrever arquivos de relatório
Solução:```powershell
.\CyberArk-Security-Audit.ps1 -PVWA "https://pvwa.domain.com" -OutputPath "C:\Reports"
New-Item -ItemType Directory -Path "C:\Reports" -Force
### Obtendo Ajuda
Se você encontrar problemas não abordados acima:
1. Execute com saída detalhada: `-VerboseOutput`
2. Verifique o relatório JSON gerado para informações detalhadas de erro
3. Revise os Logs de Eventos do Windows para erros relacionados
4. Abra uma issue no GitHub com os detalhes do erro e informações do ambiente
## Referências
### Documentação CyberArk
- [Guia de Endurecimento de Segurança CyberArk](https://docs.cyberark.com/)
- [Documentação da API REST CyberArk](https://docs.cyberark.com/Product-Doc/OnlineHelp/PAS/Latest/en/Content/WebServices/Implementing%20Privileged%20Account%20Security%20Web%20Services%20.htm)
### Ferramentas de Segurança Open Source CyberArk
- [zBang](https://github.com/cyberark/zBang) - Ferramenta de avaliação de riscos para ameaças a contas privilegiadas (Shadow Admins, Kerberos, SPNs)
- [Conjur](https://github.com/cyberark/conjur) - Plataforma de gerenciamento de segredos
- [ACLight](https://github.com/cyberark/ACLight) - Descoberta de Shadow Admin (parte do zBang)
- [Ansible Security Automation Collection](https://github.com/cyberark/ansible-security-automation-collection) - Integração CyberArk Ansible
## Licença.
Esta ferramenta é fornecida como está para fins de avaliação de segurança. Use de forma responsável e ética.
| Requisito | Mínimo | Recomendado |
|---|
| PowerShell | 7.0 | 7.x (mais recente) |
| .NET Framework | 4.5 | 4.8+ |
| Sistema Operacional | Windows 10/Server 2016 | Windows 11/Server 2022 |
| Memória | 2 GB disponíveis | 4 GB disponíveis |
| Campo | Descrição |
|---|
FindingID | Identificador único (ex.: CA-20260116-A1B2C3D4) |
Category | Categoria de segurança (ex.: Safe Configuration, Authentication) |
CISControl | Referência de controle do CIS Benchmark |
AffectedComponent | Componente CyberArk (Vault, CPM, PSM, PVWA, PTA) |
Evidence | Evidência técnica que suporta a descoberta |
TechnicalDetails | Descrição técnica detalhada |
RiskDescription | Explicação do porquê isso é um risco de segurança |
BusinessImpact | Explicação do impacto ao nível do negócio |
CVSSScore | Faixa estimada de pontuação CVSS |
RemediationSteps | Orientação de remediação passo a passo |
ComplianceRefs | Referências de frameworks de conformidade |
References | Links de documentação |
PoCRequest | Prova de conceito da solicitação HTTP (quando disponível) |
PoCResponse | Prova de conceito da resposta HTTP (quando disponível) |