01fluidattacks.com
Los agentes construyen
Tú lideras
Nosotros aseguramos
www.fluidattacks.com
02fluidattacks.com
Una revisión de código en busca de vulnerabilidades

Un modelo,cuatro harness

Cristian Vargas

Harness: el programa que envuelve al modelo y le da herramientas.

0harness
0corridas por harness
0reportes
0causas raíz
03fluidattacks.com

Cristian Vargas

Application Security Engineer

Reviso código en busca de vulnerabilidades explotables y automatizo con agentes la parte que se repite. Antes de recomendar una herramienta, la mido.

Contacto
inlinkedin.com/in/cvmiracle
@cvargas@fluidattacks.com
20 minutos. Al final hay un enlace con los datos completos.
04fluidattacks.com

Contenido

La pregunta01
Metodología02
Qué se mantuvo fijo03
El filtro de verificación04
El modelo05
Resultados06
Precio y tiempo07
Conclusiones08
05fluidattacks.com

La pregunta

Comparamos modelos todo el tiempo. El harness, casi nunca.

?
06fluidattacks.com

Qué es un modelo de lenguaje

Un programa que, dado un texto, predice qué viene después. Un pedazo de texto por vez: un token.

No abre el archivo.No tiene manos: solo texto.
No ejecuta nada.No corre el código que lee.
No sabe: adivina.Y a veces acierta.
Pregunta¿Hay una inyección SQL en checkout.js?
Probablemente en la línea 42: la entrada del usuario llega sin escapar a la consulta.
No ejecutó nada. Lo dedujo del texto.
Hay decenas.
Yo usé uno:
OpenAI
Claude
Gemini
DeepSeekel que usé
Qwen
Llama
Mistral
07fluidattacks.com

Qué es un harness

El modelo solo escribe texto. El harness lo convierte en acciones.

HARNESS modelo solo escribe texto <read_file name="checkout.js"> interpretar ejecutar devolver repetir el resultado vuelve al modelo, que decide si sigue hasta que el harness dice basta
Herramientas. Leer archivos, editarlos, correr comandos, buscar en la web.
El formato y quién lo ejecuta. El modelo pide con texto; el harness corre el código de verdad.
La vuelta. Devuelve el resultado y decide cuándo cortar: el modelo no tiene reloj.
Aunque el modelo, las instrucciones y el código no cambien, el harness cambia qué se encuentra.
Cuatro cocinas
para el mismo chef:
dshDeepSeek
fxVercel Labs
πpimínimo
OCOpenCode
07fluidattacks.com

Seis palabras

01Modelo — el que lee el código y propone. No ejecuta nada solo.
04Reporte — lo que entrega una corrida. Una afirmación, no un hallazgo.
02Harness — lo envuelve: le da herramientas, ejecuta y le devuelve el resultado.
05Se sostiene — pasó el filtro: el atacante gana algo que no tenía.
03Corrida — una sesión completa sobre el mismo repositorio. Cinco por harness.
06Causa raíz — el defecto de origen, no cada sitio donde aparece. Nueve en total.
Las cifras de esta charla no significan nada sin estas seis palabras.
08fluidattacks.com

Metodología

Cuatro harness, un modelo, un prompt y una base de código.

4×
09fluidattacks.com

Qué se mantuvo fijo

01
Modelodeepseek-v4.1-flash:1017 en ollama.com. El mismo en los cuatro harness.
02
Promptbuscar vulnerabilidades críticas o altas. Decir dónde nace el dato, por dónde viaja hasta la operación que lo usa, qué necesita el atacante y qué impacto tiene. Calidad antes que cantidad.
03
Objetivouna aplicación Node.js grande, con una copia aislada del mismo árbol por ejecución.
04
Sandboxuna imagen Docker, un contenedor por harness, usuario sin privilegios. Salida a red hasta el endpoint del modelo.
05
Límites28 minutos por celda, el límite del experimento y no del harness. Tres harness en paralelo, cinco corridas cada uno.
10fluidattacks.com

El filtro de verificación

▲

Vulnerabilidad

El defecto es real y el atacante gana acceso que no tenía.

◧

Degradado

El defecto es real, pero quien lo explota ya tenía ese acceso.

◆

Inflado

El defecto es real, pero el daño que se le atribuye no.

✕

Falso positivo

No hay defecto: la cadena se rompe en el código.

