124% más CVE notificadas al día en 2026 que el año pasado.

Ciberresiliencia automatizada para desarrolladores y agentes

Convierta cada build en su primera línea de defensa.

Sitúe la seguridad de la cadena de suministro en el centro de su software con runners rápidos y fiables que cuestan menos.

  • Runners seguros
  • SBOM generadas durante el build
  • Monitorización de vulnerabilidades
  • Respuesta a vulnerabilidades
  • 185 paquetes registrados
  • 6 conexiones rechazadas
  • SBOM completa
  • Corregido en v2.4.1
  1. Build

    northwind-controls/web-portal

    release.yml #1843 · 5d08e3b
    runs-on: craci
    size 2 · x86-64

  2. Paquetes

    185 paquetes registrados

    • next 15.2.2
    • react 19.0.0
    • react-dom 19.0.0
    • express 4.21.2
    • tailwindcss 4.0.14
    • typescript 5.8.2
  3. Control de política
    Build #1843 detenido

    CVE-2025-29927 · Critical

    Build #1844 superado

    Corregido en next 15.2.3

  4. Artefacto publicado

    ghcr.io/northwind-controls/web-portal:2.4.1

    sha256:e2b9…5c07

    Publicado como v2.4.1

Equipos que construyen con CRACI

  • Fluencify
  • Homie
  • Bahn Express
  • Hamina Wireless
  • ConfidentialMind
  • Propia

Las vulnerabilidades llegan más rápido que cualquier corrección.

A los atacantes les basta con una vía de entrada, y los agentes les ayudan a encontrarla más rápido que nunca. Su equipo tiene que cerrar cada brecha, casi siempre a mano.

2026 hasta ahora

CVE publicadas al día
293
Una cada 5 minutos, de media.
Más al día que el año anterior
+124%
Frente a la media diaria de 2025.
Con calificación High o Critical, cada día
148
Según su puntuación CVSS.
CVE publicadas al día, por año
AñoCVE al díaHigh o Critical al día
2020 39 7
2021 54 12
2022 68 20
2023 78 28
2024 109 48
2025 131 54
2026 hasta ahora 293 148
Según la lista pública de CVE, actualizada a diario. Elija un año para comparar. Leer el informe sobre CVE

Por qué ahora

  1. Las alertas se han convertido en ruido.

    Cuando cientos de hallazgos son urgentes, ninguno lo es. Los equipos dejan de gestionar el riesgo y se ponen a contar alertas.

  2. El volumen supera a cualquier equipo.

    La clasificación y las correcciones se siguen haciendo a mano. Con este volumen, contratar a más personas no cierra la brecha.

  3. Las correcciones compiten con las funciones.

    A los equipos de producto se les mide por las funciones que entregan, así que el trabajo de seguridad espera un sprint tranquilo que nunca llega.

  4. Los escáneres solo hacen estimaciones.

    Una lista deducida de los archivos después del build pasa por alto lo que entró realmente, y la falsa confianza hace que nadie siga buscando.

Su software toma forma durante el build.

Su lockfile fija lo que debería instalarse. El build decide lo que llega realmente. CRACI registra cada paquete a medida que entra, con la versión resuelta, su procedencia y si se restauró desde una caché de CI.

package-lock.json Lo que usted fijó
"packages": {
  …
  
  
  
  
  
  …
}
Solo enumera versiones, no de dónde vino cada paquete ni cómo entró.
Registro del build #1842 185 paquetes registrados
Paquetes registrados durante el build de ejemplo #1842 de northwind-controls/web-portal, agrupados según cómo entraron en el build.
Paquete Resuelto Entró vía Fuente
Vía package.json
express vía package.json 4.21.2 package.json registry.npmjs.org
next vía package.json
Ahora afectado por CVE-2025-29927 · Critical
15.2.2 package.json registry.npmjs.org
react vía package.json · desde la caché de CI 19.0.0 package.json Caché de CI
react-dom vía package.json · desde la caché de CI 19.0.0 package.json Caché de CI
styled-jsx vía next 5.1.6 next registry.npmjs.org
Vía script de build
tailwindcss vía script de build 4.0.14 script de build registry.npmjs.org
typescript vía script de build 5.8.2 script de build registry.npmjs.org
y 178 paquetes registrados más
185 paquetes registrados · 2 restaurados desde la caché

