> [!warning] Aviso Importante > Zero-days sao por definicao situacoes onde o playbook existente pode nao cobrir o vetor específico. Este playbook fornece um framework GENERICO para resposta inicial. Para zero-days específicos de produto (Cisco, Fortinet, Microsoft), consulte os playbooks dedicados. A chave e velocidade de contencao: agir em horas, nao dias. --- ## Visão Geral Um zero-day e uma vulnerabilidade desconhecida pelo fabricante (portanto sem patch disponível) que esta sendo ativamente explorada. A resposta a zero-days e diferente de incidentes comuns porque: 1. **Nao ha patch disponível** - a mitigação e temporaria (virtual patching, WAF, segmentacao) 2. **O vetor pode ser desconhecido** - a análise forense e mais critica que em incidentes comuns 3. **A escala de impacto e incerta** - outros ativos podem estar expostos ao mesmo vetor 4. **A coordenacao com o fabricante e essencial** - e necessário reportar para obtencao do patch 5. **A janela de exposicao pode ter sido longa** - o dwell time costuma ser alto **Contexto LATAM/Brasil:** - Zero-days em produtos populares na regiao (Fortinet, Cisco, Microsoft Exchange) sao explorados rapidamente por APTs e ransomware groups - [[g0007-apt28]] explorou zero-days em servidores Exchange de organizacoes governamentais brasileiras e latam - [[lockbit]] e outros grupos de ransomware compram zero-days de brokers ou adaptam N-days horas após divulgacao publica - O [[cve-2024-47575|CVE-2024-47575]] (Fortinet FortiManager) e um exemplo recente de zero-day com impacto critico no Brasil **Jánela critica de zero-day:** | Fase | Tempo tipico | Acao necessária | |------|-------------|----------------| | Descoberta pelo atacante | Dias a meses antes | - | | Exploração ativa (silenciosa) | Semanas a meses | Detetar via anomalia comportamental | | Divulgacao publica (0-day) | T=0 | Virtual patch IMEDIATO | | PoC publico disponível | T+24h a 72h | Mass exploitation por script actors | | Patch do fabricante | T+1 a 30 dias | Aplicar assim que disponível | | N-day no crime organizado | T+30d | Assumir que todos os grupos tem acesso | --- ## Fluxo de Resposta ao Incidente ```mermaid flowchart TD A([Alerta: Zero-Day<br/>Suspeito ou Confirmado]) --> B{Fonte do alerta} B -->|CISA KEV / Vendor Advisory| C[Zero-day divulgado<br/>Verificar exposicao] B -->|Anomalia interna detectada| D[Investigação inicial<br/>Confirmar zero-day] B -->|CERT/Parceiro externo| C C --> E{Ativo afetado<br/>exposto na org?} D --> F[Forense rapida<br/>Identificar vetor] F --> G{Zero-day<br/>confirmado?} G -->|Sim| E G -->|Nao| H[Continuar como<br/>incidente normal] E -->|Sim| I[DECLARAR INCIDENTE P1<br/>Acionar CISO + IR Lead] E -->|Nao| J[Monitorar ativamente<br/>Patch quando disponível] I --> K[CONTENCAO IMEDIATA<br/>Virtual Patching] K --> K1[WAF: Criar regra<br/>bloqueio do vetor] K1 --> K2[Firewall: Segmentar<br/>ativo exposto] K2 --> K3[Desabilitar feature<br/>vulnerável se possível] K3 --> L[Verificar indicadores<br/>de comprometimento] L --> M{Comprometimento<br/>confirmado?} M -->|Sim| N[Executar IR Completo<br/>+ Forense Profunda] M -->|Nao| O[Monitoramento Intensivo<br/>Aguardar patch oficial] N --> P[COORDENACAO VENDOR<br/>Reportar zero-day] O --> P P --> Q[Aplicar patch oficial<br/>quando disponível] Q --> R[Validar remediacao<br/>Scan de confirmacao] R --> S([Incidente Encerrado<br/>Post-mortem]) style A fill:#8b0000,color:#fff style I fill:#ff4444,color:#fff style K fill:#ff6600,color:#fff style S fill:#006600,color:#fff ``` --- ## Diagrama - Coordenacao Multi-Stakeholder ```mermaid sequenceDiagram participant SOC as SOC / IR Team participant CISO as CISO participant IT as TI / NOC participant Vendor as Fabricante (PSIRT) participant CERT as CERT.br / CTIR Gov participant Legal as Juridico / DPO SOC->>CISO: T+0: Zero-day confirmado - produto X afetado CISO->>IT: T+5min: Isolar/segmentar ativo afetado CISO->>Legal: T+15min: Avaliar obrigações regulatorias SOC->>Vendor: T+30min: Abrir caso PSIRT com evidencias forenses Note over Vendor: Coordinated Vulnerability Disclosure (CVD) Vendor->>SOC: T+2h: Confirmacao de recebimento + workaround inicial SOC->>CERT: T+4h: Notificação ao CERT.br / CTIR Gov Note over CERT: Alerta para outras organizacoes brasileiras Vendor->>SOC: T+1-30d: Patch oficial liberado SOC->>IT: Agendar janela de manutenção emergencial IT->>SOC: Patch aplicado + válidação de scan SOC->>CISO: Relatorio de remediacao completo CISO->>Legal: Briefing regulatorio final ``` --- ## Fase 1 - Detecção e Confirmacao ### Indicadores de Exploração de Zero-Day > [!info] Zero-days nao tem assinatura > Por definicao, nao ha regras de detecção específicas para um zero-day antes da divulgacao. A detecção depende de **anomalia comportamental**: o que o sistema esta fazendo de incomum APOS a exploração. **Indicadores pos-exploração (comportamentais):** - Processo de servico web gerando processos filhos incomuns (`w3wp.exe -> cmd.exe`, `java.exe -> powershell.exe`) - Webshell criada em diretorio de aplicação web (`/uploads/*.aspx`, `/images/*.php`) - Trafego de saida de processo de servico web para IPs externos - Leitura de arquivos de configuração sensiveis por processo web - Novos usuarios criados ou senhas alteradas via processo de servico - Artefatos de C2 em memoria de processo de aplicação ### Windows Event IDs Criticos | EventID | Fonte | Indicador | |---------|-------|----------| | **4688** | Security | Processo incomum filho de servico web (w3wp, java, nginx) | | **Sysmon 1** | Sysmon | Processo filho com hash desconhecido e parent suspeito | | **Sysmon 3** | Sysmon | Conexão de rede de processo de servico web | | **Sysmon 11** | Sysmon | Arquivo criado em diretorio de aplicação | | **Sysmon 22** | Sysmon | DNS query de processo de servico web | ### Splunk - Webshell - Processo Filho de Servico Web ```spl index=windows EventCode=4688 ParentProcessName IN ("*\\w3wp.exe", "*\\java.exe", "*\\python.exe", "*\\node.exe", "*\\httpd.exe", "*\\nginx.exe", "*\\tomcat*.exe") ProcessName IN ("*\\cmd.exe", "*\\powershell.exe", "*\\wscript.exe", "*\\cscript.exe", "*\\certutil.exe", "*\\bitsadmin.exe", "*\\mshta.exe") | table _time, ComputerName, User, ParentProcessName, ProcessName, CommandLine ``` ### Splunk - Conexão de Saida de Servico Web ```spl index=sysmon EventCode=3 (Image="*\\w3wp.exe" OR Image="*\\java.exe" OR Image="*\\python.exe") DestinationIsIpv6="false" | where NOT (DestinationIp LIKE "10.%" OR DestinationIp LIKE "192.168.%" OR DestinationIp LIKE "172.%") | table _time, Computer, Image, DestinationIp, DestinationPort, User ``` ### KQL - Microsoft Sentinel - Webshell Pattern ```kql DeviceProcessEvents | where InitiatingProcessFileName has_any ( "w3wp.exe", "java.exe", "python.exe", "node.exe", "httpd.exe", "nginx.exe", "tomcat9.exe" ) | where FileName has_any ( "cmd.exe", "powershell.exe", "wscript.exe", "cscript.exe", "certutil.exe", "bitsadmin.exe", "mshta.exe" ) | project Timestamp, DeviceName, AccountName, InitiatingProcessFileName, FileName, ProcessCommandLine | order by Timestamp desc ``` ### KQL - Microsoft Sentinel - Outbound Connection from Web Service ```kql DeviceNetworkEvents | where InitiatingProcessFileName has_any ( "w3wp.exe", "java.exe", "python.exe", "httpd.exe" ) | where RemoteIPType == "Public" | where RemotePort !in (80, 443) | project Timestamp, DeviceName, InitiatingProcessFileName, RemoteIP, RemotePort, RemoteUrl | order by Timestamp desc ``` --- ## Fase 2 - Triagem e Investigação ### Perguntas-chave a Responder - [ ] Qual produto/componente esta sendo explorado? - [ ] Qual e o vetor de exploração (endpoint da API, parametro específico, protocolo)? - [ ] Ha evidencia de comprometimento ANTES da detecção (dwell time)? - [ ] Outros ativos usam o mesmo produto/versao e estao expostos? - [ ] O fabricante tem workaround ou patch emergencial? - [ ] Já existe PoC publico? (aumenta urgencia drasticamente) - [ ] Ha indicacao de qual threat actor esta operando? ### Splunk - Identificar Todos os Ativos Afetados ```spl index=inventory OR index=cmdb software_name="*[PRODUTO_AFETADO]*" | where software_version < "[VERSAO_AFETADA]" | stats count by hostname, ip_address, software_name, software_version, owner | sort hostname ``` ### KQL - Microsoft Sentinel - Scope de Ativos Afetados ```kql DeviceTvmSoftwareInventory | where SoftwareName has "[PRODUTO_AFETADO]" | where SoftwareVersion <= "[VERSAO_AFETADA]" | project DeviceName, SoftwareName, SoftwareVersion, OSPlatform | order by DeviceName ``` --- ## Fase 3 - Contencao - Virtual Patching > [!danger] Urgencia Maxima > Virtual patching deve ser implementado em HORAS. Após divulgacao pública e lancamento de PoC, o tempo para mass exploitation e de 24-48h. ### Virtual Patching por Tipo de Produto #### Aplicacoes Web (WAF) ``` # Palo Alto Panorama - Custom Threat Signature # Ou usar Snort/Suricata/ModSecurity # Exemplo ModSecurity - Bloquear parametro suspeito SecRule REQUEST_URI "@contains /vulnerable/endpoint" \ "id:100001,phase:1,deny,status:403,msg:'Zero-Day Temporary Block'" # Cloudflare WAF - Custom Rule # (HTTP Request URI Path) contains /api/vulnerable-endpoint -> BLOCK ``` #### Segmentacao de Rede ``` # Isolar ativo afetado via VLAN ou ACL # Permitir apenas trafego necessário para operação # Bloquear acesso externo direto # Exemplo: Mover servidor para VLAN de quarentena # Permitir apenas IPs administrativos internos # Monitorar TODO o trafego de/para o segmento ``` #### Desabilitar Feature Vulnerável ``` # Se a feature comprometida pode ser desabilitada: # - Desabilitar via configuração do produto # - Comúnicar usuarios afetados # - Monitorar tentativas de uso # Exemplo - Fortimanager (CVE-2024-47575) # Desabilitar FGFM protocol se nao necessário: # config system global # set fgfm-deny-unknown enable # end ``` ### Checklist de Contencao - [ ] Identificar TODOS os ativos da org que usam o produto afetado (via CMDB/Nmap) - [ ] Classificar exposicao: internet-facing vs interno vs isolado - [ ] Implementar regra de WAF ou IPS para bloquear vetor de exploração conhecido - [ ] Segmentar ativos internet-facing mais criticos (colocar detras de proxy reverso se possível) - [ ] Desabilitar feature específica vulnerável se operacionalmente possível - [ ] Habilitar logging verboso no produto afetado para investigação - [ ] Abrir caso de suporte emergêncial com o fabricante --- ## Fase 4 - Coordenacao com Fabricante e CERTs ### Processo de Coordinated Vulnerability Disclosure (CVD) 1. **Contato inicial com PSIRT** - A maioria dos fabricantes tem [email protected] ou portal de reporte 2. **Fornecer evidencias técnicas** - Logs, PCAP, comandos observados, impacto 3. **Estimar urgencia** - Quantas organizacoes podem estar afetadas? 4. **Negociar timeline** - Fabricante deve confirmar vulnerabilidade e liberar workaround/patch 5. **Notificar CERTs** - CERT.br ([email protected]), CTIR Gov ([email protected]) se impacto nacional ### Templaté - Relatorio para PSIRT do Fabricante ``` PARA: security@<fabricante>.com (ou portal PSIRT) ASSUNTO: [Urgent] Potential Zero-Day Exploitation - [Produto] [Versao] OBSERVACAO: Identificamos comportamento anômalo em [Produto] versao [X.Y.Z] sugestivo de exploração de vulnerabilidade desconhecida. EVIDENCIAS: - Data/hora da primeira atividade suspeita: [timestamp] - Versao afetada: [versao completa] - Sistema operacional: [OS] - Comportamento observado: [descrição técnica] - Logs relevantes: [anexar ou colar] IMPACTO POTENCIAL: - Sistemas comprometidos estimados: [número] - Tipo de comprometimento: [webshell, RCE, info disclosure] ACOES TOMADAS: - [Contencao implementada] CONTATO: [nome, email, telefone para resposta urgente] ``` --- ## Fase 5 - Erradicacao e Recuperacao ### Pos-Confirmacao de Comprometimento - [ ] Remover todos os artefatos do atacante (webshells, backdoors, ferramentas) - [ ] Resetar credenciais de contas que tinham acesso ao sistema comprometido - [ ] Verificar persistência: tarefas agendadas, servicos, chaves de registro - [ ] Reimaging se possível - sistemas comprometidos por zero-day podem ter implantes profundos - [ ] Validar integridade dos dados no sistema afetado ### Aplicação do Patch Oficial - [ ] Aguardar confirmacao de disponibilidade de patch pelo fabricante - [ ] Testar patch em ambiente de homologacao ANTES da producao - [ ] Planejar janela de manutenção emergêncial (fora do horario comercial) - [ ] Aplicar patch em todos os ativos afetados identificados no escopo - [ ] Executar scan de vulnerabilidade pos-patch para confirmar remediacao - [ ] Remover regras de virtual patching após confirmacao do patch aplicado ### Monitoramento Intensivo Pos-Patch - [ ] Habilitar regras de detecção baseadas nos IOCs identificados - [ ] Monitorar logs do produto afetado por 30 dias após patch - [ ] Verificar se ha evidência de comprometimento durante o período de exposicao - [ ] Realizar hunt proativo em todos os sistemas do mesmo segmento --- ## Automacao SOAR ### Splunk SOAR - Avaliacao Automatica de Exposicao ```python # Trigger: Novo zero-day anunciado (via feed CTI ou CISA KEV) def assess_zero_day_exposure(container, cve_id, affected_product, affected_versions): # 1. Consultar CMDB por ativos afetados result = phantom.act("search_cmdb", parameters=[{ "product": affected_product, "version_range": affected_versions }]) exposed_assets = result["assets"] if len(exposed_assets) > 0: # 2. Criar incidente com escopo phantom.act("creaté_ticket", parameters=[{ "summary": f"Zero-Day Exposicao: {cve_id} - {len(exposed_assets)} ativos afetados", "severity": "Critical", "description": f"Ativos: {exposed_assets}" }]) # 3. Notificar CISO phantom.act("send_message", parameters=[{ "channel": "#security-ciso", "message": f"ZERO-DAY {cve_id}: {len(exposed_assets)} ativos expostos. Acao imediata requerida." }], app="slack") ``` ### Microsoft Sentinel - Alert Rule para Webshell ```kql // Nome: Potential Zero-Day Webshell Deployment // Frequencia: Em tempo real // Severidade: Alta DeviceProcessEvents | where InitiatingProcessFileName has_any ("w3wp.exe", "java.exe", "python.exe") | where FileName has_any ("cmd.exe", "powershell.exe", "certutil.exe") | extend AlertSeverity = "High" | extend AlertName = "Potential Webshell Execution via Web Service" | project Timestamp, DeviceName, AccountName, InitiatingProcessFileName, FileName, ProcessCommandLine, AlertSeverity, AlertName ``` --- ## Plano de Comúnicação ### Escalonamento por Fase | Fase | Destinatario | Canal | Mensagem | |------|-------------|-------|---------| | Confirmacao inicial | IR Lead, CISO | Telefone/Signal | Zero-day confirmado, ativos afetados: N | | T+1h | Executivos | Canal seguro | Briefing tecnico executivo | | T+4h | Juridico/DPO | Canal seguro | Avaliacao regulatoria | | T+24h | Board (se critico) | Reuniao emergêncial | Escopo, impacto, plano de remediacao | ### Templaté - Briefing Executivo (T+1h) ``` CLASSIFICACAO: CONFIDENCIAL - INCIDENTE DE SEGURANCA DATA: [data/hora] SITUACAO: Zero-day em [Produto X] sendo explorado ativamente. EXPOSICAO: - Sistemas afetados na organização: [N] servidores - Dados possívelmente acessados: [avaliacao preliminar] - Impacto operacional atual: [servicos afetados] ACOES EM CURSO: - Contencao via virtual patching: [em andamento / concluida] - Fabricante notificado: [sim/nao] - CERT.br notificado: [sim/nao] PROXIMO PASSO CRITICO: - Patch do fabricante esperado em: [estimativa] - Jánela de manutenção planejada: [data/hora] RISCOS RESIDUAIS: - [Risco 1 enquanto sem patch] - [Risco 2] PONTO DE CONTATO: [nome, telefone] ``` --- ## Referências - [[g0016-apt29]] - uso frequente de zero-days em espionagem contra governo e tecnologia - [[g0007-apt28]] - exploração de zero-days em Exchange e Outlook para targets governamentais - [[g0032-lazarus-group]] - compra e desenvolve zero-days para ataques financeiros e espionagem - [[cve-2024-47575|CVE-2024-47575]] - exemplo de zero-day FortiManager com impacto no Brasil - [[t1190-exploit-public-facing-application|T1190 - Exploit Public-Facing Application]] - técnica MITRE ATT&CK - [[t1203-exploitation-for-client-execution|T1203 - Exploitation for Client Execution]] - exploração client-side - [[ir-fortimanager-exploitation]] - playbook específico para CVE-2024-47575 - [[ir-pan-os-exploitation]] - playbook específico para zero-days Palo Alto - [[hunting-c2-beaconing]] - pos-exploração: detectar C2 implantado via zero-day - [[_defenses]] - hub de defesas do vault - [CISA Known Exploited Vulnerabilities](https://www.cisa.gov/known-exploited-vulnerabilities-catalog) - [CERT.br - Tratamento de Incidentes](https://www.cert.br/docs/whitepapers/incident-handling/) - [FIRST PSIRT Services Framework](https://www.first.org/standards/frameworks/psirts/) --- *Ultima revisao: 2026-03-27 | Proxima revisao recomendada: 2026-09-27*