Logo StartupKit
ES

Triaje de informes

Cómo usar el tablero Kanban de triaje, leer los indicadores de SLA, evaluar la severidad y resolver o desestimar informes.

Por qué es importante

El triaje sin estructura es donde fallan la mayoría de los programas de divulgación de vulnerabilidades. Los informes válidos quedan enterrados en el ruido, los plazos de SLA se incumplen sin que nadie lo note y los investigadores abandonan tu programa. El tablero Kanban de triaje le da a tu equipo una vista compartida y en tiempo real de cada informe abierto, con visibilidad de SLA integrada, para que nada se escape.

El tablero de triaje

Navega a VDP > Triage Board para ver todos los informes organizados por estado. Cada columna representa una etapa del ciclo de vida del informe, y cada tarjeta representa un informe individual.

El tablero admite dos vistas:

  • Vista de tablero – Columnas Kanban con tarjetas arrastrables (por defecto)
  • Vista de lista – Tabla ordenable con los mismos filtros

Cada tarjeta de informe muestra:

Elemento Descripción
Report ID Identificador con prefijo (por ejemplo, RPT-abc123)
Título Título de la vulnerabilidad, truncado a 40 caracteres
Distintivo de severidad Nivel de severidad con código de color según la evaluación
Cuenta regresiva de SLA Tiempo restante con indicador verde/amarillo/rojo
Asignado Avatar del miembro del equipo, o “Sin asignar”
Indicadores Advertencia de duplicado o distintivo de cribado con IA, si aplica

Usa la barra de filtros sobre las columnas para acotar tu vista:

  • Severidad – Selección múltiple (de Informativo a Súper crítico)
  • Asignado – Menú desplegable (miembros del equipo + “Sin asignar”)
  • SLA – On Track / At Risk / Breached
  • Búsqueda – Filtra por título, ID del informe o email del investigador

Las últimas tres columnas (Fix Verified, Paid, Dismissed) están colapsadas por defecto y solo muestran su conteo. Haz clic para expandirlas.

Ciclo de vida del informe

Cada informe sigue una máquina de estados definida. Arrastra una tarjeta entre columnas en el tablero, o usa los controles de estado en el banner de la página del informe: un botón principal para el siguiente paso obvio más un menú con los demás movimientos válidos. Puedes adjuntar una nota a cualquier cambio de estado (aparece en la cronología), y retroceder un informe a un estado anterior requiere una. La desestimación siempre pide un motivo: arrastrar una tarjeta a la columna Dismissed abre el modal de desestimación en lugar de cerrar el informe de forma silenciosa (consulta Desestimar informes).

                                ┌─────────────┐
                           ┌───>│   Dismissed  │
                           │    └─────────────┘
                           │  (desde Submitted, Triaged, Needs
                           │   Clarification, Validated o In Progress)
┌───────────┐  ┌─────────┐│  ┌───────────────────┐  ┌───────────┐
│ Submitted ├─>│ Triaged ├┴─>│    Validated       ├─>│In Progress│
└───────────┘  └────┬────┘   └─────────┬──────────┘  └─────┬─────┘
                    │                  │                    │
                    v                  v                    v
              ┌───────────────────┐                  ┌──────────┐
              │Needs Clarification│                  │ Resolved │
              └───────────────────┘                  └────┬─────┘
                                                          v
                                                   ┌──────────────┐
                                                   │ Fix Verified │
                                                   └──────┬───────┘
                                                          v
                                                      ┌──────┐
                                                      │ Paid │
                                                      └──────┘
Estado Significado
Submitted Estado inicial después de que un investigador envía el formulario de admisión
Triaged El equipo ha revisado el informe y ha comenzado la evaluación
Needs Clarification El equipo envió una pregunta; a la espera de la respuesta del investigador
Validated Confirmada como una vulnerabilidad real y dentro del alcance; comienza el trabajo de corrección
In Progress La corrección de ingeniería está en curso
Resolved Corrección desplegada; investigador notificado
Fix Verified El investigador confirmó que la corrección funciona (paso opcional de reverificación)
Paid Recompensa desembolsada y ciclo de vida completo
Dismissed Cerrado sin corrección – puede ocurrir desde Submitted, Triaged, Needs Clarification, Validated o In Progress

Dos transiciones especiales a tener en cuenta:

  • Dismissed se puede alcanzar desde Submitted, Triaged, Needs Clarification, Validated o In Progress (no desde Resolved ni Fix Verified). El investigador siempre recibe una notificación con un motivo. Si el informe tiene una recompensa aprobada, desestimarlo también la revoca – consulta Desestimar informes más abajo.
  • Dismissed > Submitted reabre un informe si la desestimación se hizo por error. Reabrirlo no restablece una recompensa revocada – aprueba una nueva manualmente cuando el informe se valide de nuevo.

