verifying-build-provenance-with-slsa-sigstore
Ajuda seu agente a verificar a origem e a segurança de códigos e arquivos. Garante que o que está sendo usado é confiável e veio de onde deveria.
O que ela faz
Verifica se um programa ou arquivo foi criado de forma segura pela fonte esperada, usando ferramentas chamadas cosign e slsa-verifier. Isso ajuda a garantir que o software não foi modificado por pessoas mal-intencionadas.
Quando usar
- ✓Antes de instalar ou usar um programa baixado da internet.
- ✓Ao usar componentes de software criados por outras pessoas.
- ✓Para ter certeza de que o processo de criação do seu próprio software é seguro.
Exemplo do que pedir para a IA
“Verifique se o programa 'meu_app' foi criado pelo repositório 'meu_github/meu_projeto' na versão 'v1.0'.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
As ferramentas cosign e slsa-verifier verificam assinaturas digitais e informações de origem (proveniência). Elas se conectam a serviços seguros para confirmar se quem disse ter criado o arquivo realmente o fez, e se ele veio do lugar certo.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill verifying-build-provenance-with-slsa-sigstoreOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/verifying-build-provenance-with-slsa-sigstore/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Verificando a Proveniência de Builds com SLSA e Sigstore
Visão Geral
A verificação de proveniência de builds responde a uma pergunta que derrota muitos ataques à cadeia de suprimentos: este artefato foi realmente construído a partir do código-fonte que eu penso que foi, pelo construtor em que confio, sem adulteração? Atacantes que comprometem um sistema de build, trocam uma versão compilada ou injetam uma etapa maliciosa (como nos incidentes SolarWinds e 3CX) produzem artefatos que parecem legítimos, mas carecem de proveniência verificável. SLSA (Supply-chain Levels for Software Artifacts, https://slsa.dev) define Níveis de Build (L1–L3) descrevendo integridade crescente de proveniência, e Sigstore (https://www.sigstore.dev) fornece a infraestrutura de assinatura e transparência: cosign para assinar/verificar artefatos e atestações, Fulcio para certificados sem chave de curta duração vinculados a uma identidade OIDC, e Rekor como um log de transparência à prova de adulteração.
Esta habilidade abrange a verificação de assinaturas e proveniência SLSA com cosign (cosign verify, cosign verify-attestation, cosign verify-blob-attestation) e slsa-verifier (slsa-verifier verify-artifact), aplicando a identidade do construtor (o fluxo de trabalho do GitHub Actions que produziu o artefato) e o repositório de origem esperado. A verificação sem chave vincula a confiança a um emissor OIDC (por exemplo, https://token.actions.githubusercontent.com) e a uma identidade de certificado em vez de uma chave privada de longa duração.
Isso se mapeia para o MITRE ATT&CK T1195 — Supply Chain Compromise (a verificação de proveniência detecta/bloqueia artefatos adulterados) e o NIST CSF PR.DS-01 (a confidencialidade, integridade e disponibilidade dos dados em repouso são protegidas; o CSF 2.0 absorveu o resultado de verificação de integridade PR.DS-06, agora aposentado, aqui).
Quando Usar
- Em CI/CD antes de implantar ou promover qualquer imagem de contêiner ou binário de release.
- Ao consumir artefatos de terceiros (imagens base, releases Go/npm) que publicam atestações.
- Ao estabelecer um pipeline SLSA Build L3 producer e aplicá-lo no lado do consumidor.
- Durante a resposta a incidentes para confirmar se a proveniência de um artefato implantado está intacta.
- Em controle de admissão (por exemplo, Kubernetes via policy-controller / Kyverno) para admitir apenas imagens verificadas.
Pré-requisitos
- cosign (Sigstore CLI):
go install github.com/sigstore/cosign/v2/cmd/cosign@latest # or download a release binary from https://github.com/sigstore/cosign/releases - slsa-verifier:
go install github.com/slsa-framework/slsa-verifier/v2/cli/slsa-verifier@latest # or: curl -sSL https://github.com/slsa-framework/slsa-verifier/releases/latest/download/slsa-verifier-linux-amd64 \ -o /usr/local/bin/slsa-verifier && chmod +x /usr/local/bin/slsa-verifier - Acesso à rede ao Rekor (
https://rekor.sigstore.dev) e Fulcio para verificação do log de transparência. - O artefato mais seu pacote de proveniência/atestação (
.sigstore,.intoto.jsonl, ou atestação OCI anexada).
Objetivos
- Verificar uma assinatura cosign sem chave em uma imagem de contêiner, fixando o emissor OIDC e a identidade do certificado.
- Verificar uma atestação de proveniência SLSA em uma imagem com
cosign verify-attestation --type slsaprovenance. - Verificar a proveniência de um binário de release com
slsa-verifier verify-artifact, fixando o repositório de origem e a tag. - Verificar atestações de artefatos do GitHub / pacotes de blob com
cosign verify-blob-attestation. - Controlar CI e controle de admissão com base em verificação bem-sucedida; entender SLSA Build L1–L3.
Mapeamento MITRE ATT&CK
| ID | Tática | Nome da Técnica | Relevância |
|---|---|---|---|
| T1195 | Acesso Inicial | Supply Chain Compromise | A verificação de proveniência e assinaturas detecta artefatos que foram adulterados ou substituídos na cadeia de build/distribuição, impedindo que a comprometimento da cadeia de suprimentos chegue à implantação. |
Fluxo de Trabalho
Etapa 1: Verificar uma assinatura cosign sem chave em uma imagem
Fixe tanto o emissor OIDC quanto a identidade do certificado (o fluxo de trabalho exato que assinou). Um cosign verify simples sem fixação de identidade é sem sentido — qualquer um pode assinar.
cosign verify \
--certificate-oidc-issuer "https://token.actions.githubusercontent.com" \
--certificate-identity-regexp "^https://github.com/myorg/myrepo/.github/workflows/.*@refs/tags/v.*" \
ghcr.io/myorg/myrepo:v1.2.3
Uma saída diferente de zero ou um resultado vazio significa que a verificação falhou — não implante.
Etapa 2: Verificar a atestação de proveniência SLSA na imagem
…
Perguntas frequentes
O que é 'proveniência'?
Proveniência é como um histórico que mostra quem criou um arquivo, quando e como ele foi feito. É uma garantia de que o arquivo é autêntico.
O que são 'cosign' e 'slsa-verifier'?
São ferramentas de linha de comando que ajudam a verificar a proveniência e as assinaturas de arquivos de software. Elas usam tecnologias como Sigstore para garantir a segurança.
Por que é importante verificar a proveniência?
Para evitar ataques de cadeia de suprimentos, onde um atacante substitui um software legítimo por uma versão maliciosa. Verificar a proveniência garante que você está usando o software correto e confiável.
Detalhes
Descrição original do autor
Verifies artifact signatures and SLSA provenance using Sigstore's cosign (verify, verify-attestation, verify-blob-attestation) and slsa-verifier (verify-artifact), enforcing keyless OIDC builder identity and source repo against SLSA Build levels. Use in CI/CD before deploying artifacts, when consuming third-party attestations, establishing a SLSA Build L3 pipeline, or confirming provenance during
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #6245
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
bun-runtime
Faz seu agente usar o Bun para rodar, organizar e testar código. Ajuda a escolher o Bun em vez de outras ferramentas e a migrar projetos existentes.
affaan-m/ECC
database-migrations
Ajuda seu agente a fazer mudanças seguras em bancos de dados. Ele garante que as alterações possam ser desfeitas e minimiza o tempo de inatividade.
affaan-m/ECC
deployment-patterns
Configura fluxos de implantação e CI/CD, containerização e estratégias de rollback para garantir lançamentos seguros.
affaan-m/ECC