Comparativa
Las 13 mejores herramientas de análisis de composición de software (SCA) en 2026
Las herramientas de análisis de composición de software (SCA) encuentran los componentes de código abierto de su código y señalan las vulnerabilidades conocidas y los riesgos de licencia. Aquí tiene nueve herramientas comerciales de SCA y cuatro gratuitas, en qué se diferencian y dónde encaja junto a ellas CRACI, que registra el build en lugar de escanearlo.
Actualizado el
Para quién es esta página
Esta página es para equipos que están eligiendo una herramienta de SCA o comprobando si la que tienen sigue siendo adecuada. Nosotros desarrollamos CRACI, así que téngalo en cuenta. Toda afirmación sobre otro producto procede de la propia documentación de ese proveedor, y la mayoría de los productos tienen una página más extensa de CRACI frente a X.
Una cosa por adelantado: CRACI no es un escáner de SCA en el sentido clásico. Es un registrador. Ejecuta sus jobs de GitHub Actions y registra lo que descargaron. Está pensado para estar junto a una herramienta de SCA, no para sustituirla.
Qué hacen las herramientas de SCA
Casi todas las herramientas de SCA siguen los mismos pasos. Se diferencian en lo bien que hacen cada uno. Para lo básico, consulte qué es el análisis de composición de software, cómo funciona un escaneo SCA, SAST frente a SCA y el análisis de alcanzabilidad.
- Identificar los componentes. Leen manifiestos y lockfiles, analizan el código fuente o toman huellas de binarios para enumerar las dependencias directas y transitivas.
- Cotejar las vulnerabilidades. Comprueban cada componente y versión en bases de datos como la NVD, GitHub Advisory Database y OSV.
- Comprobar las licencias con su política.
- Priorizar. Ordenan los hallazgos por gravedad, por datos de explotación como EPSS y, en muchas herramientas, por alcanzabilidad.
- Corregir. Sugieren actualizaciones o abren pull requests.
- Monitorizar e informar. Alertan de nuevas vulnerabilidades y exportan una SBOM.
El primer paso lo decide todo. Un componente que la herramienta nunca identificó no se puede cotejar, priorizar ni incluir en la SBOM, y por eso la primera fila de las tablas siguientes pregunta de dónde sale la lista de componentes de cada herramienta. Para lo básico, consulte qué es el análisis de composición de software y en qué se diferencia del SAST.
Cómo elegir
Unas pocas preguntas separan estas herramientas más rápido que las listas de funcionalidades:
- ¿Antes de la fusión o después del lanzamiento? Las herramientas de SCA destacan en las pull requests y en el IDE. Si su pregunta difícil es qué entró en una versión distribuida, necesita un registro del build.
- ¿Solo dependencias, o también su propio código? La mayoría de estos productos incluyen ya SAST. Algunos añaden secretos, IaC, contenedores o nube.
- ¿Cuánto ruido de alertas puede absorber? El análisis de alcanzabilidad, que comprueba si su código puede invocar la función vulnerable, es donde compiten varios proveedores.
- ¿Necesita detener los paquetes malos en la puerta? Los firewalls de repositorios y los proxies de paquetes los bloquean antes de la descarga. Los escáneres solo los indican después.
- ¿Qué CI utiliza? La mayoría de las herramientas de SCA de esta página encajan en muchos sistemas de CI. CRACI es compatible hoy solo con GitHub Actions, con GitLab CI y Jenkins en la hoja de ruta.
- ¿Cubre sus lenguajes y sistemas de build? Compruebe cada ecosistema que distribuye, incluidos los monorepos y las partes de su build que ningún lockfile describe.
- ¿Qué tiene que entregar? Si los clientes o el Cyber Resilience Act de la UE piden una SBOM por versión, compruebe los formatos, qué plan incluye la exportación y si la herramienta le avisa cuando la lista está incompleta.
- ¿Cómo quiere pagar? Por desarrollador, por committer, por colaborador, por plan o mediante presupuesto.
De un vistazo
Diez columnas no caben en una tabla, así que los productos se dividen en dos. Ambas tablas usan las mismas filas. «No indicado» significa que las páginas de los proveedores que citamos no dicen ni una cosa ni otra. Precios a septiembre de 2026.
Suites empresariales de SCA y AppSec
| Función | CRACI | Sonatype | Black Duck | Mend.io | Checkmarx One |
|---|---|---|---|---|---|
| Registra las dependencias durante el build | Proxy en el runner que entiende de paquetes | Escanea la salida del build | Escanea código y binarios | Escanea después del build | Archivo de código fuente subido |
| Política de egress de red en el build | Si falla, bloquea | ||||
| Procedencia firmada de artefactos | Sin procedencia firmada | No indicado | No indicado | No indicado | No indicado |
| Exportación de SBOM | Indica su completitud | ||||
| Monitorización continua | SBOM Manager | No indicado | |||
| Priorización por alcanzabilidad | |||||
| SAST para su propio código | No indicado | Coverity | Mend SAST | ||
| Análisis o política de licencias | La política de licencias puede bloquear un build | ||||
| Bloqueo de paquetes maliciosos | Listas de bloqueo de paquetes | Repository Firewall | Los señala | Los detecta | Puede bloquear builds |
| CI más allá de GitHub Actions | GitLab CI y Jenkins | ||||
| Precios | $0.002 por vCPU-minuto ($0.004 para 2 vCPU), medido por segundo; sin cuota mensual | Bajo presupuesto; Firewall Pro desde $4,800 al año | Bajo presupuesto | Hasta $1,000 por desarrollador al año | Bajo presupuesto |
- Incluido
- En parte
- No incluido
- En la hoja de ruta
Herramientas centradas en el desarrollador y de plataforma
| Función | CRACI | Snyk | Endor Labs | Semgrep | GitHub (GHAS) | Aikido |
|---|---|---|---|---|---|---|
| Registra las dependencias durante el build | Proxy en el runner que entiende de paquetes | Manifiestos y lockfiles | Analiza el código fuente | Lee las dependencias del código | Manifiestos y datos enviados | Manifiestos y lockfiles |
| Política de egress de red en el build | Si falla, bloquea | |||||
| Procedencia firmada de artefactos | Sin procedencia firmada | No indicado | endorctl | No indicado | Artifact attestations | No indicado |
| Exportación de SBOM | Indica su completitud | Solo planes Enterprise | CycloneDX | SPDX | ||
| Monitorización continua | No indicado | Alertas de Dependabot | No indicado | |||
| Priorización por alcanzabilidad | A nivel de función | No indicado | ||||
| SAST para su propio código | Snyk Code | AI SAST | Semgrep Code | CodeQL | ||
| Análisis o política de licencias | La política de licencias puede bloquear un build | No indicado | No indicado | |||
| Bloqueo de paquetes maliciosos | Listas de bloqueo de paquetes | No indicado | Package Firewall | Los detecta | No indicado | Safe Chain |
| CI más allá de GitHub Actions | GitLab CI y Jenkins | No indicado | ||||
| Precios | $0.002 por vCPU-minuto ($0.004 para 2 vCPU), medido por segundo; sin cuota mensual | Nivel gratuito; Team desde $25 al mes | Nivel Developer gratuito; niveles de pago a través de ventas | Gratis hasta 10 colaboradores; Teams desde $30 por colaborador al mes | $19 y $30 por committer al mes | Plan gratuito; de pago desde $350 al mes |
- Incluido
- En parte
- No incluido
- En la hoja de ruta
Las herramientas, una por una
CRACI
CRACI es un registrador, no un escáner. Sus jobs de GitHub Actions se ejecutan en runners de CRACI, y un proxy que entiende de paquetes registra lo que descarga cada job, y la evidencia de dependencias viaja con las cachés de CI. A partir de ese registro produce una SBOM en CycloneDX o SPDX que indica su propia completitud, sigue reevaluando las SBOM monitorizadas, envía cada hallazgo al equipo responsable de la corrección y puede bloquear un build por una licencia. Ideal para equipos que deben demostrar qué entró en cada versión. Tenga en cuenta que no ofrece SAST, escaneo de secretos ni de IaC, ni alcanzabilidad, y que hoy solo admite jobs de Linux en GitHub Actions (otros sistemas de CI, Windows y macOS están en la hoja de ruta). Generación de SBOM durante el build
Snyk
Snyk es una plataforma centrada en el desarrollador: SCA más Snyk Code (SAST), Snyk Container y Snyk IaC, que funciona en el
IDE, la CLI, las integraciones con SCM y el CI. Prioriza los hallazgos de dependencias con alcanzabilidad, madurez de los
exploits, EPSS y CVSS, y abre pull requests de actualización. Ideal para equipos que quieren que los desarrolladores
corrijan los problemas desde el editor en adelante. Tenga en cuenta que su árbol de dependencias procede de manifiestos y
lockfiles, y que el comando snyk sbom solo está disponible en los planes Enterprise.
CRACI frente a Snyk
Sonatype
Sonatype se centra en la gobernanza del código abierto. Lifecycle aplica políticas de seguridad y de licencias (sus políticas de licencias abarcan más de 2.000 licencias), usa Advanced Binary Fingerprinting sobre lo que generó el build y abre Golden Pull Requests. Repository Firewall pone en cuarentena los componentes antes de que entren en sus repositorios, y SBOM Manager monitoriza las SBOM importadas. Ideal para grandes organizaciones que quieren un control en el repositorio. Tenga en cuenta que su oferta está cambiando, y que los nuevos clientes compran ahora Sonatype Guide. CRACI frente a Sonatype
Black Duck
Black Duck encuentra el código abierto dondequiera que se esconda: escaneos de gestores de paquetes, escaneo de firmas y de fragmentos, y análisis binario de ejecutables y firmware sin código fuente. Su KnowledgeBase sigue más de 2.750 licencias, y Coverity añade SAST para 22 lenguajes. Ideal para código con una larga historia de código abierto copiado o incluido en el proyecto, y para comprobar binarios de terceros. Tenga en cuenta que el precio es mediante presupuesto y que sus Fix PRs cubren las dependencias directas. CRACI frente a Black Duck
Mend.io
Mend AppSec combina Mend SCA, que sigue el grafo de llamadas a través de las dependencias transitivas, con Mend SAST para más de 30 lenguajes. Mend Renovate mantiene al día las dependencias en 90 o más gestores de paquetes, y la CLI de Renovate es gratuita. Ideal para equipos con un gran backlog que quieren priorización y actualizaciones automatizadas a la vez. Tenga en cuenta que la propia documentación de Mend recomienda escanear después del paso de build, de modo que la precisión depende de en qué punto del pipeline se ejecute. CRACI frente a Mend.io
Checkmarx One
Checkmarx One es una amplia plataforma de AppSec: SAST, SCA, secretos, IaC, seguridad de API, DAST, contenedores y protección contra paquetes maliciosos, con una capa de ASPM por encima. Su SCA utiliza análisis de rutas explotables, y las políticas pueden hacer fallar los builds. Ideal para organizaciones que quieren un solo proveedor para las pruebas de seguridad de aplicaciones. Tenga en cuenta que la GitHub Action sube un archivo zip de su código fuente para escanearlo (SCA Resolver puede hacer el análisis on-premises en su lugar), y que el precio es mediante presupuesto. CRACI frente a Checkmarx One y Alternativas a Checkmarx
Endor Labs
Endor Labs se centra en la alcanzabilidad a nivel de función, y sigue las rutas de código desde su código fuente hasta la función vulnerable en las dependencias directas y transitivas. Añade análisis del impacto de las actualizaciones, Endor Patches que retroportan correcciones, AI SAST, escaneo de secretos y contenedores, un Package Firewall y firma de artefactos. Ideal para equipos desbordados por las alertas de dependencias. Tenga en cuenta que, cuando no es posible un build completo, recurre a una alcanzabilidad menos precisa, a nivel de dependencia. CRACI frente a Endor Labs
Semgrep Supply Chain
Semgrep Supply Chain es el producto de SCA de la plataforma de AppSec de Semgrep, junto a Semgrep Code (SAST) y Semgrep Secrets. Clasifica los hallazgos como alcanzables, condicionalmente alcanzables o inalcanzables, y Semgrep afirma que esto reduce los falsos positivos hasta un 98 %. Donde los lockfiles están incompletos, Dynamic Dependency Resolution combina el análisis de manifiestos con el gestor de paquetes para completar la lista. También comprueba las licencias con su política, detecta dependencias maliciosas, abre pull requests de actualización y exporta SBOM en CycloneDX. Ideal para equipos que ya escriben reglas de Semgrep, o para equipos pequeños: el plan gratuito cubre hasta 10 colaboradores. Tenga en cuenta que los productos de pago se facturan por separado, desde $30 por colaborador al mes para Supply Chain en el plan Teams.
GitHub Advanced Security
GitHub vende ahora Secret Protection y Code Security (CodeQL, Copilot Autofix, revisión de dependencias) además del grafo de dependencias y Dependabot, que incluyen todos los planes de GitHub. Artifact attestations añade procedencia firmada de nivel SLSA v1.0 Build Level 2. Ideal para equipos que ya están en GitHub y quieren la seguridad dentro de las pull requests. Tenga en cuenta que el grafo de dependencias describe los manifiestos y lockfiles del repositorio, y que los repositorios privados necesitan un plan Team o Enterprise para los productos de pago. CRACI frente a GitHub Advanced Security
Aikido
Aikido reúne SCA, SAST, secretos, IaC, postura de nube, contenedores, DAST y análisis de licencias en un solo panel. Su SCA utiliza alcanzabilidad a nivel de función, AutoFix abre pull requests y la herramienta gratuita Safe Chain bloquea el malware conocido en las instalaciones de npm y PyPI. Ideal para equipos más pequeños que quieren una cobertura amplia rápidamente, o informes SOC 2 e ISO 27001 a partir de los hallazgos de AppSec. Tenga en cuenta que esos informes de cumplimiento empiezan en el plan Advanced, y que las dependencias proceden de manifiestos y lockfiles. CRACI frente a Aikido
Herramientas de SCA gratuitas y de código abierto
Si el presupuesto es la limitación, cuatro herramientas de código abierto cubren lo esencial del SCA. Todas son gratuitas con licencia Apache-2.0. Las ejecuta usted, así que la monitorización, el triaje y los informes corren por su cuenta.
| Función | Qué escanea | Datos de vulnerabilidades | Conviene saber |
|---|---|---|---|
| Trivy | Imágenes, sistemas de archivos, repositorios, imágenes de máquina virtual, Kubernetes | Avisos de proveedores, GitHub Advisory Database, NVD | También encuentra errores de configuración de IaC, secretos y licencias |
| Grype | Imágenes, sistemas de archivos y SBOM | Su propia base de datos, descargada en local | EPSS, KEV y puntuación de riesgo; filtrado OpenVEX; hace fallar los builds con --fail-on |
| OSV-Scanner | Lockfiles, imágenes de contenedor, SBOM, código C y C++ incluido en el proyecto | OSV.dev | Análisis de llamadas opcional; corrección guiada para npm y Maven |
| OWASP Dependency-Check | Dependencias del proyecto, con compatibilidad total para Java y .NET | NVD, cotejo por CPE | CLI, plugins para Maven, Gradle y Ant, e integraciones con CI |
Trivy, de Aqua Security, lee los lockfiles de un repositorio y los metadatos de los paquetes instalados en una imagen, y escribe SBOM en CycloneDX o SPDX. CRACI frente a Trivy. Grype, de Anchore, escanea lo que enumera su complemento Syft y funciona íntegramente en local, salvo por la descarga de su base de datos. CRACI frente a Syft y Grype. OSV-Scanner, de Google, es el cliente oficial de la base de datos OSV.dev y admite 19 o más tipos de lockfile. OWASP Dependency-Check identifica los componentes por CPE y los coteja con la NVD, lo que encaja mejor con proyectos Java y .NET. Para saber cómo leen un repositorio los generadores gratuitos de SBOM que hay detrás de estos escáneres, y por qué discrepan, consulte lo que se les escapa a los generadores de SBOM de código abierto.
Cómo encaja CRACI
Todas las demás herramientas de esta página son escáneres. Leen un manifiesto, un lockfile, un archivo de código fuente o un
binario y averiguan qué hay dentro. CRACI es un registrador. Sus jobs de GitHub Actions se ejecutan en runners de CRACI (cambie runs-on a
craci), y un proxy que entiende de paquetes registra lo que cada job descarga de fuentes npm, PyPI, RubyGems,
Cargo, Go, Nix, OCI, apt, apk y Git, además de los presets de descarga. La evidencia de dependencias viaja con las cachés de CI.
La vista de inventario de CRACI muestra exactamente qué versiones de software están desplegadas en qué productos, a escala
global.
A partir de ese registro, CRACI produce una SBOM en CycloneDX o SPDX que indica su propia completitud por job y por caché. Aplica una política de egress que, si falla, bloquea, devuelve SBOM, trazas de red y procedencia mediante su API, sigue reevaluando las SBOM monitorizadas y permite a los equipos de seguridad hacer el triaje de los hallazgos y enviar cada uno al equipo responsable de la corrección. Cada componente lleva su licencia declarada, de modo que el copyleft y otras licencias restrictivas aparecen antes de la distribución, y la política de licencias puede bloquear un build por una licencia. Automatiza una parte importante de la visibilidad y la evidencia de la cadena de suministro de software que las empresas necesitan para su proceso más amplio de cumplimiento del CRA.
CRACI no es la opción adecuada cuando:
- necesita SAST o escaneo de secretos o IaC (no hace nada de eso),
- la alcanzabilidad es su prioridad (CRACI no la ofrece), o necesita listas de bloqueo de paquetes hoy (están en la hoja de ruta),
- sus pipelines se ejecutan en GitLab, Jenkins o CircleCI, o necesitan runners Windows o macOS (CRACI ejecuta hoy jobs de Linux en GitHub Actions; otros sistemas de CI, Windows y macOS están en la hoja de ruta).
En esos casos, elija entre las herramientas anteriores. Si además necesita demostrar qué entró en cada versión, use CRACI como runner y mantenga su SCA en las pull requests. Para profundizar en el argumento de escáner frente a registrador, consulte CRACI frente a las herramientas de SCA y SBOM y la comparativa de herramientas de SBOM, lea sobre la generación de SBOM durante el build y los precios, o reserve una demo para ver el registro de un build de GitHub Actions.
CRACI comparado con cada herramienta
- CRACI frente a Snyk Lo que declaran sus manifiestos frente a lo que hizo su build.
- CRACI frente a Aikido Una amplia suite de AppSec frente a evidencias deterministas del build.
- CRACI frente a Sonatype Control de acceso al repositorio y SCA frente a evidencias del build.
- CRACI frente a Black Duck Escaneo de código, fragmentos y binarios frente a evidencias del build.
- CRACI frente a Mend.io Escaneo de dependencias frente a observación de dependencias.
- CRACI frente a Checkmarx Plataforma de pruebas AppSec frente a evidencias generadas durante el build.
- CRACI frente a Endor Labs Análisis de alcanzabilidad frente a observación del build.
- CRACI frente a JFrog Gestión de artefactos frente a evidencias por build.
- CRACI frente a GitHub Advanced Security Análisis de código, secretos y dependencias frente a evidencias del build.
- CRACI frente a Dependabot Actualizaciones de versión frente a saber qué usaron sus builds.
Lado a lado
Varias herramientas en una página, para cuando elige una categoría y no un producto concreto.
Herramientas de SCA: preguntas frecuentes
Respuestas breves a preguntas habituales sobre el análisis de composición de software
¿Qué es una herramienta de SCA?
Una herramienta de análisis de composición de software (SCA) encuentra los componentes de código abierto y de terceros de su software, los coteja con bases de datos de vulnerabilidades como la NVD, GitHub Advisory Database u OSV, y señala las vulnerabilidades conocidas y los riesgos de licencia. La mayoría de las herramientas de SCA también priorizan los hallazgos, sugieren o abren pull requests de actualización, exportan una SBOM y siguen vigilando las nuevas vulnerabilidades.
¿Qué es el escaneo SCA?
Un escaneo SCA lee los manifiestos, los lockfiles, los paquetes instalados o una imagen de contenedor de un proyecto, averigua qué componentes contiene y los coteja con datos de vulnerabilidades y licencias. La mayoría de las herramientas lo ejecutan en cada pull request y de forma programada, de modo que también se detectan los nuevos avisos sobre versiones que usted ya utiliza.
¿Cuál es la diferencia entre SCA y SAST?
El SAST analiza el código que escribe su equipo en busca de fallos como los errores de inyección. El SCA analiza los componentes de los que usted depende en busca de vulnerabilidades conocidas y problemas de licencia. La mayoría de las herramientas comerciales de esta página venden ya ambos, pero responden a preguntas distintas.
¿Cuál es la diferencia entre el SCA y una SBOM?
El SCA es el proceso de encontrar y evaluar componentes. Una SBOM es una lista legible por máquina de esos componentes, normalmente en formato CycloneDX o SPDX. La mayoría de las herramientas de SCA pueden exportar una, y la SBOM solo es tan completa como el método que la generó: un escaneo de manifiestos, un escaneo de binarios o un registro del build.
¿Cuáles son las mejores herramientas gratuitas de SCA?
Trivy, Grype, OSV-Scanner y OWASP Dependency-Check son gratuitas y de código abierto. Entre las herramientas comerciales, Semgrep tiene un plan gratuito para un máximo de 10 colaboradores, Snyk, Endor Labs y Aikido tienen niveles gratuitos, y las alertas de Dependabot vienen con todos los planes de GitHub. Las herramientas gratuitas suelen dejar en sus manos la monitorización, el triaje y los informes.
¿Qué es el análisis de alcanzabilidad en el SCA?
El análisis de alcanzabilidad comprueba si su código puede invocar realmente la función vulnerable de una dependencia, de modo que los hallazgos inalcanzables bajan en la lista. Snyk, Endor Labs, Mend, Checkmarx, Semgrep, Aikido, Sonatype y Black Duck ofrecen alguna forma de este análisis. CRACI, no.
¿CRACI es una herramienta de SCA?
No en el sentido clásico. Las herramientas de SCA escanean archivos para averiguar qué hay dentro. CRACI es un registrador: ejecuta sus jobs de GitHub Actions y registra los paquetes que cada job descargó realmente, produce una SBOM en CycloneDX o SPDX que indica su propia completitud y la sigue monitorizando en busca de nuevas vulnerabilidades. Los equipos lo ejecutan junto a una herramienta de SCA que cubre las pull requests y el SAST.
Vea lo que sus builds descargaron realmente
Reserve una demo para comparar la SBOM que CRACI registra durante un build de GitHub Actions con la que produce su herramienta de SCA.
Reservar una demo