# DC0051 — Firewall Rule Modification
## Descrição
Firewall Rule Modification (DC0051) monitora a criação, deleção ou alteração de regras de firewall — incluindo mudanças em políticas de entrada/saída, adição de exceções para programas específicos, modificação de faixas de IP permitidas e alterações em regras de NAT/encaminhamento. Este componente é mais granular que o [[dc0043-firewall-disable|DC0043 — Firewall Disable]], capturando modificações cirúrgicas que mantêm o firewall ativo mas criam brechas específicas.
Adversários frequentemente preferem modificar regras de firewall ao invés de desativá-lo completamente, pois isso é menos propenso a alertar administradores e sistemas de monitoramento. A adição de uma regra para permitir RDP (porta 3389) de qualquer origem, ou a criação de uma exceção para um executável malicioso, são exemplos de modificações que facilitam acesso persistente com impacto menor na detectabilidade.
Em ambientes Windows, as modificações de regras geram eventos específicos (Event ID 4950 — regra modificada, 4951 — regra não reconhecida) no log do Windows Firewall. Estas modificações também são capturadas pelo Sysmon quando realizadas via processos (`netsh.exe`, `PowerShell`), permitindo correlação com a identidade do processo modificador.
Em cloud, a adição de regras permissivas demais em Security Groups (como `0.0.0.0/0` em todas as portas) é um sinal crítico de comprometimento de credenciais cloud ou misconfiguration intencional para manter acesso.
## Telemetria
| Plataforma | Fonte | Event ID / Evento | Informações Capturadas |
|------------|-------|-------------------|------------------------|
| Windows | Windows Firewall | Event ID 4950 — Firewall rule modified | Regra modificada, novo valor, conta responsável |
| Windows | Windows Firewall | Event ID 4951 — Firewall rule ignored | Regra não reconhecida pela política |
| Windows | Windows Security | Event ID 4688 | Processo criado: `netsh advfirewall firewall add rule` |
| Windows | PowerShell | Event ID 4104 | `New-NetFirewallRule`, `Set-NetFirewallRule` |
| Linux | auditd | `execve` + `iptables -A/-D/-I` / `firewall-cmd` | Adição/remoção de regras, parâmetros |
| macOS | Unified Log | `socketfilterfw --add`, Application Firewall events | Modificações nas regras de aplicação |
| Cloud (AWS) | CloudTrail | `AuthorizeSecurityGroupIngress`, `RevokeSecurityGroupIngress` | Mudanças em regras de SG, IP origem/destino |
| Cloud (Azure) | Activity Log | `Put SecurityRule` / `Delete SecurityRule` | Criação/remoção de regras NSG |
## Queries de Detecção
**KQL (Microsoft Sentinel / Defender)**
```kql
// Adição de regras de firewall permissivas por processos suspeitos
DeviceProcessEvents
| where ProcessCommandLine has_any (
"firewall add rule",
"New-NetFirewallRule",
"AuthorizeSecurityGroup"
)
| where not(InitiatingProcessFileName in~ ("msiexec.exe", "setup.exe", "installer.exe"))
| project Timestamp, DeviceName, AccountName, ProcessCommandLine,
InitiatingProcessFileName, InitiatingProcessFolderPath
| order by Timestamp desc
```
**SPL (Splunk)**
```spl
index=wineventlog EventCode=4950
| rex field=Message "Rule Name:\s+(?<rule_name>[^\r\n]+)"
| rex field=Message "Profile Changed:\s+(?<profile>[^\r\n]+)"
| where NOT match(SubjectUserName, "(?i)(SYSTEM|NetworkService)")
| stats count by SubjectUserName, rule_name, profile, host, _time
| sort - _time
```
## Técnicas Relacionadas
- [[t1562-impair-defenses|T1562 — Impair Defenses]] — modificação de regras para criar brechas sem desativar completamente o firewall
- [[t1021-remote-services|T1021 — Remote Services]] — adição de regras para permitir RDP, SMB ou WinRM de origens externas
- [[t1090-proxy|T1090 — Proxy]] — modificação de regras para permitir tráfego de proxy/túnel
- [[t1571-non-standard-port|T1571 — Non-Standard Port]] — criação de regras para portas não-padrão usadas por C2
## Contexto LATAM
> [!warning] Modificação de Firewall em Ataques Brasileiros
> Em investigações de incidentes no Brasil, a modificação de regras de firewall Windows para permitir conexões RDP ou criar exceções para ferramentas de administração remota (AnyDesk, TeamViewer instalados por adversários) é um padrão recorrente. SOCs devem alertar para qualquer modificação de regra de firewall fora de janelas de change management. Em ambientes cloud com workloads AWS/Azure no Brasil (especialmente no setor [[financial|financeiro]]), monitore CloudTrail/Activity Log para `AuthorizeSecurityGroupIngress` com CIDR `0.0.0.0/0`.
## Referências
- [MITRE ATT&CK — DS0018 Firewall](https://attack.mitre.org/datasources/DS0018/)
- [T1562.004 — Disable or Modify System Firewall](https://attack.mitre.org/techniques/T1562/004/)
- [Windows Event ID 4950 — Firewall Rule Modified](https://www.ultimatewindowssecurity.com/securitylog/encyclopedia/event.aspx?eventID=4950)