Skip to content

VulnHunter explicado: el cazador de vulnerabilidades con IA de Clouditera

28 de octubre de 2026 · PlayCISO

VulnHunter es una nueva plataforma autoalojada que usa agentes de IA para buscar vulnerabilidades en el código fuente. Viene de Clouditera (云起无垠), la empresa china de seguridad que también publica el modelo SecGPT. No es un escáner al que apuntas a una URL: lee código, formula hipótesis sobre dónde es débil, argumenta cada una desde los dos lados y puede intentar demostrar un hallazgo reproduciéndolo en un sandbox. Esta página explica qué hace, cómo ejecutarlo y qué no demuestra todavía. Todo lo que aparece aquí procede del repositorio de VulnHunter a fecha de 28 de octubre de 2026; PlayCISO no está afiliado a Clouditera y no lo ha sometido a pruebas comparativas.

Qué es VulnHunter

El README lo describe como una «AI-Powered Automated Vulnerability Discovery Agent Platform» (plataforma de agentes de descubrimiento automatizado de vulnerabilidades impulsada por IA) y un «open-source AI vulnerability hunting workbench that combines automated target profiling, AI-assisted vulnerability discovery, chat-based investigation, POC/EXP generation and verification, review workflows, and report delivery — all in a self-hosted deployment» (un banco de trabajo de código abierto para la caza de vulnerabilidades con IA que combina perfilado automático del objetivo, descubrimiento de vulnerabilidades asistido por IA, investigación mediante chat, generación y verificación de POC/EXP, flujos de revisión y entrega de informes, todo en un despliegue autoalojado).

En la práctica es una aplicación web completa y no una herramienta de línea de comandos: una interfaz en React, un backend con soporte de WebSocket y MCP (Model Context Protocol), PostgreSQL, almacenamiento de objetos y workers Docker aislados que hacen el análisis. El producto se llamaba VulnAgent hasta julio de 2026.

Qué audita

  • Código fuente, subido como archivo comprimido (zip, tar, tar.gz, hasta 2 GB en la interfaz) u obtenido de una URL de Git y una rama.
  • Bytecode de Java: los archivos .jar, .war y .class se descompilan primero, así que puedes auditar una app Java sin su código fuente.
  • Lenguajes que reconoce su perfilador: JavaScript/TypeScript, Python, Java, Go, PHP, .NET, Rust, Ruby y Scala. Sus prompts de auditoría también cubren fallos de corrupción de memoria en código de estilo C/C++.
  • No objetivos en vivo de caja negra. El trabajo dinámico se hace sobre una copia del objetivo que construye el propio VulnHunter, en local o en su sandbox opcional.

Cómo funciona: atacante frente a defensor

La auditoría se ejecuta sobre el orquestador de flujos propio de Clouditera, YoungFlow, que organiza las etapas con LangGraph y ejecuta cada tarea con una CLI de agente de programación. Un planificador va eligiendo la siguiente etapa, lo que los documentos de diseño describen como una «cognition-driven decide spiral» (espiral de decisión guiada por la cognición) que imita cómo trabaja un auditor experto:

  1. Onboard: construye un perfil del proyecto, una wiki y un modelo de amenazas.
  2. Cognize: repasa un área y mapea su superficie de ataque y sus fronteras de confianza.
  3. Hunt: lee con detalle una ruta de auditoría y anota hipótesis de riesgo.
  4. Verify: una argumentación a dos bandas. Un agente (el que afirma) intenta demostrar que el fallo es alcanzable; otro (el que cuestiona) busca evidencias de que no lo es. El veredicto es confirmado o refutado.
  5. Reproduce (opcional): construye una prueba de concepto y dispara el fallo en un sandbox.
  6. Assess y chain (opcional): valora el impacto de explotación de un hallazgo o encadena varios hallazgos en un solo exploit.
  7. Report.

Entre etapas, los agentes escriben sus notas en archivos Markdown y YAML estructurados (la wiki, las rutas de auditoría, las hipótesis, los fallos) porque, como dicen los documentos, una sola ventana de contexto «no puede contener el análisis de un proyecto complejo». Algo importante: los documentos tratan los hallazgos confirmados de forma estática como candidatos: un hallazgo solo cuenta como reproducido cuando la prueba de concepto tiene éxito.

Lo que no incluye: no hay un motor clásico de análisis estático (ni Semgrep, ni CodeQL, ni Joern) ni un fuzzer dedicado. El razonamiento lo hace el modelo de lenguaje; el agente puede escribir su propio arnés de pruebas durante la reproducción en el sandbox.

Qué obtienes

