Hardening de CI/CD
A esteira guarda credenciais, executa código de terceiros e publica o que vai para produção. Comprometê-la é a rota mais curta para comprometer tudo.
O que é
Hardening de CI/CD é reduzir o que um atacante consegue se comprometer a esteira: um runner, uma ação de terceiros, um token vazado ou um pull request malicioso. Os incidentes reais de cadeia de suprimentos mostram o padrão: o alvo deixa de ser a aplicação e passa a ser o caminho que leva o código à produção.
Fora com os segredos estáticos: OIDC
Chaves de nuvem guardadas como segredo da esteira vazam e vivem para sempre. A alternativa é a federação por OIDC: a esteira prova sua identidade ao provedor de nuvem com um token de curta duração, e o provedor entrega credenciais temporárias, restritas àquele repositório e àquela branch.
permissions:
contents: read # mínimo por padrão
id-token: write # permite pedir o token OIDC
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@<sha-completo-do-commit> # fixado por SHA
- uses: aws-actions/configure-aws-credentials@<sha-completo>
with:
role-to-assume: arn:aws:iam::123456789012:role/ci-deploy
aws-region: us-east-1
- run: ./scripts/deploy.shDependências da esteira também são dependências
- Fixar ações e imagens por digest ou SHA, não por tag mutável: uma tag pode ser reapontada para código malicioso.
- Permissões mínimas para o token da esteira, definidas por job.
- Cuidado com gatilhos que rodam código de forks com acesso a segredos (por exemplo, pull_request_target em GitHub Actions): tratar entrada de PR como não confiável.
- Injeção em scripts: nunca interpolar títulos de PR, nomes de branch ou mensagens de commit direto em comandos de shell.
Runners e ambientes
Runners efêmeros (um por job, descartado ao final) evitam que um job contamine o próximo e que credenciais fiquem em disco. Runners compartilhados e de longa vida acumulam estado e viram alvo. Separe os runners que fazem deploy em produção dos que rodam testes de código externo, e restrinja a rede de saída ao necessário.
Integridade do que sai da esteira
Assinar artefatos e registrar a proveniência (quem construiu, a partir de qual commit, em qual ambiente) permite que o destino verifique que o que vai rodar é exatamente o que a esteira produziu. Frameworks como o descrevem níveis crescentes dessas garantias, e ferramentas como o cosign cuidam da assinatura de imagens.
conexões no mapa
- Infraestrutura segura como códigopassa pelaHardening de CI/CD
- Policy as codevira gateHardening de CI/CD
- Segurança como produto internopadronizaHardening de CI/CD
atualizado em 14/10/2026 · fontes para aprofundar · reportar erro
em outros domínios
- Pipelines de CI que continuam rápidosdevopsa esteira que funciona precisa ser também a esteira confiável
- Orquestração e agents paralelosvibecodingagentes autônomos exigem a mesma disciplina de runners e credenciais
- A08 Software or Data Integrity Failuresowaspo pipeline é parte do que precisa ser íntegro
- CI/CDappseca esteira vista como alvo: o mesmo pipeline, agora endurecido
- Secrets - cofres e rotaçãocloudsecOIDC no lugar de segredos estáticos na esteira
Estude antes
Desbloqueia
teste o que entendeu
Carregando perguntas…