?

Lo dudoso

Cuenta como refutado. Ante la duda, el reporte no se sostiene.

0de 41

se sostuvieron

Precisión = reportes que se sostienen ÷ reportes emitidos.

11fluidattacks.com

Cómo se decide

01Con qué acceso empieza el atacante.
02Cómo llega cada requisito previo.
03Si ese requisito ya concede el mismo poder.
04Si se cruza una frontera de privilegio real.
05Si el impacto se demuestra o solo se supone.
El revisor

Es independiente y de solo lectura: no arregla ni completa el reporte, lo intenta romper.

Ante la duda, no se sostiene.

12fluidattacks.com

¿Por qué este modelo?

Primero, una prueba con vulnerabilidades reales.

#1CWE-Bench-AA
69%
de éxito al primer intento
DeepSeek V4.1 Flash 1017 (Max)
El ataque deja de funcionar.
El programa sigue funcionando.
Solo cuenta si pasan las dos pruebas.

120 tareas privadas sobre repositorios reales

Las diez categorías de riesgo web de OWASP 2025. Siete lenguajes: C, C++, Go, Java, JavaScript, Python y Rust.

Dos horas por tarea, sin internet

Se indica la zona del código donde mirar, no la línea exacta.

Comprobación automática, sin evaluador de IA

No hay crédito parcial: o el defecto queda cerrado o no cuenta.

Detrás: Grok 4.7, 68% · DeepSeek V4.1 Flash, 68% · Kimi K3.1 Pro, 61%.
Hasta esta prueba corre sobre su propio harness: Stirrup.
Artificial Analysis · CWE-Bench-AA · noviembre de 2026
13fluidattacks.com

La velocidad se siente

Un token es un pedazo de texto. Abajo, dos segundos de generación; cada ficha son diez tokens.

DeepSeek V4.1 Flash 1017≈300 tokens/s · el que usé
Claude Opus 5.5105 tokens/s
GPT-6.1 Sol59 tokens/s
275 mshasta el primer token de DeepSeek. Antes de que termines de leer la pregunta, ya está respondiendo.
En el mismo tiempo, DeepSeek produce tres veces lo de Opus y cinco veces lo de Sol.
DeepSeek: ≈300 tokens/s en uso típico; medianas publicadas 205,6 (Ollama Cloud) y 212 (Artificial Analysis). Opus 5.5 y Sol: mediana de Artificial Analysis. Ritmo sobre 2 s de generación · 8 de noviembre de 2026.
14fluidattacks.com

Lo que cuesta un millón de tokens

Precio de salida por millón de tokens, hoy. La barra de DeepSeek es su tarifa fuera de horario pico en Ollama Cloud.

Claude Opus 5.5
$20,00
GPT-6.1 Sol
$10,00
Gemini 4 Argon
$10,00
hasta el 30/11
DeepSeek V4.1 Flash
$0,60
33× más barato
41 auditorías completas por entre $0,18 y $0,44 cada una. Pesos publicados, licencia MIT.
Ahora sí: el mismo modelo, con cuatro harness.
Precios: Anthropic, OpenAI, Google y Ollama Cloud · 8 de noviembre de 2026 · Gemini 4 Argon es precio de lanzamiento: sube a $4/$20 el 1 de diciembre · barra proporcional al precio de salida
12fluidattacks.com

Resultados

Con el modelo, las instrucciones y el código fijos, la precisión fue del 80% al 36%.

36 %
la precisión de OpenCode
13fluidattacks.com

Una prueba,cuatro harness

dsh es DeepSeek Harness; fx es el de Vercel Labs. Cinco corridas por harness: costo y duración, mediana; reportes, total. Precisión = los reportes que se sostuvieron sobre los emitidos.

HarnessVersiónReportesPrecisiónCosto/hallazgo
dsh0.2.1-rc.51080%$0.26
fx0.0.16875%$0.24
pi1.5.01267%$0.18
OpenCodev2.2.51136%$0.29
14fluidattacks.com

¿Importa el harness?

Solo cambió el harness.
Del 80% al 36%.
El harness no es un detalle.
0%dsh
0%fx
0%pi
0%OpenCode
15fluidattacks.com

Precio y tiempo

Cada ejecución con la tarifa de menor demanda, para comparar consumo y no horarios. El costo por hallazgo divide el gasto total de las corridas entre los hallazgos verificados.

