# DS0018 — Firewall ## Descrição **Firewall** é um sistema de segurança de rede — executado localmente em um endpoint (host-based firewall) ou remotamente como serviço (ex: WAF, cloud security group, NGFW) — que monitora e controla o tráfego de rede de entrada e saída com base em regras predefinidas. Esta fonte de dados abrange tanto a telemetria operacional dos firewalls (logs de tráfego, alertas de bloqueio) quanto os eventos de gerenciamento (modificação de regras, desabilitação de serviço, enumeração de configuração). Do ponto de vista de inteligência de ameaças, firewalls são alvos de adversários que precisam estabelecer canais de C2 ou facilitar movimentação lateral. Atores de ameaça como [[unc5820]] exploram vulnerabilidades em firewalls corporativos ([[cve-2024-47575|CVE-2024-47575]] no FortiManager) para obter acesso privilegiado à infraestrutura de rede. Em ambientes brasileiros, é comum observar técnicas de desabilitação de Windows Defender Firewall em campanhas de ransomware como [[lockbit]] e [[g1024-akira|akira-ransomware]], que precedem a fase de encriptação com a remoção de controles de rede do host. Monitorar o estado dos firewalls — especialmente modificações de regras e tentativas de desabilitação — é um controle de detecção crítico. A ausência de eventos esperados (ex: firewall que para de gerar logs) pode ser o primeiro indicador de comprometimento, pois adversários frequentemente desabilitam logging antes de executar suas ações. ```mermaid graph TB A["🔥 Firewall<br/>Host-based / NGFW / Cloud SG"] --> B["📋 Logs de Configuração<br/>EID 2004/2005/5025<br/>System Logs NGFW"] A --> C["🌐 Logs de Tráfego<br/>Allow / Deny / Drop<br/>por regra e IP"] B --> D["📥 SIEM<br/>Splunk / Sentinel / QRadar"] C --> D D --> E{"⚠️ Detecção<br/>Firewall desabilitado?<br/>Nova regra permissiva?"} E -->|"Modificação"| F["🚨 Alerta<br/>T1562.004 / T1021 / T1048"] E -->|"Tráfego bloqueado"| G["📊 IOC Correlation<br/>IP / domínio malicioso"] ``` ## Componentes de Dados | Componente | ID | Descrição | |------------|----|-----------| | Firewall Disable | [[dc0043-firewall-disable\|DC0043]] | Desabilitação ou parada do serviço de firewall | | Firewall Enumeration | [[dc0044-firewall-enumeration\|DC0044]] | Listagem de regras e configurações do firewall | | Firewall Rule Modification | [[dc0051-firewall-rule-modification\|DC0051]] | Criação, modificação ou exclusão de regras de firewall | | Firewall Metadata | [[dc0053-firewall-metadata\|DC0053]] | Metadados e estado geral do serviço de firewall | ## Como Coletar ### Windows — Windows Defender Firewall | Event ID | Canal | Descrição | |---------|-------|-----------| | 2003 | Microsoft-Windows-Windows Firewall With Advanced Security/Firewall | Configuração de firewall alterada | | 2004 | Microsoft-Windows-Windows Firewall With Advanced Security/Firewall | Regra adicionada | | 2005 | Microsoft-Windows-Windows Firewall With Advanced Security/Firewall | Regra modificada | | 2006/2033 | Microsoft-Windows-Windows Firewall With Advanced Security/Firewall | Regra excluída | | 2009 | Microsoft-Windows-Windows Firewall With Advanced Security/Firewall | Falha ao carregar regras | | 5025 | Security | Serviço de Firewall parado | | 5027 | Security | Firewall não conseguiu recuperar política — usando configuração local | | 5030 | Security | Falha ao iniciar serviço Windows Firewall | ```powershell # Verificar estado atual do firewall Get-NetFirewallProfile | Select-Object Name, Enabled, DefaultInboundAction, DefaultOutboundAction # Exportar todas as regras para auditoria Get-NetFirewallRule | Export-Csv "C:\Audit\firewall-rules-$(Get-Daté -Format yyyyMMdd).csv" # Monitorar mudanças em regras via PowerShell (complementar ao event log) Register-WmiEvent -Class Win32_ProcessStartTrace -SourceIdentifier "FWChange" ` -Query "SELECT * FROM __InstanceCreationEvent WITHIN 5 WHERE TargetInstance ISA 'Win32_NTLogEvent' AND TargetInstance.EventCode = 2004" ``` ### Linux — iptables / nftables / firewalld / ufw ```bash # auditd — monitorar chamadas de sistema relacionadas a firewall auditctl -a always,exit -F arch=b64 -S execve -F exe=/usr/sbin/iptables -k firewall_change auditctl -a always,exit -F arch=b64 -S execve -F exe=/usr/sbin/nft -k firewall_change auditctl -a always,exit -F arch=b64 -S execve -F exe=/usr/bin/firewall-cmd -k firewall_change # Exportar regras atuais para baseline iptables-save > /var/log/iptables-baseline-$(daté +%Y%m%d).rules nft list ruleset > /var/log/nft-baseline-$(daté +%Y%m%d).rules # journald — logs do firewalld journalctl -u firewalld --since "24 hours ago" --output json | jq '.MESSAGE' # ufw — logs de bloqueio tail -f /var/log/ufw.log ``` ### Cloud — AWS / Azure / GCP **AWS Security Groups e Network ACLs:** ```bash # CloudTrail events relevantes # AuthorizeSecurityGroupIngress / AuthorizeSecurityGroupEgress # RevokeSecurityGroupIngress / RevokeSecurityGroupEgress # CreateSecurityGroup / DeleteSecurityGroup # ModifyNetworkAclEntry aws cloudtrail lookup-events \ --lookup-attributes AttributeKey=EventName,AttributeValue=AuthorizeSecurityGroupIngress \ --start-time "2026-03-24T00:00:00" \ --output json | jq '.Events[] | {time: .EventTime, user: .Username, detail: .CloudTrailEvent}' ``` **Azure NSG (Network Security Group):** ```bash # Azure Monitor — Activity Log az monitor activity-log list \ --resource-type "Microsoft.Network/networkSecurityGroups" \ --start-time "2026-03-24T00:00:00Z" \ --output table ``` **GCP Firewall Rules:** ```bash # Google Cloud Audit Logs — Firewall Rules gcloud logging read \ 'protoPayload.serviceName="compute.googleapis.com" AND protoPayload.methodName=~"firewalls\.(insert|patch|delete)"' \ --freshness=1d ``` ### NGFW (Next-Generation Firewall) — Palo Alto / Fortinet / Check Point | Plataforma | Log Source | Campos Chave | |-----------|-----------|-------------| | **Palo Alto PAN-OS** | System Logs + Configuration Audit | `type=CONFIG`, `action=set/delete`, `admin` | | **Fortinet FortiGate** | Event Log — `event_type=firewall` | `action`, `policyname`, `user` | | **Check Point** | SmartLog — Management Events | `layer_name`, `action`, `administrator` | | **Cisco FTD/ASA** | Syslog — `%ASA-5-111010` | Config changes com usuário e timestamp | ## Técnicas Detectadas | Técnica | ID | Descrição | |---------|-----|-----------| | Impair Defenses — Disable or Modify System Firewall | [[t1562-004-disable-or-modify-system-firewall\|T1562.004]] | Desabilitação do firewall do host para permitir tráfego C2 ou lateral | | System Information Discovery | [[t1082-system-information-discovery\|T1082]] | Enumeração de regras de firewall para mapear restrições de rede | | Exfiltration Over Alternative Protocol | [[t1048-exfiltration-over-alternative-protocol\|T1048]] | Adição de regras para abrir portas de exfiltração não convencionais | | Remote Services | [[t1021-remote-services\|T1021]] | Modificação de regras para permitir RDP/SSH de endereços externos | | Exploit Public-Facing Application | [[t1190-exploit-public-facing-application\|T1190]] | Exploração de vulnerabilidades em firewalls (ex: [[cve-2024-47575\|CVE-2024-47575]]) | ## Gaps de Cobertura Brasil/LATAM **Gaps comuns identificados em organizações brasileiras:** 1. **Logs de NGFW não integrados ao SIEM:** A maioria das empresas brasileiras de médio porte possui Palo Alto, Fortinet ou CheckPoint, mas os logs de mudanças de configuração (`CONFIG` type) raramente são encaminhados ao SIEM — apenas os logs de tráfego são coletados. 2. **Windows Firewall desabilitado como "solução" de compatibilidade:** É uma prática comum em ambientes Windows brasileiros desabilitar o Windows Defender Firewall por problemas de compatibilidade com aplicações legadas, sem controles compensatórios. Isso remove a última linha de defesa no endpoint. 3. **Cloud Security Groups com regras 0.0.0.0/0 não auditadas:** Instâncias AWS/Azure no Brasil frequentemente são implantadas com regras permissivas abertas a todo o mundo. CloudTrail captura criação, mas mudanças subsequentes raramente são monitoradas de forma contínua. 4. **Ausência de alertas em baseline de regras:** Não é prática estabelecer um baseline de regras de firewall e alertar sobre desvios. Adição de regras por adversários pós-comprometimento não gera alertas em SIEMs configurados apenas para volume de tráfego. **Recomendações:** - Encaminhar System Logs e Configuration Audit de NGFWs ao SIEM (não apenas traffic logs) - Criar alertas para Event IDs 5025, 5030 (Windows Firewall parado) com prioridade alta - Implementar detecção de baseline: qualquer nova regra de firewall que permita tráfego de entrada deve gerar alerta para revisão - Habilitar AWS Config Rules para detectar security groups com `0.0.0.0/0` em portas sensíveis ## Referências - [[dc0043-firewall-disable|DC0043 — Firewall Disable]] — desabilitação de firewall - [[dc0044-firewall-enumeration|DC0044 — Firewall Enumeration]] — enumeração de regras - [[dc0051-firewall-rule-modification|DC0051 — Firewall Rule Modification]] — modificação de regras - [[dc0053-firewall-metadata|DC0053 — Firewall Metadata]] — metadados e estado do serviço - [[ds0017-command|DS0017 — Command]] — comandos usados para modificar firewalls - [[t1562-004-disable-or-modify-system-firewall|T1562.004 — Disable or Modify System Firewall]] — técnica principal - [[cve-2024-47575|CVE-2024-47575]] — vulnerabilidade FortiManager explorada por [[unc5820]] --- *Fonte: [MITRE ATT&CK — DS0018](https://attack.mitre.org/datasources/DS0018)*