Cada hallazgo es un informe con título, tipo de vulnerabilidad, CWE, vector y puntuación CVSS 3.1, una puntuación de valor de explotación y una prioridad, versiones afectadas, anclajes en el código, una traza paso a paso desde donde entran los datos no confiables (la fuente) hasta donde causan el daño (el sumidero), una corrección sugerida y referencias, además de un paquete de prueba de concepto cuando se ejecutó la reproducción. La interfaz añade un panel, el seguimiento del uso de tokens, un flujo de revisión de cuatro estados para cada hallazgo, un asistente de chat con «16+ MCP tools» y exportación de informes en Markdown. No encontramos exportación SARIF.

Qué modelos de IA necesita

Los pones tú. VulnHunter acepta API compatibles con OpenAI y con Anthropic, con configuraciones predefinidas para OpenAI, OpenRouter, Together, Baseten, DeepSeek, Zhipu GLM y Qwen, y funciona con modelos autoalojados. El README no recomienda ningún modelo concreto. Algo que hay que decidir de entrada: tu código fuente va al proveedor de modelos que configures. Para código propietario, acepta las condiciones de datos de ese proveedor o aloja tú el modelo.

Cómo instalarlo

No hay imágenes de contenedor publicadas, y el README es tajante: «a bare clone followed by docker compose up is not an installation» (un simple clone seguido de docker compose up no es una instalación). Compilas una versión desde el código fuente:

git clone --recurse-submodules https://github.com/Clouditera/VulnHunter.git
cd VulnHunter
pnpm install --frozen-lockfile
./scripts/build-release.sh --edition community
VERSION=$(node -p "require('./package.json').version")
cd "release/vulnhunter-release-${VERSION}-community"
./install.sh
./doctor.sh
# then open http://localhost:23000 and create the admin account

Requisitos: Linux x86_64 (se recomienda Ubuntu 22.04+), Docker con Compose v2, Node 20+ y pnpm 9+. El README pide 16 GB de RAM o más, pero su propio documento de requisitos de entorno dice al menos 32 GB de RAM y 100 GB de disco, así que planifica para la cifra mayor. No hace falta GPU salvo que alojes tú el modelo. El sandbox es una instalación aparte, y sus perfiles de QEMU necesitan /dev/kvm.

Lo que todavía no demuestra

  • Ni benchmark ni CVE. El repositorio no contiene ninguna cifra de precisión, resultado sobre datasets ni lista de CVE. Su tabla «Why VulnHunter?» se compara favorablemente con el SAST («análisis consciente del contexto» frente a «muchos falsos positivos»), pero no se mide nada.
  • La licencia está etiquetada de tres formas. El archivo LICENSE es Apache-2.0 más condiciones que prohíben ofrecerlo como servicio alojado a terceros sin una licencia comercial y exigen conservar su marca. El recuadro About de GitHub y el package.json dicen AGPL-3.0. En cualquier caso es de código disponible, no código abierto según la OSI, y la edición Community es monousuario (el control de acceso multiusuario está en el complemento empresarial propietario).
  • Joven y pequeño. 89 estrellas y 18 forks, primer commit el 20 de abril de 2026, último commit el 28 de septiembre de 2026, sin releases en GitHub y tres números de versión distintos entre el README, el package.json y las etiquetas de git.
  • La documentación está en parte en chino. El README principal está en inglés; los documentos de diseño de flujos, los prompts, las notas de versión y las guías de despliegue están en chino.
  • Costo abierto. El gasto en tokens depende del tamaño del código y de cuántas etapas actives. La plataforma registra el uso, pero no da una estimación por análisis.
  • El aislamiento depende de ti. El prompt del agente trata como autorizado el trabajo de explotación dentro del objetivo y el sandbox configurados. Sin el sandbox, los pasos dinámicos se ejecutan en el worker local, así que despliégalo en un host aislado.

Cómo se compara

HerramientaParte de¿Demuestra los hallazgos?LicenciaEvidencia publicada
VulnHunterCódigo fuente, bytecode de JavaPoC opcional en sandboxCódigo disponibleNinguna
StrixCódigo, repositorios, apps en vivo, APISí, PoCApache-2.0Ninguna; 72k estrellas
ShannonCódigo fuente + una app en ejecución fuera de producciónSí, solo reporta fallos explotadosAGPL-3.0Ninguna; 50k estrellas
ButtercupC/Java con arneses de fuzzingSí, crash de fuzzingAGPL-3.02.º en DARPA AIxCC
SemgrepCódigo fuenteNo (coincidencia de reglas)Motor LGPL-2.1Determinista, muy usado

Los pares más cercanos de VulnHunter son los pentesters con IA que entienden el código (Strix, Shannon) y Aardvark de OpenAI, ahora Codex Security. Lo que lo distingue es partir del código con descompilación de Java, un banco de trabajo completo de estilo equipo con estados de revisión, la capacidad de encadenar hallazgos y un soporte de primera para modelos chinos. Donde se queda atrás es en pruebas, adopción y claridad de la licencia. La comparación completa lado a lado de 20 herramientas, de IA y clásicas, está en nuestra comparación de herramientas de pentesting.

