Mais 123% CVE comunicadas por dia em 2026 do que no ano passado.

Comparação

CRACI e Chainguard

O Chainguard reforça o que entra no seu build: imagens de contentor, bibliotecas de linguagens e GitHub Actions. O CRACI protege e regista o próprio build. Um limpa as entradas, o outro regista o que lhes aconteceu.

Atualizado a

A resposta curta

O Chainguard compila software open source a partir do código-fonte e fornece-o reforçado: imagens de contentor mínimas com poucas ou nenhumas vulnerabilidades conhecidas, bibliotecas de linguagens recompiladas, imagens de VM e GitHub Actions reforçadas, cada uma com uma SBOM assinada e proveniência. Se o seu problema é que as imagens base e os pacotes de que parte têm demasiados CVE, o Chainguard ataca-o diretamente.

O CRACI é um runner de CI para GitHub Actions. Os seus jobs são executados nele e, enquanto correm, regista todas as dependências externas que obtêm e aplica uma política de egress. O Chainguard protege as entradas. O CRACI protege e regista o build. Há muito pouca sobreposição, e os dois encaixam naturalmente.

Visão geral

Funcionalidade CRACI Chainguard
Executa os seus builds Os jobs correm em runners do CRACI Fornece as imagens e bibliotecas que os builds usam
Regista o que o seu build obteve Descargas observadas, incluindo pacotes de caches de CI As SBOM descrevem os artefactos do próprio Chainguard
Política de egress de rede do build Negação ou permissão por defeito, falha em modo fechado Fora do âmbito: não executa builds
SBOM Para os seus artefactos, por build, com completude indicada SBOM SPDX assinada com cada imagem de contentor
Proveniência assinada Sem proveniência assinada Proveniência SLSA nas imagens e bibliotecas do Chainguard
Acompanhamento de vulnerabilidades As SBOM monitorizadas são reavaliadas Avisos e novos builds para artefactos do Chainguard
Imagens de contentor reforçadas e mínimas Catálogo de imagens zero-CVE, compiladas a partir do código-fonte
Bibliotecas recompiladas a partir do código-fonte Java, Python e JavaScript
SLA de correção de CVE 7 dias para críticos, 14 dias para outras gravidades
GitHub Actions reforçadas Chainguard Actions, compiladas a partir do código-fonte
Preço $0.002 por vCPU-minuto ($0.004 com 2 vCPU), medido ao segundo; sem mensalidade e sem custo por SBOM Até cinco imagens de contentor gratuitas; catálogo a partir de $19K para uma equipa de 10, preço por imagem sob orçamento (em setembro de 2026).
  • Incluído
  • Não incluído

O que o Chainguard faz bem

A página inicial de Chainguard
chainguard.dev

O Chainguard Containers é, nas palavras do Chainguard, um catálogo de imagens de contentor zero-CVE, compiladas a partir do código-fonte. Cada imagem inclui uma atestação de SBOM assinada em formato SPDX e uma atestação de proveniência SLSA 1.0 que descreve o ambiente de build, tudo verificável com o cosign. Os clientes também podem obter SBOM CycloneDX em builds mais recentes.

A política de CVE é concreta. Para clientes com uma encomenda, o Chainguard compromete-se a corrigir CVE críticos no prazo de 7 dias de calendário e CVE altos, médios e baixos no prazo de 14 dias de calendário a contar da disponibilização pública de um patch elegível, para as linhas de versões suportadas das imagens Chainguard.

O Chainguard Libraries segue a mesma abordagem para pacotes de linguagens. É um catálogo de dependências Java, Python e JavaScript recompiladas a partir de código-fonte verificado, em vez de descarregadas como artefactos pré-compilados, fornecido como upstream para JFrog Artifactory, Sonatype Nexus Repository ou Cloudsmith. Cada pacote inclui assinaturas Sigstore, uma SBOM assinada e proveniência SLSA Level 3. O Chainguard Actions oferece versões reforçadas de GitHub Actions populares, compiladas a partir do código-fonte e analisadas continuamente, e o Chainguard VMs aplica o modelo a imagens de máquinas virtuais.

O CRACI não produz imagens nem bibliotecas reforçadas e não faz qualquer promessa sobre o número de CVE de tudo o que os seus builds descarregam. Essa é a função do Chainguard.

