Logo StartupKit
ES

Enrutar informes a los equipos

Crea un catálogo de componentes de tus áreas de producto para que los informes de vulnerabilidad entrantes se sugieran al equipo propietario —y sean reclamados por él—.

Por qué es importante

En un programa pequeño, una sola persona de triaje lee todos los informes. A medida que tu programa crece, una única cola se convierte en un cuello de botella: un fallo en Payments y un fallo en Mobile acaban en el mismo montón, y el ingeniero adecuado solo ve el informe si alguien se acuerda de avisarle.

Un catálogo de componentes resuelve esto. Describes tus áreas de producto una sola vez —«Payments API», «Mobile App», «Marketing Site»— y Kit sugiere el área propietaria de cada informe entrante, asigna la propiedad al responsable predeterminado de esa área y avisa al canal de Slack del equipo responsable en cuanto el informe se valida. El enrutamiento es siempre orientativo y lo confirma una persona: Kit propone, tu equipo decide.

Note

Los componentes son totalmente opcionales. Sin ellos, los informes funcionan igual que siempre; solo ganas el enrutamiento. Empieza con dos o tres áreas que correspondan a límites de equipo claros y añade más a medida que las necesites.

Qué es un componente

Un componente es una entrada de catálogo, específica de cada programa, que describe un área de producto dentro de tu programa de divulgación de vulnerabilidades (VDP). Cada componente reúne cuatro elementos:

Campo Función
Nombre La etiqueta del área que se muestra en los informes y en Slack (p. ej. Payments API). Obligatorio.
Descripción Un breve resumen de lo que abarca el área. El clasificador de IA lo lee para decidir a dónde pertenece un informe ambiguo, así que sé específico.
Patrones de alcance Globs de URL que se comparan con el endpoint afectado de un informe (consulta Patrones de alcance más abajo).
Canal de Slack El canal del equipo responsable. Recibe una notificación con el botón «Encargarme» (para hacerse cargo del informe) en cuanto se valida un informe enrutado.
Responsable predeterminado Un miembro del equipo que pasa a ser propietario automático de los informes enrutados a esta área, si el informe aún no tiene responsable asignado.

Solo el nombre es obligatorio. Un componente con únicamente un nombre ya funciona como etiqueta manual; añade patrones de alcance, un canal y un responsable para desbloquear las sugerencias y el enrutamiento automáticos.

Configurar los componentes

Abre VDP > Configuración del programa > Componentes. La pestaña Componentes es el catálogo: aquí puedes añadir, editar y archivar áreas de producto.

Para añadir uno, haz clic en Nuevo componente, rellena los campos y guarda:

  • Dale al área un nombre claro y una descripción específica
  • Añade uno o más patrones de alcance, un glob por línea
  • Elige el canal de Slack del equipo responsable (opcional)
  • Elige un responsable predeterminado (opcional)

Los nuevos suscriptores del VDP también ven un paso opcional, «Configurar áreas de producto», durante la incorporación. Puedes completarlo en ese momento u omitirlo y crear tu catálogo más tarde; nada más depende de ello.

Patrones de alcance

Los patrones de alcance son globs de URL, uno por línea, que se comparan con el endpoint afectado que un investigador indica en su informe. Impulsan la mitad determinista del enrutamiento: si el endpoint de un informe coincide con los patrones de exactamente un componente, ese componente gana sin discusión.

La única regla que suele confundir: un patrón sin * al principio queda anclado al inicio del endpoint. Como los endpoints afectados suelen ser URLs completas que empiezan por https://, casi siempre conviene envolver la parte relevante entre * para que coincida como subcadena.

La coincidencia no distingue mayúsculas de minúsculas, y * coincide también con /, de modo que *pay* es una verdadera coincidencia de subcadena.

Dado el endpoint https://app.example.com/api/pay/charge:

