[Security/GCES] Hardening de Infraestrutura, Governança de Pipeline e Proposta de WAF

Descrição

Após a implementação bem-sucedida das ferramentas de detecção (SAST/SCA/Segredos) na Sprint anterior, o objetivo desta tarefa é elevar a maturidade de segurança do projeto EJ-Platform.

O foco agora muda da detecção para a prevenção e mitigação. Precisamos aplicar técnicas de hardening (endurecimento) tanto na aplicação Django quanto na infraestrutura Docker, estabelecer regras de bloqueio no pipeline para vulnerabilidades críticas e definir uma estratégia de proteção de perímetro (WAF).

Objetivos Principais

1. Hardening de Infraestrutura (Docker & IaC)

  • Refatoração do Dockerfile: Implementar boas práticas de segurança, especificamente a execução do container com usuário não-privilegiado (rootless) e otimização de camadas (multi-stage build).
  • Scan de Infraestrutura: Integrar a ferramenta Trivy ao pipeline para auditar o Dockerfile (IaC) e a imagem construída em busca de vulnerabilidades de sistema operacional (CVEs).

2. Hardening da Aplicação (Django)

  • Revisão de Configurações: Auditar o arquivo settings.py comparando-o com o checklist oficial de segurança do Django.
  • Correções: Ajustar flags de cookies (Secure, HttpOnly), cabeçalhos de segurança e desativar modo de depuração em produção.

3. Governança do Pipeline

  • Bloqueio de Build: Configurar o pipeline CI/CD para falhar (block) caso o Trivy ou o pip-audit encontrem vulnerabilidades de severidade CRITICAL, impedindo que código inseguro avance.

4. Proteção de Perímetro (WAF)

  • Proposta Técnica: Elaborar um documento propondo uma solução de Web Application Firewall (ex: Cloudflare ou AWS WAF) adequada à arquitetura do EJ, detalhando como ela mitigaria ataques comuns.

Entregáveis Esperados

  1. Dockerfile Otimizado: Arquivo atualizado rodando como usuário não-root.
  2. Relatório de Hardening Django: Documento (ou seção no relatório final) listando as configurações ajustadas.
  3. Pipeline Bloqueante: Configuração no .gitlab-ci.yml que impede falhas críticas.
  4. Proposta de WAF: Documento teórico de arquitetura de defesa.
  5. Relatório Final Consolidado: Integração de todos os artefatos do semestre.

Critérios de Aceite

  • O container da aplicação deve iniciar sem erros mesmo rodando sem root.
  • O pipeline deve exibir o relatório do Trivy nos logs.
  • O relatório final deve consolidar as ações de Hardening e a proposta de WAF.

Labels: Blue Team, Hardening, Docker Security, WAF, Final Delivery

Assignee principal:

  • @zlimaz

Participantes / Revisores / Envolvidos:

  • @zlimaz
  • @caroll_mf
  • @DanRocha18
  • @sebazac332
  • @guizinpeix7
  • @BrenoLUCO
Assignee Loading
Time tracking Loading