O salmista diz que foi provado e refinado no fogo, e que nada de impuro se achou. O ouro só prova sua pureza passando pela fornalha, e o metal se refina a cada aquecimento, não num teste único no fim. Código seguro é igual: não se descobre a impureza esperando o lançamento, prova-se a cada etapa, com fogo proporcional. O SSDLC, Secure Software Development Lifecycle, é a fornalha distribuída pelo ciclo, e SAST, DAST, SCA e IaC scanning são as chamas em cada estágio.
01Shift-left: a impureza custa menos quanto mais cedo se acha
Há décadas se mede o mesmo padrão: corrigir uma falha no desenho custa uma fração do que custa corrigi-la em produção, onde soma-se cliente exposto, incidente e retrabalho. Shift-left é a consequência lógica: empurrar a verificação de segurança para o mais cedo possível no ciclo, para achar a impureza quando ela ainda é barata de remover. O gate no fim não some, mas deixa de ser o primeiro lugar onde a falha aparece.
O SSDLC organiza isso: requisitos de segurança no início, threat modeling no desenho, testes automáticos a cada commit, gate antes do merge e validação antes do deploy. Cada etapa aquece o metal um pouco, e o que passa por todas chega em produção refinado. O oposto, testar só na véspera, é jogar o lingote bruto direto na vitrine e torcer para ninguém reparar nas impurezas.
Figura 1Custo de corrigir uma falha por etapa em que ela é encontrada
Custo de correção
Ver os dados da figura
Etapa do ciclo
Custo de correção
1
1
2
5
3
15
4
45
5
100
Eixo x: 1 desenho, 2 código, 3 build, 4 teste, 5 produção. A curva ilustra o padrão conhecido: cada etapa adiada multiplica o custo de corrigir.
02As quatro chamas: SAST, DAST, SCA e IAST
Cada tipo de teste prova o código de um ângulo. SAST, análise estática, lê o código-fonte parado e acha o padrão inseguro sem executá-lo, com ferramentas como Semgrep e CodeQL. DAST, análise dinâmica, ataca a aplicação rodando, como o OWASP ZAP faz, e enxerga o que só aparece em execução. SCA, análise de composição, cuida das dependências: a biblioteca de terceiro com vulnerabilidade conhecida, verificada por Snyk ou OWASP Dependency-Check.
IAST junta os dois primeiros, instrumentando a aplicação em teste para ver o fluxo por dentro enquanto ela roda. Nenhum sozinho basta: SAST vê o código mas não o comportamento, DAST vê o comportamento mas não a causa no código, e SCA cobre o que você nem escreveu. A fornalha completa usa as chamas juntas, cada uma pegando o que a outra deixa passar.
Figura 2As técnicas de teste de segurança e o que cada uma enxerga
Técnica
Como age
Ferramentas
Ponto cego
SAST
lê o código parado
Semgrep, CodeQL
falha só visível em execução
DAST
ataca a app rodando
OWASP ZAP
não aponta a linha de código
SCA
verifica dependências
Snyk, Dependency-Check
falha no código próprio
IAST
instrumenta a app em teste
agentes em runtime
exige ambiente de teste rico
Cada técnica tem um ponto cego que outra cobre. Programa maduro combina as quatro, não escolhe uma e ignora o resto.
03IaC scanning e o gate que reprova o merge
Infraestrutura hoje é código, e código de infraestrutura tem as mesmas impurezas: bucket público, grupo de segurança aberto, criptografia desligada. Checkov, do time da Prisma Cloud, e ferramentas como tfsec analisam Terraform e outros IaC antes do apply, pegando a configuração insegura na fornalha do build em vez de na varredura de postura depois que já está de pé em produção. É shift-left aplicado à nuvem.
Tudo isso só vira barreira de verdade quando é gate, não aviso. O achado que bloqueia o merge ou o deploy é o que força a correção; o relatório que ninguém lê treina o time a ignorar. O gate precisa ser calibrado, bloqueia o crítico, avisa o resto, com exceção rastreável e dono, para não virar atrito que o time contorna. Uma plataforma como a Conviso amarra os achados de SAST, DAST, SCA e IaC num lugar só, ligando cada um ao requisito e ao dono.
Figura 3O gate de segurança na pipeline de CI/CD
01CommitSAST e SCA rodam cedo; falha óbvia barra aqui
02Pull requestIaC scanning com Checkov e revisão de segurança
03IATriagem por riscoIA separa risco real de ruído e prioriza
04Gate calibradobloqueia o crítico, avisa o resto, exceção com dono
05Deploy validadoDAST na aplicação de teste antes de produção
↺ Achado bloqueia o merge, não vira relatório arquivado. Gate que só avisa treina o time a ignorar segurança.
O gate calibrado é o que separa DevSecOps real de teatro de segurança: bloqueia o que importa, sem virar atrito que se contorna.
04A fornalha é do time, não da ferramenta
A tentação é achar que comprar os scanners resolve. Ferramenta sem cultura produz dashboards vermelhos que ninguém trata e uma falsa sensação de controle. O SSDLC funciona quando segurança é responsabilidade compartilhada: o desenvolvedor entende o achado, o time trata a dívida de segurança como trata bug, e o gate é aceito porque protege, não porque foi imposto. A regra de que segurança é propriedade da arquitetura vale aqui: ela entra no desenho, não no fim.
Na prática, isso significa métrica que importa, tempo para corrigir vulnerabilidade crítica, cobertura de teste de segurança, tendência da dívida, e não contagem de alertas. Foi assim que eu montei esteiras que levaram cobertura de segurança do zero ao padrão em meses: não pela ferramenta mais cara, mas pelo gate calibrado, pelo achado que o time entende e pela dívida tratada como trabalho de primeira classe. A fornalha refina o metal; quem decide o que é impureza é a cultura.
Figura 4Ferramenta e cultura no SSDLC
Cultura de segurança ↑
Segurança realgate calibrado, achado tratado, dívida como trabalho
Heroísmo isoladotime cuida sem ferramenta; não escala nem persiste
Teatro de dashboardscanner caro, alerta ignorado, falsa sensação
No escurosem ferramenta e sem cultura; a falha aparece no incidente
Ferramenta de teste →
Ferramenta sem cultura é teatro; cultura sem ferramenta não escala. O canto que protege exige as duas, e a cultura decide o que a ferramenta encontra.
Para levar
SSDLC é a fornalha distribuída pelo ciclo: o código provado a cada etapa com SAST, DAST, SCA e IaC scanning, shift-left para achar cedo e barato, e gate calibrado que bloqueia o crítico sem cansar o time. Semgrep, CodeQL, Checkov, Snyk e a Conviso são as chamas; a cultura decide o que é impureza. A IA triagem o falso positivo, calibra o gate e abre a correção, mas tratar segurança como propriedade da arquitetura, e não como teste de véspera, continua sendo decisão de quem lidera a engenharia.
Tags
#julianovincedecampos
#SSDLC
#DevSecOps
#SAST
#DAST
#SCA
#Semgrep
Quem escreve: Juliano Vince de Campos
Gerente de Operações, Tecnologia e Infraestrutura (SRE) numa central de registros. Trabalho com tecnologia desde 2009 e com cibersegurança em tempo integral desde 2015, em infraestrutura crítica, fintech e banking. Escrevo sobre o que eu opero: confiabilidade, segurança, governança e IA que passa por gate antes de chegar em produção.