Patrón ¿Coincide? Por qué
*pay* * al principio y al final: coincide con «pay» en cualquier parte de la cadena
*/api/pay/* Los comodines en ambos extremos fijan el segmento de ruta aparezca donde aparezca
https://app.example.com/* Sin * inicial, pero el endpoint empieza exactamente por este texto
app.example.com/* Anclado al inicio, pero el endpoint empieza por https://, no por app.
/api/pay/charge Anclado al inicio: el endpoint no empieza por /api/…

Tip

En caso de duda, envuelve la parte distintiva de la ruta entre *: *payments* o */api/pay/*. Reserva los patrones anclados al inicio (https://…/*) para cuando quieras coincidir deliberadamente con un host exacto desde el primer carácter.

Cómo funciona el enrutamiento

El enrutamiento es solo de sugerencia. Kit nunca reasigna un informe de forma silenciosa: cada uno de los pasos siguientes muestra una sugerencia que tu equipo confirma.

1. Kit sugiere un área

Cuando se envía un informe, Kit elige un componente candidato en dos fases:

  1. Coincidencia determinista: si el endpoint afectado del informe coincide con los patrones de alcance de exactamente un componente, es una coincidencia inequívoca y de plena confianza.
  2. Clasificador de IA: si los patrones no coinciden con nada, o coinciden de forma ambigua con dos o más componentes, un clasificador de IA lee el informe frente a las descripciones de tus componentes y propone la mejor opción, o none.

Kit solo muestra una sugerencia cuando tiene una confianza razonable. Si nada encaja, el informe simplemente llega sin área sugerida: el enrutamiento nunca bloquea ni retrasa un envío.

2. El equipo confirma el área

En la página del informe, la barra lateral muestra una tarjeta «Área / equipo responsable». Cuando Kit tiene una sugerencia, aparece como «Área sugerida» con un porcentaje de confianza y un motivo de una línea. Entonces tu equipo puede:

  • Aceptar la sugerencia,
  • Elegir un área distinta en el selector, o
  • Dejarla sin asignar.

Aceptar un componente establece el área del informe y, si ese componente tiene un responsable predeterminado, asigna a esa persona como propietaria del informe (salvo que ya tenga propietario). Puedes borrar o cambiar el área en cualquier momento desde la misma tarjeta.

3. Se avisa al equipo responsable

Una vez que un informe enrutado se valida (supera el triaje; consulta Triaje de informes), si su componente tiene un canal de Slack, Kit publica una tarjeta de notificación en ese canal con un botón «Encargarme». Cualquier miembro del equipo puede hacer clic en él para reclamar el informe y convertirse en su propietario. El aviso se envía exactamente una vez por informe, así que revalidar o reasignar no llenará el canal de mensajes.

Note

El aviso de Slack solo se envía tras la validación, no al enviarse el informe, de modo que el canal de un equipo permanece en silencio hasta que se confirma que un informe es real y está dentro del alcance. Configura Slack en Configuración de la cuenta > Integraciones.

Qué hacer y qué no

Qué hacer Qué no hacer
Envolver la parte relevante de la ruta entre * (*payments*) Omitir el * inicial y esperar una coincidencia de subcadena
Escribir descripciones específicas: el clasificador de IA las lee Confiar solo en los patrones de alcance para áreas con límites de URL difusos
Tratar cada sugerencia como una propuesta por confirmar Dar por hecho que un área sugerida ya está asignada: no lo está hasta que se acepta
Definir un responsable predeterminado para áreas con un propietario claro Apuntar un componente a un canal de Slack del que Kit no es miembro
Archivar las áreas que retiras Borrar el historial: archivar lo conserva

Gestión mediante herramientas MCP

El catálogo también está disponible para agentes de IA y clientes de API a través de las herramientas MCP, de modo que puedes construir y enrutar tu catálogo de forma programática:

  • csirt_list_components: lista el catálogo (lectura)
  • csirt_create_component / csirt_update_component: añade o edita un área (escritura)
  • csirt_archive_component: retira un área (escritura)
  • csirt_assign_component: establece, borra o solicita el área sugerida de un informe. Omite el id del componente para obtener la sugerencia determinista/de IA sin cambiar nada y, después, vuelve a llamarlo con el id sugerido para confirmarlo.

Las herramientas de escritura requieren el scope csirt_write y siempre piden confirmación antes de actuar, reflejando el flujo de sugerir y confirmar de la interfaz. Consulta Integración con IA para ver la referencia completa de herramientas y la configuración de la conexión.

Archivar un componente

Para retirar un área, haz clic en Archivar en la pestaña Componentes. Archivar es un borrado lógico:

  • Los informes ya enrutados al componente conservan su historial: el área sigue apareciendo en esos informes.
  • Los nuevos informes dejan de enrutarse a él: desaparece de las sugerencias y del selector.

Es la forma segura de retirar un área de producto sin reescribir el pasado. No hay borrado definitivo desde la interfaz; archivar es intencionadamente seguro y reversible, en lugar de destructivo.

En resumen

  • Crea un componente para cada área de producto con un límite de equipo claro
  • Escribe una descripción específica: el clasificador de IA depende de ella
  • Añade patrones de alcance, envolviendo la parte distintiva de la ruta entre * (p. ej. *payments*)
  • Define un canal de Slack para que el equipo propietario reciba el aviso «Encargarme»
  • Define un responsable predeterminado para las áreas con un propietario claro
  • En los informes nuevos, confirma o cambia el área sugerida en la tarjeta de la barra lateral
  • Archiva las áreas que retiras en lugar de borrarlas

Y ahora qué

  • Triaje de informes: el tablero de triaje, los indicadores de SLA y el paso de validación que dispara las notificaciones del equipo
  • Configurar tu programa: el alcance, los SLA, la matriz de recompensas y el resto de la configuración del programa
  • Integración con IA: el conjunto completo de herramientas MCP, incluidas las del catálogo de componentes

Escriba para buscar...