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 |
| 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 |
| 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