Proteja el build. Registre sus dependencias.

Sus jobs se ejecutan en runners de CRACI en lugar de en los alojados por GitHub, el doble de rápido. Cada paquete que descargan se registra con su versión, su fuente y su licencia. Todo lo que procede de una fuente ajena a su política se rechaza.

Secure Build Service

Cada job se ejecuta en su propia máquina virtual aislada, tras una política de salida que se comprueba antes de que empiece el job.

  • VM aislada
  • Salida denegada por defecto
  • Falla en modo cerrado
  • Alerta ante infracciones

Package Analytics

Un proxy que entiende de paquetes registra cada paquete que descarga un job, con su versión resuelta, su fuente y su licencia declarada.

  • npm
  • PyPI
  • RubyGems
  • Cargo
  • Go
  • Nix
  • OCI
  • Yocto
  • y más
Evento de política Build #1842
  1. time2025-03-14 09:13:07 UTC
  2. jobrelease.yml #1842
  3. stepnpm run build
  4. policyDefault deny. Allowed: npm, GitHub, ghcr.io, Docker Hub, example.com
  5. denied malicious.example:443
  6. reasonEl host no está en la política
  7. actionBloqueado en el runner
Conexión rechazada. Alerta enviada.
Grafo de dependencias v2.4.0
Grafo de dependencias de web-portal v2.4.0 web-portal depende directamente de next 15.2.2, react y express, entre otros. next incorpora styled-jsx y @swc/helpers. El script de build del ejemplo también descarga tailwindcss y typescript. web-portal next 15.2.2 react express styled-jsx @swc/helpers herramientas de build tailwindcss typescript

Extracto de la SBOM CycloneDX 1.7 · JSON
{
  "bomFormat": "CycloneDX",
  "specVersion": "1.7",
  …
  "components": [{
    "name": "next",
    "version": "15.2.2",
    "purl": "pkg:npm/[email protected]",
    "licenses": [
      { "license": { "id": "MIT" } }
    ]
  }, …]
}
Se exporta en CycloneDX o SPDX, con dependencias transitivas y vulnerabilidades incluidas.

CRACI ve el tráfico que los escáneres no ven.

Otras herramientas de SBOM leen el lockfile o el resultado del build y deducen lo que se incluyó. CRACI ve lo que entra realmente en cada build, incluidas las dependencias ocultas que descargan los hooks durante el build, los scripts de build y las imágenes base.

Escáner

Escáner de la competencia

Método
Lee package-lock.json
Cuándo
Después del build
Ve
Lo que enumera el lockfile
SBOM que un escáner elabora a partir del lockfile del build de ejemplo #1842.
Paquete Versión Licencia Encontrado en
next pkg:npm/[email protected] 15.2.2 MIT package-lock.json
react pkg:npm/[email protected] 19.0.0 MIT package-lock.json
react-dom pkg:npm/[email protected] 19.0.0 MIT package-lock.json
express pkg:npm/[email protected] 4.21.2 MIT package-lock.json
styled-jsx pkg:npm/[email protected] 5.1.6 MIT package-lock.json
No figura en ningún lockfile, así que tampoco en la SBOM
No figura en ningún lockfile, así que tampoco en la SBOM
No figura en ningún lockfile, así que tampoco en la SBOM

142 paquetes enumerados 43 ausentes

SBOM registrada