HarnessCosto/ejecuciónDuraciónSe sostuvieronCosto/hallazgo
dsh$0.4418.7 min8$0.26
fx$0.2912.0 min6$0.24
pi$0.2912.2 min8$0.18
OpenCode$0.189.0 min4$0.29
16fluidattacks.com

pi y dsh empatan;los separa el ruido

Nueve causas raíz en todo el conjunto. dsh cubrió 6, pi 6, fx 5 y OpenCode 4. Ningún harness las encuentra todas.

pi y dsh empatan en hallazgos (8) y en causas (6 de 9). La diferencia es el ruido: pi refutó 4 de sus 12 reportes; dsh, 0 de 10.

Nueve causas raíz. El número indica cuántos harness la encontraron.
17fluidattacks.com

Conclusiones

dsh gana en calidad. pi gana en precio. Nadie gana en todo.

18fluidattacks.com

dsh ganaen calidad

El único sin falsos positivos: 10 reportes, 8 se sostuvieron; el resto quedó degradado o inflado. Ninguno se cayó.

Cubrió 6 de 9 causas, empatado con pi, y fue uno de los dos que encontraron una causa que a los demás se les pasó.

Y una advertencia

DeepSeek optimizó este modelo para su propio harness: dsh corrió en el harness para el que fue entrenado, y los otros tres no.

Parte de la ventaja es del modelo, no del harness. Aun así, pi y dsh empatan en hallazgos y causas.

19fluidattacks.com

pi gana en precio

Costo por hallazgo verificado
pi$0.18
fx$0.24
dsh$0.26
OpenCode$0.29

$0.29 por ejecución y $0.18 por vulnerabilidad verificada, contra $0.44 y $0.26 de dsh.

Y no encuentra menos: empata en 8 hallazgos que se sostienen y 6 de 9 causas. Lo único que los separa es el ruido.

20fluidattacks.com

Los otros dos,y lo que falta

fx llegó al 75% de precisión, pero 3 de sus ejecuciones no terminaron: rinde cuando llega al final.

OpenCode es el más barato por ejecución y el más caro por hallazgo: 36% de precisión y 4 causas.

Lo que no está medido

Se probaron sin instrucciones extra en AGENTS.md ni guías de trabajo (skills). Cuánto mejora con ellas todavía no lo medimos.

21fluidattacks.com

Para seguir

El artículo, con los datos, las cinco figuras y el filtro completo:

cvargas.com/blog/harness-benchmark cvargas.com/es/blog/harness-benchmark
22fluidattacks.com

Cinco cosas que me llevo

01

El harness decide qué se encuentra. Con el mismo modelo, la precisión fue del 80% al 36%.

02

dsh fue el único sin falsos positivos y cubrió 6 de 9 causas: para este modelo, es el que mejor rinde.

03

pi cuesta $0.18 por hallazgo, frente a $0.26 de dsh. Ambos sostuvieron 8 hallazgos y cubrieron 6 causas.

04

fx rinde cuando termina. OpenCode es el más barato por corrida y el más caro por hallazgo.

05

Antes de cambiar de modelo, prueba otro harness.

23fluidattacks.com
El modelo se alquila.
El harness se elige.
El criterio se escribe.

El harness influye en qué se encuentra y en cuánto ruido hay que descartar. Conviene comparar antes de elegir.

24fluidattacks.com
Los agentes construyen
Tú lideras
Nosotros aseguramos
El artículo y el benchmark: cvargas.com/blog/harness-benchmark
Emailinfo@fluidattacks.com
Ubicación95 3rd Street, 2nd Floor
San Francisco, CA 94103
Teléfono+1 415 404 2154
+57 314 259 7110
Cláusula legal. Este documento contiene información de propiedad de Fluidsignal Group. El cliente puede usar dicha información solo con el propósito de documentación sin poder divulgar su contenido a terceras partes ya que contiene ideas, conceptos, precios y/o estructuras de propiedad de Fluidsignal Group S.A. La clasificación «propietaria» significa que esta información es solo para uso de las personas a quienes está dirigida. En caso de requerir copias totales o parciales se debe contar con la autorización expresa y escrita de Fluidsignal Group S.A. Copyright 2026 Fluid Attacks — All rights reserved
← → para moverte · N notas · F pantalla completa