Avançado DevSecOps

Shift-left security — antecipar segurança no ciclo de desenvolvimento

Shift-left é a prática de inserir segurança o mais cedo possível no ciclo de desenvolvimento — antes do deploy, antes dos testes de integração, antes até do primeiro commit. O custo de corrigir uma vulnerabilidade na fase de design é até 100x menor do que em produção.

Por que “shift-left”?

Custo relativo de correção por fase:

  Design          →  $1
  Desenvolvimento →  $10
  QA / teste      →  $100
  Produção        →  $1.000+

Quanto mais tarde encontrada, mais cara a correção.

Onde a segurança entra em cada fase

1. Planejamento e design

  • Threat modeling: mapear atores, ativos e vetores de ataque antes de escrever código.
  • Definir requisitos de segurança junto com requisitos funcionais.
Exemplo de threat model (STRIDE):
  Asset: autenticação de usuário
  Spoofing      → usar JWT com assinatura forte
  Tampering     → validar payload no servidor
  Repudiation   → logar toda ação autenticada
  Info disc.    → não expor stack trace na resposta
  DoS           → rate limiting no endpoint de login
  Elevation     → RBAC, não confiar em claims do cliente

2. Desenvolvimento (IDE e pre-commit)

  • Plugins de análise estática no editor (Semgrep, SonarLint, Snyk IDE).
  • Hooks de pre-commit para bloquear segredos e vulnerabilidades óbvias.
# .pre-commit-config.yaml
repos:
  - repo: https://github.com/gitleaks/gitleaks
    rev: v8.18.0
    hooks:
      - id: gitleaks
  - repo: https://github.com/PyCQA/bandit
    rev: 1.7.8
    hooks:
      - id: bandit
        args: ["-r", "src/"]

3. Revisão de código (PR/MR)

  • Checklist de segurança na descrição do PR.
  • Revisores treinados para identificar padrões inseguros.
Checklist de segurança em PR:
  [ ] Input validado e sanitizado?
  [ ] Sem credencial hardcoded?
  [ ] Dependências novas revisadas?
  [ ] Tratamento de erro não vaza informação sensível?
  [ ] Permissões mínimas aplicadas?

4. CI/CD

Pipeline executa ferramentas automatizadas: SAST, SCA, secrets scan, análise de container. Qualquer gate que falha bloqueia o merge.

5. Produção e monitoramento

Segurança em produção fecha o loop: alertas de runtime alimentam o backlog de desenvolvimento e ajustam os modelos de ameaça.

Cultura DevSecOps

Shift-left não é só ferramenta — é responsabilidade compartilhada:

Dev  → escreve código seguro, cuida das dependências
Sec  → define políticas, revisa design, treina o time
Ops  → configura infraestrutura endurecida, monitora runtime

"Security as code": políticas versionadas no repositório,
auditáveis e testáveis como qualquer outro artefato.

Resumo

Antecipar segurança reduz surpresas em produção e cria um feedback loop rápido. Ferramentas no IDE e no pipeline substituem auditorias pontuais por verificação contínua — o desenvolvedor recebe o alerta no momento em que o problema é criado.