Método
Ve el tráfico del build
Cuándo
Durante el build
Ve
Lo que descargó el build
SBOM que CRACI registra a partir del tráfico del build de ejemplo #1842.
Paquete Versión Licencia Descargado de
next pkg:npm/[email protected] 15.2.2 MIT registry.npmjs.org
react pkg:npm/[email protected] 19.0.0 MIT registry.npmjs.org
react-dom pkg:npm/[email protected] 19.0.0 MIT registry.npmjs.org
express pkg:npm/[email protected] 4.21.2 MIT registry.npmjs.org
styled-jsx pkg:npm/[email protected] 5.1.6 MIT registry.npmjs.org

185 paquetes registrados 43 más de los que muestra el lockfile

Build de ejemplo. Cómo funcionan las SBOM generadas durante el build

Localice las posibles vulnerabilidades en las versiones exactas.

CRACI comprueba de forma continua las SBOM registradas en busca de nuevas vulnerabilidades. En este ejemplo ilustrativo, se divulga una vulnerabilidad crítica 7 días después del lanzamiento. Siga el registro del build desde el paquete afectado hasta la corrección del equipo.

Paso 1 de 4

Se divulga CVE-2025-29927

next es una dependencia directa, y el build #1842 registró la versión exacta.

Gravedad
Critical 9.1
Paquete
next
Afectado
15.0.0 a 15.2.2
Corregido en
15.2.3

Paso 2 de 4

Una versión está afectada

CRACI la coteja con la SBOM registrada.

Versión
web-portal v2.4.0
Coincidencia
next 15.2.2, dependencia directa
SBOM
Complete

Paso 3 de 4

Se distribuyó como esta imagen

La versión, su imagen y su SBOM permanecen juntas.

Imagen
ghcr.io/northwind-controls/web-portal:2.4.0
Versión
v2.4.0
SBOM
En seguimiento

Paso 4 de 4

La corrección tiene un responsable

Clasifíquela, asígnela y sígala hasta una versión corregida.

Responsable
Equipo de plataforma
Acción
Actualizar next a 15.2.3 y volver a compilar
Corregido en
web-portal v2.4.1, 2025-03-22

Responda a cada auditor con pruebas.

Cada build deja evidencias: SBOM, registros de vulnerabilidades y cómo llegó cada corrección a una versión. Utilícelas en sus procesos de CRA, NIS2, ISO 27001 y SOC 2, para que la pregunta de un auditor se resuelva con una descarga y no con un proyecto.

Composición
Una SBOM generada durante el build para cada versión.
  • CycloneDX
  • SPDX
  • Dependencias transitivas
  • Vulnerabilidades
  • Licencias declaradas
Gestión de vulnerabilidades
Las SBOM registradas se reevalúan de forma continua.
  • Clasificación
  • Corrección
  • Junto a la versión
Notificación
CRACI presenta las notificaciones en su nombre.
  • Alerta temprana
  • Notificación
  • Informe final

Cyber Resilience Act

  1. Se aplican las obligaciones de notificación
  2. El reglamento se aplica en su totalidad
Leer la guía del CRA

Notificación de vulnerabilidad Extracto

web-portal v2.4.0

northwind-controls/web-portal · build #1842

SBOM
CycloneDX · Complete
Build
#1842 · commit 9f3c2e1
Vulnerabilidad
CVE-2025-29927 · Critical
Componente
next 15.2.2
Se notifica a
CSIRT y ENISA, a través de la plataforma única de notificación del CRA

Cronología de la gestión

  1. Versión compilada y SBOM registrada
  2. Aviso publicado y cotejado con esta versión
  3. Clasificada por Seguridad de producto, asignada a Equipo de plataforma
  4. v2.4.1 publicada con next 15.2.3

La SBOM se exporta en CycloneDX o SPDX

Ejecute su primer build en 5 minutos.

En esta demo llevamos un sitio de TanStack Start desde el registro hasta su primera ejecución en CRACI. Conectamos GitHub, dirigimos los jobs con runs-on: craci y observamos la primera ejecución. CRACI registra cada dependencia externa que descarga el build, señala las vulnerabilidades conocidas y rastrea cada una hasta el job que la introdujo.

