Política de Desenvolvimento Seguro (SSDLC)
Requisitos de segurança integrados ao ciclo de vida de desenvolvimento de software.
Substitua os campos entre [colchetes] e adapte à realidade da sua organização.
Versão: 1.0 | Última atualização: [Data] | Dono do documento: [Cargo, ex: Head de Engenharia/CISO]
1. Objetivo
Estabelecer práticas obrigatórias de segurança em todas as fases do ciclo de desenvolvimento de software da [Nome da Empresa], reduzindo vulnerabilidades introduzidas em código antes de chegar à produção.
2. Escopo
Aplica-se a todo código desenvolvido internamente, incluindo aplicações web, APIs, scripts de automação e infraestrutura como código (IaC), independentemente da linguagem ou stack utilizada.
3. Segurança por Fase do Ciclo de Desenvolvimento
3.1 Planejamento e Design:** modelagem de ameaças obrigatória para funcionalidades que processam dados sensíveis ou autenticação. Requisitos de segurança devem ser definidos junto com requisitos funcionais.
3.2 Desenvolvimento:** uso obrigatório de análise estática de código (SAST) em todo pull request antes de merge. Segredos (chaves de API, credenciais) nunca devem ser commitados no repositório — uso de gestor de segredos é obrigatório.
3.3 Revisão de Código:** todo código deve passar por revisão de pelo menos um par antes de merge, com atenção específica a validação de entrada, controle de acesso e tratamento de erros.
3.4 Testes:** testes de segurança automatizados (SCA para dependências, DAST quando aplicável) devem rodar em pipeline de CI/CD antes de deploy em produção.
3.5 Deploy e Operação:** segregação obrigatória entre ambientes de desenvolvimento, staging e produção, com controle de acesso distinto para cada um.
4. Gestão de Vulnerabilidades em Código
Vulnerabilidades identificadas devem ser tratadas conforme severidade: Críticas em até [prazo, ex: 24–72h], Altas em até [7 dias], Médias/Baixas no ciclo normal de sprint.
5. Dependências de Terceiros
Bibliotecas e pacotes de terceiros devem ser escaneados quanto a vulnerabilidades conhecidas (CVE) antes da inclusão no projeto e monitorados continuamente após isso.
6. Papéis e Responsabilidades
- [Cargo, ex: Head de Engenharia]: garante que os controles de SSDLC estejam implementados no pipeline de CI/CD.
- Desenvolvedores: responsáveis por seguir práticas seguras de codificação e corrigir vulnerabilidades identificadas dentro dos prazos definidos.
- [Cargo, ex: CISO/AppSec]: define os critérios de severidade e aprova exceções.
7. Treinamento
Todos os desenvolvedores devem passar por treinamento de segurança de aplicações (ex: OWASP Top 10) no onboarding e anualmente.
8. Revisão da Política
Revisão anual, ou após incidente de segurança envolvendo vulnerabilidade de código.
Substitua os campos entre [colchetes] e adapte à realidade da sua organização.
Feature relacionada no VendorGuard
Semgrep/Gitleaks/Aikido references, technical audience (blog)