FAG capture the flag 2.0 — Shift Left Security

Bem-vindo ao laboratório prático de Segurança no Ciclo de Vida de Software (DevSecOps). O objetivo desta atividade é permitir que você explore vulnerabilidades propositais em um ambiente controlado e compreenda como ferramentas automatizadas de análise de segurança identificam e bloqueiam tais falhas antes que cheguem a produção.

Conceitos Fundamentais

1. O que é Shift Left Security?

É a prática de integrar verificações e testes de segurança nas fases iniciais do desenvolvimento (à "esquerda" da linha do tempo do projeto), prevenindo vulnerabilidades em vez de remediá-las após o deploy.

2. SAST (Static Application Security Testing)

Análise de código-fonte em repouso sem execução da aplicação (ex: Bandit para Python). Detecta padrões inseguros como injeção de SQL e uso de funções perigosas.

3. DAST (Dynamic Application Security Testing)

Análise de segurança em tempo de execução operando como um atacante externo (ex: OWASP ZAP). Identifica falhas como Cross-Site Scripting (XSS) e cabeçalhos ausentes.

4. SCA (Software Composition Analysis)

Mapeamento e verificação de dependências de terceiros (ex: Trivy) contra bancos públicos de CVEs (Common Vulnerabilities and Exposures).

5. Secret Scanning

Detecção automatizada de chaves de API, credenciais e tokens expostos em commits ou arquivos de código (ex: Gitleaks).

6. IaC & Container Hardening

Verificação de boas práticas em configurações de infraestrutura e imagens Docker (ex: Hadolint), prevenindo execução com usuário root e imagens desatualizadas.

Tabela de Pontuação (Nota Final: 10.0)

Desafio Tipo Vulnerabilidade / Objetivo Pontos
C1 Ofensivo Injeção de SQL na consulta de alunos (Dump da flag) 1.5
C2 Ofensivo Reflected XSS em /pesquisa (Roubo de cookie do Bot Admin) 1.5
C3 Ofensivo Credencial exposta em arquivo estático / backup 1.5
C4 Ofensivo Identificação de versão vulnerável de biblioteca (SCA) 1.0
C5 Ofensivo Path Traversal no download de arquivos internos 1.5
C6 Ofensivo Interpretação e reconhecimento de relatórios de linters 1.0
C7 Defensivo Remediação completa do código e aprovação em sandbox (SAST/SCA/IaC) 2.0

Regras de Conduta & Transparência LGPD

  • Escopo Permitido: Apenas a aplicação alvo do Lab (https://ctf.jglabs.com.br/lab) pode ser atacada. Ataques contra o Scoreboard, Gateway ou negação de serviço (DoS/DDoS) implicam desclassificação imediata.
  • Individualidade: Cada estudante possui flags HMAC exclusivas. O sistema detecta envios cruzados e registra alertas de compartilhamento indevido.
  • Auditoria Total (LGPD): Todas as requisições, payloads enviados, submissões de flags e tentativas de login são registrados com carimbo de tempo, IP e identificador para fins de avaliação pedagógica.
  • Prazo: O ambiente ficará disponível por exatamente 21 dias contados a partir da data de deploy inicial.