¿Deberías usarlo?

Si quieres una auditoría de código autoalojada y guiada por el razonamiento, con un flujo de revisión, y sobre todo si quieres usar GLM, Qwen o DeepSeek, vale la pena probar VulnHunter en un código cuyas vulnerabilidades ya conozcas, para medir qué encuentra y qué se le escapa. Mantén en cualquier caso un motor SAST determinista como Semgrep o CodeQL en la CI: es más barato, repetible y cubre lo básico en cada pull request. No reportes sus hallazgos a nadie, ni a un fabricante ni a un mantenedor de código abierto, hasta que una persona los haya reproducido. Y ejecútalo solo sobre código que sea tuyo o que estés autorizado a probar, como exige su propio README.

Preguntas frecuentes

¿VulnHunter es de código abierto?

No en el sentido de la OSI: es Apache-2.0 más condiciones que prohíben alojarlo como servicio para terceros sin una licencia comercial y exigen conservar su marca, mientras que GitHub y el package.json dicen AGPL-3.0. Consúltalo con Clouditera antes de construir sobre él. El uso interno dentro de una organización está permitido.

¿VulnHunter escanea sitios web en vivo?

No. Parte de código fuente o de bytecode de Java, y su etapa dinámica ejecuta el objetivo en su propio sandbox. Para aplicaciones web en vivo, mira ZAP, Burp Suite, Strix o Shannon.

¿Qué modelos de IA usa?

Los tuyos: API compatibles con OpenAI o Anthropic, con configuraciones predefinidas que incluyen DeepSeek, GLM y Qwen, o un modelo autoalojado. Tu código va a ese proveedor.

¿Qué precisión tiene?

Se desconoce. No se publica ningún benchmark, resultado sobre datasets ni lista de CVE.

Preguntas frecuentes

¿Qué es VulnHunter?

VulnHunter es una plataforma autoalojada de IA de Clouditera para encontrar vulnerabilidades en el código fuente. Su README la llama «AI-Powered Automated Vulnerability Discovery Agent Platform» y «AI vulnerability hunting workbench», un banco de trabajo que combina el perfilado del objetivo, el descubrimiento asistido por IA, la investigación mediante chat, la generación y verificación de pruebas de concepto, los flujos de revisión y los informes.

¿VulnHunter es de código abierto?

No en el sentido de la OSI. Su archivo LICENSE es Apache-2.0 con condiciones adicionales que prevalecen: no puedes ofrecerlo como servicio alojado a terceros sin una licencia comercial (aunque sea gratis) y debes conservar su marca. Hay un complemento empresarial propietario. El recuadro About de GitHub y el package.json dicen AGPL-3.0, lo que contradice el archivo LICENSE, así que consúltalo con Clouditera antes de construir sobre él. El uso interno dentro de una organización está permitido.

¿VulnHunter escanea sitios web en vivo?

No. Parte del código fuente: un archivo zip o tar, una URL de Git o archivos .jar/.war de Java que descompila. Su etapa dinámica ejecuta el objetivo dentro de su propio sandbox opcional para reproducir un hallazgo; no es un escáner web de caja negra como ZAP o Burp Suite.

¿Qué modelos de IA usa VulnHunter?

Los que le des. Acepta API compatibles con OpenAI y con Anthropic, con configuraciones predefinidas para OpenAI, OpenRouter, Together, Baseten, DeepSeek, Zhipu GLM y Qwen, y modelos autoalojados. Tu código fuente se envía a ese proveedor de modelos, así que elige uno cuyas condiciones de datos aceptes, o aloja tú el modelo.

¿Qué precisión tiene VulnHunter?

Se desconoce. El repositorio no publica ningún benchmark, resultado sobre datasets ni lista de CVE. Su diseño reduce los falsos positivos (un paso de verificación a dos bandas y una reproducción opcional en sandbox) y marca los hallazgos no reproducidos como candidatos estáticos, pero no se publica ninguna tasa de falsos positivos.

¿Cómo se compara VulnHunter con Strix, Shannon y Semgrep?

Strix y Shannon son pentesters con IA con comunidades mucho mayores (72k y 50k estrellas en GitHub frente a 89) que atacan una aplicación en ejecución y demuestran los hallazgos con una PoC. Semgrep es un motor de análisis estático determinista: rápido, barato y repetible en cada pull request, pero limitado por sus reglas. VulnHunter se sitúa entre ambos: parte del código como Semgrep, se guía por el razonamiento como los pentesters con IA, con un banco de trabajo completo para equipos y soporte para modelos chinos.

🖤 Black Friday: new customers get 3 months of Pro for $5, then $5/month. Ends 30 Nov. Claim 3 months for $5 →