Pular para o conteúdo principal

🔐 Ameaças Mitigadas - Capítulo 07: CI/CD Seguro

Este capítulo define práticas para segurança de pipelines CI/CD, incluindo controlo de código-fonte, validações automáticas, proteção de runners, gestão de segredos, rastreabilidade e proveniência de artefactos.

⚠️ As ameaças mitigadas estão entre as mais críticas da cadeia de software moderno - como demonstrado pelos incidentes de SolarWinds, Codecov, CircleCI, entre outros.


🧨 Categoria 1 - Ataques à infraestrutura da pipeline

AmeaçaFonteComo surgeComo a prática mitigaControlos associados🧩 Mitigada apenas por este capítulo?
Execução remota não autorizadaSTRIDE / MITRE T1190 / DSOMM BuildPipeline executa código maliciosoControlo de origem, triggers e isolamento de eventosaddon/01-design-seguro-pipelines.md
Manipulação de ambientes de buildOSC&R ENV-3 / SLSA Build Integrity / DSOMM BuildInjeção de comandos, configurações ou segredosRunners isolados e revalidados, ambientes limpos e efémerosaddon/04-isolamento-runners.md
Elevação de privilégios no pipelineOWASP CI/CD / CAPEC-233 / DSOMM BuildScripts com permissões excessivasHardening por step, restrição mínima de permissõesaddon/01-design-seguro-pipelines.md

🔐 Categoria 2 - Comprometimento do código-fonte

AmeaçaFonteComo surgeComo a prática mitigaControlos associados🧩 Mitigada apenas por este capítulo?
Push não autorizado para branch principalOWASP CI/CD / SSDF PW.3 / DSOMM GovernFalta de proteção de branchesProteção de branches + PR com validações obrigatóriasaddon/00-gestao-segura-codigo-fonte.md
Pipeline invocado com código não auditadoOSC&R Code Execution / BSIMM / DSOMM ReleaseAlteração direta no repositórioRegras de execução só em commits revistos e aprovadosaddon/06-politicas-gates-pipeline.md
Substituição silenciosa de código legítimoSLSA Provenance / SSDF RV.1 / DSOMM ReleaseCódigo alterado sem rasto ou proveniênciaAssinaturas e rastreio de proveniência desde o commit até à publicaçãoaddon/08-rastreabilidade-assinaturas.md

📦 Categoria 3 - Risco de injeção de artefactos ou builds falsificados

AmeaçaFonteComo surgeComo a prática mitigaControlos associados🧩 Mitigada apenas por este capítulo?
Build reproduzível falsificadoSLSA Build L2 / CAPEC-233 / DSOMM ReleaseArtefactos gerados fora da pipelineAssinatura dos artefactos + restrição da cadeia de buildaddon/05-integridade-proveniencia.md
Injecção de código em tempo de pipelineOWASP CI/CD / STRIDE / DSOMM BuildScripts com lógica dinâmica sem controloValidação de código YAML + linters e revisão de pipelinesaddon/02-seguranca-codigo-pipeline.md
Inclusão de ferramentas inseguras no buildOSC&R ENV / OWASP SAMM / DSOMM TestAções externas não verificadasAllowlist de ações/plugins + revisão periódicaaddon/06-politicas-gates-pipeline.md

🔑 Categoria 4 - Gestão insegura de segredos

AmeaçaFonteComo surgeComo a prática mitigaControlos associados🧩 Mitigada apenas por este capítulo?
Vazamento de credenciais via logsCAPEC-651 / OWASP CI/CD / DSOMM OperateSegredos escritos em logsMascaramento automático e logging com política de exclusãoaddon/03-gestao-segredos-pipeline.md
Segredos hardcoded ou em variáveis públicasSSDF PW.5 / ISO 27001 A.9 / DSOMM TestUso de variáveis de ambiente mal geridasCofre externo + injecção com restrições e ciclo de vidaaddon/03-gestao-segredos-pipeline.md
Reutilização de segredos sem rotaçãoSLSA / SSDF RV.3 / DSOMM OperateSegredos válidos para múltiplos ambientesPolítica de rotação automática + ciclo de expiração15-aplicacao-lifecycle.md❌ Cap. 01

🧾 Categoria 5 - Falta de validação e controlo sistemático

AmeaçaFonteComo surgeComo a prática mitigaControlos associados🧩 Mitigada apenas por este capítulo?
Falta de gates de segurançaOWASP CI/CD / BSIMM13 / DSOMM GovernQualquer código é promovido sem bloqueiosPolítica de gates com regras por tipo de aplicaçãoaddon/06-politicas-gates-pipeline.md
Pipeline não executa scannersSSDF PW.7 / OWASP SAMM / DSOMM TestValidações não integradas na automaçãoExecução obrigatória de validadores (SAST, SCA, secrets, etc.)addon/07-validacoes-seguranca-integradas.md
Não rastreabilidade entre execução e resultadoOSC&R Traceability / SSDF PW.5 / DSOMM ReleaseNão se sabe o que foi validado, nem quandoRegisto automático de execuções, resultados e evidênciaaddon/08-rastreabilidade-assinaturas.md

🕵️ Categoria 6 - Exceções e visibilidade negligenciadas

AmeaçaFonteComo surgeComo a prática mitigaControlos associados🧩 Mitigada apenas por este capítulo?
Segurança desativada em tempo de buildCAPEC-1003 / STRIDE / DSOMM GovernSteps de segurança desativados sem rastreioPolítica de exceção formal com justificação, owner e prazoaddon/09-controle-excecoes-visibilidade.md
Decisões sem visibilidade para a equipaSSDF RM.3 / BSIMM Governance / DSOMM OperateConfigurações críticas mudadas sem rastoLog e alertas em alterações de segurança da pipelineaddon/09-controle-excecoes-visibilidade.md
Falta de aprovação formal para bypassOWASP SAMM / DSOMM GovernPermissões técnicas sobrepõem processo de aprovaçãoIntegração de workflow de aprovação por função ou criticidadeaddon/09-controle-excecoes-visibilidade.md

✅ Conclusão

O Capítulo 07 é o principal mecanismo de defesa operacional contra ataques à pipeline e cadeia de fornecimento, garantindo:

  • Validação contínua e bloqueio automático de riscos;
  • Rastreamento e verificação de proveniência de código e artefactos;
  • Isolamento de execução e integridade da build;
  • Gestão controlada de segredos e exceções.

✅ Pelo menos 12 ameaças são mitigadas exclusivamente por este capítulo, sendo muitas delas inalcançáveis por qualquer outro controlo posterior à execução da pipeline.

📌 O capítulo é essencial para conformidade com SLSA, SSDF, BSIMM, OWASP CI/CD, ENISA DevSecOps, e para evitar falhas sistémicas na cadeia de produção de software.

🧩 As práticas descritas neste capítulo alinham-se diretamente com os cinco domínios operacionais do OWASP DSOMM - Build, Test, Release, Operate e Govern - mitigando ameaças estruturais e sistémicas da automação CI/CD moderna.