Atestação de proveniência
O que é Atestação de proveniência?
Atestação de proveniênciaDeclaração assinada e verificável por máquina que descreve como um artefacto de software foi produzido - fonte, sistema de build, parâmetros e dependências - para os consumidores confiarem na sua origem.
Uma atestação de proveniência responde a "de onde veio este artefacto?" com evidência criptográfica em vez de confiança por convenção. Formatos padrão incluem atestações in-toto e o SLSA Provenance v1, que captam o commit do repositório de origem, a plataforma de build, a receita, materiais e timestamps, assinados pelo builder. Os consumidores verificam as atestações contra uma política: identidade do builder confiável, repositórios permitidos, workflow esperado, nível SLSA, etc. Ferramentas como Sigstore Cosign, GitHub Actions, Tekton Chains, GitLab CI e plataformas de build alinhadas com SLSA geram atestações automaticamente. A proveniência é um controlo chave para detetar binários adulterados e cumprir exigências regulatórias como a EO 14028 nos EUA e o Cyber Resilience Act na UE.
● Exemplos
- 01
SLSA Provenance v1 produzida por um reusable workflow do GitHub e verificada no deploy.
- 02
Política Kyverno que exige proveniência de builder confiável em cada imagem de contentor.
● Perguntas frequentes
O que é Atestação de proveniência?
Declaração assinada e verificável por máquina que descreve como um artefacto de software foi produzido - fonte, sistema de build, parâmetros e dependências - para os consumidores confiarem na sua origem. Pertence à categoria Segurança de aplicações da cibersegurança.
O que significa Atestação de proveniência?
Declaração assinada e verificável por máquina que descreve como um artefacto de software foi produzido - fonte, sistema de build, parâmetros e dependências - para os consumidores confiarem na sua origem.
Como funciona Atestação de proveniência?
Uma atestação de proveniência responde a "de onde veio este artefacto?" com evidência criptográfica em vez de confiança por convenção. Formatos padrão incluem atestações in-toto e o SLSA Provenance v1, que captam o commit do repositório de origem, a plataforma de build, a receita, materiais e timestamps, assinados pelo builder. Os consumidores verificam as atestações contra uma política: identidade do builder confiável, repositórios permitidos, workflow esperado, nível SLSA, etc. Ferramentas como Sigstore Cosign, GitHub Actions, Tekton Chains, GitLab CI e plataformas de build alinhadas com SLSA geram atestações automaticamente. A proveniência é um controlo chave para detetar binários adulterados e cumprir exigências regulatórias como a EO 14028 nos EUA e o Cyber Resilience Act na UE.
Como se defender contra Atestação de proveniência?
As defesas contra Atestação de proveniência costumam combinar controles técnicos e práticas operacionais, conforme detalhado na definição acima.
Quais são outros nomes para Atestação de proveniência?
Nomes alternativos comuns: Proveniência SLSA, Proveniência de build.
● Termos relacionados
- appsec№ 1053
SLSA Framework
Supply-chain Levels for Software Artifacts: conjunto escalonado de requisitos publicado pelo OpenSSF que endurece progressivamente a forma como o software é construído, assinado e verificado contra manipulação da cadeia de fornecimento.
- appsec№ 522
in-toto
Framework aberto que atesta criptograficamente cada passo de uma cadeia de fornecimento de software, permitindo aos consumidores verificar que o artefacto foi construído e manuseado exatamente como o dono do projeto pretendia.
- appsec№ 1044
Sigstore
Projeto open source da Linux Foundation que facilita assinar, verificar e proteger artefactos de software combinando chaves efémeras, identidades OIDC e um registo de transparência.
- appsec№ 226
Cosign
CLI open source do projeto Sigstore para assinar, verificar e atestar artefactos OCI e outros softwares, em modo com ou sem chaves de longa duração.
- appsec№ 1069
Segurança da cadeia de fornecimento de software
Disciplina que protege cada elo da produção de software - código-fonte, dependências, build, assinatura, distribuição e deploy - contra manipulação, código malicioso e perda de integridade.
- appsec№ 921
Builds reprodutíveis
Práticas de build que garantem que compilar o mesmo código-fonte com as mesmas instruções produz um artefacto idêntico bit a bit, independentemente de quando ou onde é construído.