Cada transición de estado se registra en el historial de auditoría del informe con el actor, la marca de tiempo y un comentario opcional. Para más detalles sobre cómo enviar mensajes a los investigadores en cada etapa, consulta Communicating with Researchers.

Indicadores de SLA

Cada tarjeta de informe muestra un distintivo de SLA para que tu equipo pueda detectar el trabajo atrasado de un vistazo. El reloj del SLA de acuse de recibo arranca en el momento en que se envía un informe.

Distintivo Color Significado
On Track Verde Dentro del plazo de SLA con margen
At Risk Amarillo El plazo de SLA se acerca – actúa pronto
Breached Rojo El plazo de SLA ya pasó

Usa el filtro SLA en el tablero de triaje y selecciona Breached para mostrar de inmediato los informes que necesitan atención. Los objetivos de SLA se configuran por nivel de severidad en VDP > Program Settings > SLAs.

Cribado con IA

Cada informe enviado se analiza automáticamente en busca de contenido de bajo esfuerzo o generado por IA antes de llegar al tablero de triaje. El análisis se ejecuta en segundo plano y adjunta sus resultados al informe en cuestión de segundos.

El cribador busca señales que indiquen informes fabricados o producidos en masa:

Señal Qué detecta
Funciones alucinadas Referencias a nombres de funciones, métodos de API o rutas de archivos que son plausibles pero probablemente inventados
CVE fabricados Números de CVE que no existen en bases de datos públicas
CVE previo citado como nuevo Una vulnerabilidad conocida y divulgada públicamente presentada como un hallazgo nuevo
Sin PoC específico Sin prueba de concepto, sin pasos específicos del objetivo, sin salida esperada vs. real
Pasos de reproducción vagos Pasos genéricos como “navega a la página de inicio de sesión e introduce un payload” que podrían describir cualquier aplicación
Lenguaje de plantilla Frases predefinidas como “As a security researcher, I discovered…” sin contexto específico del objetivo
Estructura de plantilla Secciones numeradas rígidas y encabezados en negrita que sugieren copiar y pegar de un generador de informes
Remediación genérica Consejos de manual como “sanitize all inputs” sin orientación específica del objetivo
Detalles técnicos inconsistentes Tecnologías, frameworks o versiones que no coinciden con el endpoint objetivo
Referencias a elementos de código inexistentes Hashes de commits, nombres de funciones o rutas de archivos fabricados que no se pueden verificar

El cribado produce una puntuación de confianza (0–100) y una recomendación:

Recomendación Rango de puntuación Efecto
Pass 0–30 El informe aparece en el tablero con normalidad
Review 31–60 El informe aparece con un distintivo sutil de revisión
Flag 61–100 El informe se marca con un distintivo de cribado con IA en la tarjeta Kanban

El cribado con IA nunca rechaza un informe de forma automática. Los informes marcados permanecen completamente visibles y disponibles para el triaje – el distintivo simplemente alerta a tu equipo de que el contenido puede merecer un escrutinio adicional. Tu equipo siempre toma la decisión final.

Evaluación de severidad

Abre un informe y haz clic en Assess para puntuarlo usando CVSS v3.1. La calculadora integrada te guía a través de ocho métricas:

Métrica Opciones
Attack Vector Network, Adjacent, Local, Physical
Attack Complexity Low, High
Privileges Required None, Low, High
User Interaction None, Required
Scope Unchanged, Changed
Confidentiality Impact None, Low, High
Integrity Impact None, Low, High
Availability Impact None, Low, High

El sistema calcula automáticamente la puntuación base y la asigna a un nivel de severidad:

Nivel Rango CVSS
Súper crítico 10.0
Crítico 9.0–9.9
Alto 7.0–8.9
Medio 4.0–6.9
Bajo 0.1–3.9
Informativo 0.0

Una vez evaluado, el nivel de severidad desbloquea un rango de recompensa sugerido a partir de tu matriz de recompensas. La cadena del vector CVSS se almacena en el informe y se muestra en el historial de auditoría. Si la severidad es Crítico o Súper crítico, se envía una notificación de escalamiento a tus contactos de escalamiento configurados.

Desestimar informes

Abre un informe y haz clic en Dismiss para cerrarlo sin corrección. Debes seleccionar un motivo:

Motivo Cuándo usarlo
Out of Scope El objetivo no está cubierto por tu configuración de alcance
Duplicate La misma vulnerabilidad ya se reportó – vincula al informe original
Not Reproducible Tu equipo no pudo reproducir el problema con los pasos proporcionados
Informational No hay vulnerabilidad explotable; el investigador comparte un hallazgo general
Spam Envío automatizado o claramente de bajo esfuerzo
AI Slop Contenido generado por IA con detalles fabricados o alucinados

