GitHub Artifact Attestations: garantindo seu pipeline CI/CD sem atrito

O que está acontecendo

O GitHub está incorporando Artifact Attestations como parte de seus workflows no GitHub Actions, permitindo verificar a origem e a integridade dos artefatos gerados em um pipeline.

Isso significa que agora você pode demonstrar, de forma verificável, que um build foi gerado por um workflow específico, em um commit concreto, e não foi manipulado.

Por que isso importa

A maioria dos ataques recentes em software não ocorrem no código-fonte, mas na cadeia de suprimentos.

O problema:

  • alguém compromete um pipeline
  • ou introduz código malicioso no processo de build
  • e o artefato final parece legítimo

Artifact Attestations atacam diretamente esse problema.

O que é uma attestation (sem fumaça)

Uma attestation é basicamente um registro assinado que diz:

  • o que foi construído
  • como foi construído
  • onde foi construído
  • com qual código-fonte

E faz isso de forma verificável criptograficamente.

Como funciona na prática

O GitHub gera automaticamente metadados do build e os assina.

Depois você pode:

  • verificar o artefato antes do deploy
  • comprovar que provém do seu workflow
  • detectar manipulações

Exemplo básico no GitHub Actions

name: Build and attest

on: [push]

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v4

      - name: Build
        run: npm install && npm run build

      - name: Generate artifact attestation
        uses: actions/attest-build-provenance@v1
        with:
          subject-path: 'dist/**'

Este passo gera uma attestation para os artefatos construídos.

Como verificar um artefato

Você pode usar ferramentas como cosign:

cosign verify-attestation \
  --type slsaprovenance \
  <image-or-artifact>

Isso permite validar que o artefato coincide com o processo de build esperado.

Casos de uso reais

1. Deploy seguro

Antes de fazer o deploy:

  • você verifica a attestation
  • confirma a origem
  • reduz o risco de artefatos comprometidos

2. Open source

Permite aos usuários verificar que os binários publicados coincidem com o código do repo.

3. Auditoria

Você pode demonstrar como um artefato foi gerado em um ambiente regulado.

Vantagens

  • Você não precisa de infraestrutura adicional
  • Integrado no GitHub Actions
  • Baseado em padrões (SLSA)
  • Baixo esforço de adoção

Limitações

  • Apenas cobre o que ocorre dentro do pipeline
  • Não substitui revisão de código
  • Requer disciplina na verificação

O que você deveria fazer agora

  • Adicionar attestations aos seus pipelines críticos
  • Verificar artefatos antes do deploy
  • Revisar permissões de workflows

Por que isso importa na LATAM

Muitos equipes não têm recursos para soluções complexas de supply chain security.

Isso permite melhorar a segurança com o que já estão usando.

Conclusão

Artifact Attestations não são uma melhoria incremental.

São uma mudança na forma como você valida confiança no seu software.

E pela primeira vez, é algo que você pode adotar hoje sem mudar seu stack.