Saltar a contenido

Pipeline de confianza

El principio de diseño central de Vex Raptor es evidencia sobre volumen. Una detección solo sirve si puedes confiar en ella, así que cada hallazgo lleva un nivel de confianza que te dice cómo se verificó — no solo que un escáner lo marcó.

La regla de oro

Regla de la doble señal

Un hallazgo asciende a CONFIRMED solo cuando una segunda señal independiente lo reproduce. Un único reflejo, un único mensaje de error o un único pico de latencia no bastan.

La segunda señal es una de:

  • Un re-probe — un payload distinto e independiente que debe provocar el mismo efecto (el chequeo es fail-closed: cualquier timeout o error → no se confirma).
  • Una llamada out-of-band (OOB) — para clases ciegas, una interacción externa prueba la ejecución. OOB es opt-in (ver nota abajo).
  • Una segunda herramienta — la misma clase confirmada por otra fuente sube la confianza.

Niveles de confianza

Los hallazgos se gradúan y el grado se muestra en el informe:

Nivel Significado
EXPLOITED / CONFIRMED Reproducido con un payload real; lleva prueba de concepto
OBSERVED / HIGH Evidencia fuerte de una sola señal; la confirmación fue inconclusa
INFO Contexto de reconocimiento (puerto abierto, cabecera, nota de hardening)
UNVERIFIED Señal de baja confianza que necesita revisión manual

Los hallazgos de baja confianza se etiquetan como tales, no se presentan como hechos.

Cómo se suprimen los falsos positivos

Varias capas reducen el ruido antes de que un hallazgo llegue a ti:

  • Guard de baseline y SPA — un marcador ya presente en la respuesta limpia, o una single-page app que refleja todo, se detecta y no dispara hallazgo.
  • Conciencia de content-type — una API JSON no se marca por problemas solo-navegador como XSS reflejado.
  • Corpus de regresión anti-falsos-positivos — una suite de tests con objetivos realistas de alta probabilidad de FP asevera que los objetivos seguros producen cero hallazgos CONFIRMED; corre en CI en cada cambio.
  • Aprendizaje por feedback — los tipos de hallazgo marcados repetidamente como falsos positivos se degradan con el tiempo, sin tocar nunca los CONFIRMED.

Un encuadre honesto

Vex Raptor está diseñado para muy pocos falsos positivos, no cero. Ninguna herramienta autónoma es infalible. Lo que el pipeline garantiza es que todo lo etiquetado CONFIRMED es reproducible y viene con evidencia — y que todo lo menos cierto se etiqueta en consecuencia, para que siempre sepas qué se probó.

Confirmación out-of-band (OOB)

Las clases ciegas (SSRF ciego, SQLi ciego, algún RCE) no se pueden confirmar solo con el cuerpo de la respuesta HTTP. Vex Raptor puede confirmarlas con un colaborador OOB, pero es opt-in y está desactivado por defecto:

OOB_ENABLED=true
OOB_MODE=interactsh          # o un colaborador auto-alojado

Con OOB desactivado, las clases ciegas se reportan a su confianza heurística (p. ej. time-based) y no se afirman como confirmadas por OOB. Activa OOB para la cobertura más profunda de clases ciegas.

Hallazgos del arsenal binario

Cuando el stream FULL/AI corre la fase acotada arsenal_lite (detección de servicios con nmap + plantillas high/critical de nuclei), esos hallazgos heredan la confianza de la herramienta en lugar de pasar por el re-probe de doble señal. Se etiquetan por fuente para que distingas los verificados por el motor de los detectados por plantilla.

Relacionado