5 min leitura • Guide 737 of 877
Práticas de Desenvolvimento Focado em Segurança
Segurança não pode ser um afterthought. GitScrum ajuda times a integrar segurança em workflows ágeis com rastreamento de tarefas de segurança, gerenciamento de vulnerabilidades e integração de processo.
Segurança em Ágil
Segurança Shift-Left
SEGURANÇA AO LONGO DO DESENVOLVIMENTO:
┌─────────────────────────────────────────────────────────────┐
│ │
│ TRADICIONAL (Shift-Right): │
│ │
│ Design → Desenvolver → Testar → Revisão Segurança → Deploy │
│ ↑ │
│ "Encontramos 47 vulnerabilidades" │
│ "Release atrasado 3 semanas" │
│ │
│ ─────────────────────────────────────────────────────────── │
│ │
│ SHIFT-LEFT (Integrado): │
│ │
│ Segurança Segurança Segurança Segurança │
│ ↓ ↓ ↓ ↓ │
│ Design → Desenvolver → Testar → Deploy │
│ │
│ EM CADA FASE: │
│ │
│ Design: │
│ • Threat modeling │
│ • Requisitos de segurança │
│ • Revisão de arquitetura │
│ │
│ Desenvolver: │
│ • Práticas de codificação segura │
│ • Análise estática (SAST) │
│ • Scan de dependências │
│ • Code review inclui segurança │
│ │
│ Testar: │
│ • Análise dinâmica (DAST) │
│ • Casos de teste de segurança │
│ • Penetration testing │
│ │
│ Deploy: │
│ • Scanning de configuração │
│ • Proteção runtime │
│ • Monitoramento e alertas │
└─────────────────────────────────────────────────────────────┘
Integração no Sprint
SEGURANÇA NO RITMO DO SPRINT:
┌─────────────────────────────────────────────────────────────┐
│ │
│ ALOCAÇÃO DO SPRINT: │
│ │
│ [████████████████████████████░░░░░░░░░░] │
│ │ Features 60% │ Bugs 15% │ Segur 15% │ Dívida Tec 10% │
│ │
│ TIPOS DE TRABALHO DE SEGURANÇA: │
│ │
│ PROATIVO: │
│ • Features de segurança (2FA, encryption) │
│ • Melhorias de segurança │
│ • Tarefas de hardening │
│ • Treinamento/aprendizado │
│ │
│ REATIVO: │
│ • Remediação de vulnerabilidades │
│ • Resposta a incidentes │
│ • Achados de auditoria │
│ • Updates de dependências │
│ │
│ EM CERIMÔNIAS DO SPRINT: │
│ │
│ Backlog Refinement: │
│ • Revisão de segurança de features próximas │
│ • "O que pode dar errado?" │
│ │
│ Sprint Planning: │
│ • Incluir tarefas de segurança │
│ • Critérios de aceite de segurança │
│ │
│ Daily Standup: │
│ • Blockers de segurança surfaçam │
│ │
│ Retrospectiva: │
│ • Incidentes de segurança revisados │
│ • Melhorias de processo │
└─────────────────────────────────────────────────────────────┘
Desenvolvimento Seguro
Checklist do Desenvolvedor
CHECKLIST DE SEGURANÇA DO DESENVOLVEDOR:
┌─────────────────────────────────────────────────────────────┐
│ │
│ VALIDAÇÃO DE INPUT: │
│ ☐ Todo input de usuário validado │
│ ☐ Validação allowlist (não blocklist) │
│ ☐ Queries parametrizadas (sem SQL injection) │
│ ☐ Encoding de output (sem XSS) │
│ │
│ AUTENTICAÇÃO: │
│ ☐ Requisitos fortes de senha │
│ ☐ Rate limiting em endpoints de auth │
│ ☐ Gestão segura de sessão │
│ ☐ Opção de autenticação multi-fator │
│ │
│ AUTORIZAÇÃO: │
│ ☐ Verificação em cada request │
│ ☐ Controle de acesso baseado em role │
│ ☐ Princípio do menor privilégio │
│ │
│ DADOS: │
│ ☐ Dados sensíveis criptografados │
│ ☐ Sem secrets em código │
│ ☐ Dados classificados e protegidos │
│ ☐ Logging sem dados sensíveis │
└─────────────────────────────────────────────────────────────┘
Melhores Práticas
Para Desenvolvimento Focado em Segurança
- Shift-left — Segurança desde o design
- Automatize — CI/CD com security gates
- Aloque tempo — 15% do sprint para segurança
- Treine — Desenvolvedores em codificação segura
- Revise — Segurança em cada PR
Anti-Padrões
ERROS DE SEGURANÇA:
✗ Segurança só no final
✗ Sem alocação no sprint
✗ Não automatizar checks
✗ Ignorar vulnerabilidades
✗ Secrets em código
✗ Não treinar devs
✗ Bypass de security gates
✗ Sem revisão de segurança