From sign-up to your first build on CRACI

CRACI en YouTube: CRACI demo.

Vea cómo encaja CRACI en su flujo de entrega.

CRACI sustituye el runner, no GitHub Actions. Sus workflows, revisiones y pasos de despliegue siguen como están.

  1. Conecte la GitHub App

    En todos los repositorios o solo en los que elija.

  2. Cambie su runner

    Indique runs-on: craci en el workflow. No cambia nada más.

  3. Ejecute su próximo build

    Las ejecuciones siguen apareciendo en GitHub. El registro del build y la SBOM aparecen en CRACI.

Runners
Runners Linux gestionados en x86-64 y ARM64, sobre infraestructura europea.
Builds
Docker Engine, Buildx y Compose v2. Los builds de Yocto y BitBake están documentados.
Su código y sus datos
CRACI procesa el código fuente durante el build y no lo almacena. Los datos de los builds se alojan en Europa. El contenido de la caché depende de lo que guarden sus workflows. Lea la página de seguridad.
En la hoja de ruta
GitLab, Jenkins y otros sistemas de CI, runners de Windows y macOS, runners on-premise, Maven y Java.

Lo que preguntan los equipos antes de una demo

Compatibilidad, configuración, seguridad y tratamiento de datos.

¿Qué entornos de CI y ecosistemas de paquetes son compatibles?

GitHub Actions es hoy la integración de CI compatible, y otros sistemas de CI están en la hoja de ruta. CRACI registra los paquetes de los registros de npm, PyPI, RubyGems, Cargo, Go, Nix y OCI y de los repositorios de paquetes de Debian, Ubuntu y Alpine, además de las descargas de Git y otras fuentes. Maven y Java están en la hoja de ruta. Los runners son Linux en x86-64 y ARM64.

¿Qué hace falta para configurarlo?

Usted conecta la GitHub App de CRACI en todos los repositorios o en los que elija, e indica runs-on: craci en su workflow. CRACI sustituye el runner, no GitHub Actions, así que sus ejecuciones siguen apareciendo en GitHub.

¿A qué datos accede CRACI y dónde se almacenan?

La GitHub App lee su código y sus ejecuciones de Actions, y gestiona los runners que registra para su organización. CRACI procesa el código fuente durante el build y no lo almacena. Los datos de los builds, incluidos metadatos, datos de paquetes, trazas de red, SBOM, procedencia, cachés y registros de auditoría, se alojan en Europa, con retención personalizada en Enterprise. El contenido de la caché depende de lo que guarden sus workflows. Más información sobre seguridad y tratamiento de datos.

¿CRACI bloquea o alerta? ¿Qué ocurre con un build que incumple una política?

La política de salida se aplica en el runner. Se valida antes de que empiece el job y falla en modo cerrado, de modo que una conexión fuera de la política se rechaza y usted recibe una alerta. Los controles de política también pueden detener un build en tiempo real.

¿En qué formatos puedo exportar?

Las SBOM se exportan en CycloneDX o SPDX, con las dependencias transitivas, las vulnerabilidades y las licencias declaradas.

¿Qué está disponible hoy y qué está en la hoja de ruta?

Disponible hoy: runners Linux gestionados para GitHub Actions, SBOM generadas durante el build con vulnerabilidades, política de salida, monitorización continua de vulnerabilidades con clasificación y controles de política. En la hoja de ruta: GitLab, Jenkins y otros sistemas de CI, runners de Windows y macOS, y runners on-premise.

Con el respaldo de

  • Lifeline Ventures
  • First Fellow Partners
  • Wave Ventures

Han hablado de nosotros

  • Talouselämä
  • tech.eu
  • TechFundingNews
  • Kubernetes Community Days

Vea el camino del build a la corrección.

  1. Explore las dependencias registradas durante un build.
  2. Identifique las versiones afectadas por una vulnerabilidad.
  3. Siga la respuesta desde la clasificación hasta una versión corregida.