Segurança

Documento de referência das medidas de segurança aplicadas.


1. Camadas

Transporte

Aplicação

Sessão

Autenticação

Autorização

Dados

Webhooks

Política de senha

Logs

Assets


2. Superfície de ataque

Vetor Mitigação
XSS CSP com nonce, esc() em todas as views
CSRF CsrfMiddleware global (exceto /webhooks/*)
SQL Injection PDO + prepared statements
Timing attack (login) Comparação com hash dummy
Brute force Rate limit + bloqueio temporário
Session fixation Regeneração no login
Clickjacking X-Frame-Options: SAMEORIGIN
Mixed content CSP + HTTPS obrigatório
Enumeração de usuários Mensagem genérica em login e reset
Vazamento entre contas Isolamento por usuario_id
Webhook spoofing HMAC + deduplicação
Job injection Handler registrado por classe

3. Checklist de deploy


4. Resposta a incidentes

  1. Isolar: desativar usuário afetado (UPDATE usuarios SET ativo = 0).
  2. Auditar: SELECT * FROM audit_log WHERE usuario_id = X ORDER BY created_at DESC;
  3. Forçar reset de senha dos usuários afetados.
  4. Revisar IPs em storage/rate-limit/ e logs/app.jsonl.
  5. Rotacionar segredos (SMTP, webhooks, tokens).
  6. Documentar em docs/INCIDENTES.md.

5. Rotação de segredos

Segredo Onde Frequência
MAIL_PASSWORD .env Anual ou após vazamento
WEBHOOK_*_SECRET .env Semestral
WEBHOOK_META_VERIFY_TOKEN .env Semestral
Tokens de usuário Banco Ao pedido do usuário
Backup codes 2FA Banco Ao pedido do usuário

6. Auditoria contínua