Onde o CRACI é diferente

Observa o seu build, não o do Chainguard

As SBOM e a proveniência do Chainguard descrevem os artefactos do Chainguard, compilados na fábrica do Chainguard. O seu build continua a correr algures, e obtém mais do que uma imagem base: as suas próprias dependências, toolchains, ferramentas obtidas por scripts de instalação e tudo o que um passo do workflow descarregar. É isso que o CRACI regista. Um proxy que reconhece pacotes no runner observa o tráfego para fontes de pacotes npm, PyPI, RubyGems, Cargo, Go, Nix, OCI, apt, apk e Git. As evidências acompanham as caches de CI, e cada SBOM indica a sua completude por job e por cache: Complete, Complete with connections, Incomplete, Unavailable ou Not recorded.

Limita o que o build pode alcançar

As entradas reforçadas só ajudam se o build as usar realmente. A política de egress do CRACI é de negação ou de permissão por defeito, com 24 predefinições integradas de fontes de software e fontes personalizadas tipadas para registos, incluindo registos OCI e Git. As políticas são validadas antes de o job arrancar e falham em modo fechado. Uma política que permite o seu registo do Chainguard e o seu repositório de artefactos, e pouco mais, transforma "usamos o Chainguard" de uma convenção em algo que o runner impõe.

Continua a vigiar o que distribuiu

A API devolve SBOM, traços de rede e proveniência. O CRACI continua a reavaliar as SBOM monitorizadas face a novas vulnerabilidades. As SBOM são exportadas em CycloneDX ou SPDX, incluindo vulnerabilidades.

Um inventário do que está implementado e onde

A vista de inventário do CRACI mostra exatamente que versões de software estão implementadas em que produtos, a nível global. Quando surge uma nova vulnerabilidade, pode ver que produtos executam a versão afetada, em vez de o reconstituir a partir de notas de versão e folhas de cálculo.

Usá-los em conjunto

Uma configuração típica:

  • O Chainguard fornece imagens base e, através do seu repositório de artefactos, bibliotecas recompiladas.
  • O CRACI executa os jobs de GitHub Actions que as usam, com uma política de egress que permite as suas fontes aprovadas, e regista o que cada job obteve.

O OCI está entre os ecossistemas que o CRACI deteta, e o CRACI funciona com mirrors JFrog Artifactory para npm e PyPI, pelo que as imagens e os pacotes Python ou JavaScript que chegam dessa forma fazem parte do registo do build. O suporte para Maven, que cobre o Chainguard Libraries para Java, está no roadmap.

Qual escolher

  • Os scanners continuam a assinalar CVE nas suas imagens base: o Chainguard substitui essas imagens por imagens reforçadas.
  • Precisa de evidências do que entrou em cada versão: o CRACI regista-o a partir do build.
  • Quer builds que só consigam alcançar fontes aprovadas: a política de egress do CRACI impõe-no no runner.
  • Quer entradas limpas e um build registado: use-os em conjunto, como acima.

Para o Cyber Resilience Act

Partir de componentes com poucas vulnerabilidades conhecidas, um SLA de correção documentado e SBOM assinadas facilita o tratamento de vulnerabilidades de um fabricante. O Chainguard ajuda nisso. O CRACI automatiza uma parte significativa da visibilidade da cadeia de abastecimento de software e das evidências de que as empresas precisam para o seu processo mais amplo de conformidade com o CRA: o que entrou em cada versão e o acompanhamento contínuo de vulnerabilidades. Nenhum dos dois torna um produto conforme por si só. Consulte o que é o CRA e a conformidade com o CRA.

Adicionar o CRACI a uma configuração com Chainguard

Instale a GitHub App do CRACI e mude runs-on para craci nos workflows que pretende registar. Os seus Dockerfiles e a configuração de pacotes ficam como estão. O CRACI suporta hoje GitHub Actions; GitLab CI, Jenkins e outros sistemas de CI estão no roadmap. Saiba mais sobre a geração de SBOM durante o build e a integração com CI/CD.

Compile sobre entradas limpas e prove-o

Execute num runner do CRACI um workflow de GitHub Actions que use as suas imagens Chainguard e veja o registo que deixa.

Marcar demo