web-threat-mitigation
Laboratório prático sobre detecção e mitigação de ameaças em aplicações web usando OWASP ZAP, Burp Suite e ModSecurity WAF (com OWASP CRS). Estudo de caso: Spring4Shell (CVE-2022-22965). Configuração local baseada em Docker.
Laboratório de Mitigação de Ameaças Web – OWASP ZAP, ModSecurity & Exploração de CVE
Este repositório documenta um laboratório focado em simular, analisar e mitigar ameaças comuns em aplicações web. Inclui instalação de alvos vulneráveis, ferramentas de varredura, implantação de um WAF (ModSecurity com OWASP CRS) e uma exploração ao vivo da CVE-2022-22965 (Spring4Shell).
Objetivos do Laboratório
- Implantar uma aplicação web vulnerável (WebGoat) usando Docker
- Realizar varredura de vulnerabilidades usando OWASP ZAP e Burp Suite
- Configurar um proxy reverso usando Nginx + ModSecurity + OWASP CRS 4.9.0
- Analisar resultados antes e depois da implementação do WAF
- Explorar o Spring4Shell e verificar a eficácia do WAF
Ferramentas Utilizadas
- Docker + Docker Compose
- OWASP ZAP e Burp Suite
- ModSecurity (via libnginx-mod-http-modsecurity)
- OWASP Core Rule Set (CRS 4.9.0)
- Kali Linux com Metasploit Framework
- CentOS 9 Stream e Debian 12
Fluxo de Trabalho do Laboratório
- Implantação do WebGoat no CentOS usando Docker, exposto na porta 8080.



- Varredura Inicial a partir do Kali Linux usando OWASP ZAP:
- Alertas de alto risco: SQL Injection, Spring4Shell
- Médio: CSP ausente, Tokens CSRF, Manipulação de Parâmetros
- Info: Vazamento de versão, possível XSS, problemas de sessão


- Implantação do Proxy Reverso no Debian 12 usando nginx.

- Configuração do WAF com OWASP CRS e regras carregadas de:
/etc/nginx/coreruleset-4.9.0/crs-setup.conf
/etc/nginx/coreruleset-4.9.0/rules/*.conf
As regras foram testadas e ativadas verificando os logs do ModSecurity.



- Varredura Pós-WAF usando OWASP ZAP mostrou:
- Alertas reduzidos (respostas bloqueadas ou mascaradas)
- Confirmação da proteção do WAF em vigor


- Teste de Exploração usando Metasploit contra Spring4Shell:
- Sem WAF: RCE bem-sucedida (payload de shell reverso)
- Com WAF: Exploração bloqueada devido à detecção do CRS


Conclusão
O laboratório mostra a importância de uma segurança em camadas:
- Uma aplicação vulnerável pode ser facilmente exposta sem proteção
- ZAP/Burp ajudam a identificar e categorizar vulnerabilidades
- ModSecurity e OWASP CRS reduzem efetivamente a superfície de ataque
- WAFs podem bloquear CVEs do mundo real como Spring4Shell com ajustes adequados
Autor
Bruno Paolo Huamán Vela (Lima, Peru)
Estudante de Cibersegurança – Ural Federal University (UrFU)