Añade una nota opcional para explicar la decisión. El investigador recibe un email con tu plantilla de desestimación configurada, que incluye el motivo y la nota. El motivo de la desestimación se registra de forma permanente en el historial de auditoría y no se puede editar tras guardar.

Desestimar un informe con recompensa aprobada

Si el informe tiene una recompensa aprobada, desestimarlo también la revoca. El modal de desestimación muestra una advertencia en ámbar con el monto, quién aprobó la recompensa y cuándo, y el botón de envío cambia a Dismiss & revoke $X bounty. La revocación se registra como una entrada bounty_revoked en el libro mayor inmutable, y el email de desestimación informa al investigador de que la recompensa ha sido retirada y no se pagará – el flujo de apelación habitual sigue siendo su recurso. Consulta Bounties and Payouts para más detalles.

Aplican dos salvaguardas:

  • Una recompensa cuyo desembolso está Completed (pagado) nunca se puede revocar.
  • Un pago en curso (desembolso Pending o Processing) bloquea la desestimación – marca primero el desembolso como fallido, o deja que se complete.

Arrastrar una tarjeta a la columna Dismissed en el tablero abre este mismo modal de desestimación —el selector de motivo y, cuando hay una recompensa aprobada, la advertencia de revocación—, de modo que un arrastre en el tablero nunca desestima un informe (ni revoca una recompensa) sin ese contexto. Es el mismo flujo que el botón Dismiss en la página del informe.

Si una desestimación se hizo por error, puedes reabrir el informe desde la columna Dismissed, lo que lo devuelve al estado Submitted. Reabrirlo no restablece una recompensa revocada – aprueba una nueva manualmente cuando el informe se valide de nuevo.

Resolver apelaciones

Cuando un investigador apela una decisión (consulta Researcher Portal), aparece un panel de Researcher appeal en la página del informe con la justificación del investigador, y se notifica a la persona de guardia con una alerta que enlaza directamente a él.

Desde el panel, un administrador resuelve la apelación:

  • Aceptar — estás de acuerdo con el investigador. Si el informe estaba desestimado, aceptarla lo reabre y lo devuelve a Submitted (triaje) a través del mismo flujo de reapertura auditado descrito más arriba. Se envía un correo al investigador informándole de que la apelación fue aceptada.
  • Rechazar — mantienes la decisión original. Se envía un correo al investigador informándole de que la decisión se mantiene.

La decisión, la persona revisora y la marca de tiempo quedan registradas en el informe y se añaden a su cronología. Al igual que con la reapertura, aceptar una apelación no restablece una recompensa revocada – aprueba una nueva una vez que el informe se valide de nuevo.

Asignación de informes

Haz clic en el avatar del asignado (o “Assign”) en cualquier tarjeta de informe o vista de detalle para asignar un miembro del equipo. El asignado recibe una notificación en la aplicación y un email.

Cuando la asignación automática está habilitada, los informes entrantes se asignan automáticamente a la persona de guardia. Si nadie está de guardia, se usa el asignado por defecto como respaldo. Consulta On-Call Rotation para más detalles sobre cómo configurar turnos y horarios.

Para la asignación masiva, selecciona varias tarjetas de informe mediante sus casillas y elige Assign en la barra de acciones masivas que aparece en la parte inferior del tablero.

Los informes Crítico y Súper crítico envían automáticamente un email de escalamiento a tus contactos de escalamiento configurados, independientemente de la asignación. Configura los contactos de escalamiento en VDP > Program Settings > Triage.

Operaciones masivas

Selecciona varias tarjetas de informe mediante sus casillas para entrar en el modo de selección masiva. Una barra de acciones flotante aparece en la parte inferior del tablero con tres opciones:

Acción Descripción
Assign Asignar todos los informes seleccionados a un miembro del equipo
Dismiss Desestimar todos los informes seleccionados con un motivo compartido
Change Severity Actualizar el nivel de severidad en todos los informes seleccionados

La desestimación masiva requiere que elijas un único motivo que aplique a todos los informes seleccionados. Los informes con recompensa aprobada se omiten – el aviso de confirmación muestra cuántos se omitieron – porque revocar una recompensa requiere el modal de desestimación en la página individual del informe. Cada operación masiva se registra de forma individual en el historial de auditoría de cada informe afectado.

En resumen

  • Revisa el tablero de triaje a diario en busca de nuevos envíos
  • Comprueba el filtro “Breached” de SLA por si hay informes atrasados
  • Evalúa la severidad (CVSS) en cada informe validado
  • Asigna informes a miembros del equipo con experiencia en el dominio
  • Desestima con prontitud los informes claramente inválidos para mantener la cola limpia
  • Usa “Needs Clarification” cuando los pasos de reproducción sean insuficientes
  • Revisa con escrutinio adicional los informes marcados por IA antes de desestimarlos o validarlos

Y ahora qué

Escriba para buscar...