Integración con IA
Cómo usar el asistente de IA integrado y las herramientas MCP externas para automatizar el triaje de VDP, la evaluación de severidad y la comunicación con investigadores.
Por qué es importante
El triaje de seguridad es un trabajo repetitivo y de alta carga cognitiva. Cada informe requiere verificación de alcance, detección de duplicados, evaluación de severidad y una respuesta al investigador. La asistencia de IA reduce el tiempo promedio de triaje de horas a minutos.
El agente de IA de CSIRT puede leer todo el estado de tu programa, sugerir severidad, comprobar duplicados y redactar respuestas sin sacarte del contexto de tu flujo de trabajo. Funciona como copiloto, no como piloto automático: cada acción de escritura requiere tu confirmación explícita antes de ejecutarse.
Cribado con IA (automático)
Cada informe enviado se evalúa automáticamente antes de llegar a tu tablero de triaje. No requiere configuración: el cribado se ejecuta en cada envío.
El cribado detecta doce señales de basura generada por IA:
| Señal | Qué detecta |
|---|---|
| Nombres de función alucinados | Referencias a métodos o API que no existen en frameworks comunes ni en el código objetivo |
| Números de CVE inventados | Identificadores CVE que no aparecen en la base de datos NVD |
| CVE existente presentada como nueva | Una CVE ya publicada presentada como si fuera un hallazgo novedoso |
| Remediación genérica | Consejos de corrección de plantilla que sirven para cualquier vulnerabilidad y no están ligados al problema reportado |
| Sin prueba de concepto específica | «Puedo demostrarlo si lo solicitas» sin pasos de reproducción, capturas de pantalla ni exploit ejecutable |
| Lenguaje de plantilla | Frases copiadas y pegadas de una plantilla de informe de bug bounty que servirían para cualquier objetivo |
| Pasos de reproducción vagos | Instrucciones de reproducción demasiado imprecisas para seguir o reproducir realmente el problema |
| Estructura de plantilla | La disposición general del informe refleja una plantilla genérica en lugar de una investigación real |
| Detalles técnicos incoherentes | Afirmaciones que se contradicen entre sí o que no cuadran técnicamente |
| Referencias a elementos de código inexistentes | Archivos, endpoints, parámetros o símbolos que no existen en el objetivo |
| Descripción académica | Explicación de manual de una clase de vulnerabilidad sin evidencia de que afecte a este objetivo |
| Título genérico | Un título que nombra una clase de vulnerabilidad sin nada específico del informe |
Cada informe recibe una puntuación de confianza (0–100) y una recomendación:
| Recomendación | Significado |
|---|---|
| Pass | No se detectaron señales de basura. El informe entra al tablero de triaje con normalidad. |
| Review | Señales leves presentes. El informe entra al tablero de triaje con una insignia de advertencia. |
| Flag | Señales fuertes de basura. El informe se marca en su tarjeta del tablero de triaje con una insignia de IA y una justificación. |
Los informes marcados nunca se rechazan automáticamente. El resultado del cribado y su justificación quedan visibles en la vista de detalle del informe para que tú tomes la decisión final. Es solo orientativo: el sistema es deliberadamente conservador para evitar marcar por error a investigadores legítimos, especialmente a quienes no son hablantes nativos de inglés.
Agente de IA de CSIRT
Accede al asistente de IA mediante el chat de la barra lateral (el icono de chat en la navegación superior). En las páginas de VDP, el asistente carga automáticamente el agente de CSIRT con acceso completo a los datos de tu programa.
El agente tiene acceso a 41 herramientas en dos categorías:
- Herramientas de lectura (18): consultar el estado del programa, informes, investigadores, karma, métricas, datos financieros, compartidos externos con pares, postmortems y el catálogo de componentes
- Herramientas de escritura (23): configurar el programa (crear, configurar, activar, prueba), triar informes, registrar evaluaciones, resolver apelaciones, ajustar karma y recompensas, enviar mensajes, proponer y votar importes de recompensa, aprobar recompensas, vincular referencias externas, compartir informes con pares externos, redactar postmortems y gestionar el catálogo de componentes
Las herramientas de escritura requieren confirmación. La IA describirá lo que está a punto de hacer y esperará tu aprobación antes de ejecutar.
Herramientas de lectura
| Herramienta | Qué hace |
|---|---|
csirt_get_setup_guide |
Empieza aquí. Resumen del programa con recuento de informes, cumplimiento de SLA y una lista de comprobación de configuración, además del esquema de configuración, los valores predeterminados recomendados y la herramienta exacta que llamar a continuación. Se comporta con elegancia en cuentas nuevas sin programa. |
csirt_get_program |
Configuración completa del programa: las siete pestañas de ajustes presentadas como datos legibles |
csirt_list_reports |
Lista de informes filtrable con indicadores de SLA (filtra por estado, severidad, asignado y estado de SLA) |
csirt_get_report |
Detalle completo del informe: evaluación, mensajes, cronología, recompensa otorgada y perfil del investigador |
csirt_get_report_timeline |
Registro cronológico de cada evento de un informe (transiciones de estado, mensajes, evaluaciones, asignaciones) |
csirt_check_duplicates |
Encuentra duplicados candidatos a partir de coincidencias de endpoint y tipo de vulnerabilidad |
csirt_validate_scope |
Comprueba si el endpoint afectado de un informe cae dentro del alcance configurado del programa |
csirt_suggest_severity |
Devuelve el contexto del informe junto con la matriz de recompensas para que la IA razone sobre la severidad apropiada |
csirt_get_bounty_benchmark |
Datos históricos de recompensas por nivel de severidad o tipo de vulnerabilidad (mediana, promedio, rango, ejemplos recientes) |
csirt_list_messages |
Hilo de mensajes completo de un informe, incluidas las notas internas |
csirt_get_ledger |
Pista de auditoría financiera, filtrable por informe, tipo de entrada y rango de fechas |
csirt_get_metrics |
MTTA, MTTR, porcentaje de cumplimiento de SLA, informes por severidad y estado, mejores investigadores y total de recompensas |
csirt_get_researcher |
Perfil del investigador con historial de envíos, nivel de karma y total de recompensas ganadas |
csirt_get_researcher_karma |
Puntuación de karma de un investigador, nivel, señal, desglose de reputación e historial reciente de eventos de karma (búsqueda por ID con prefijo o correo electrónico) |
csirt_list_researchers |
Directorio de investigadores filtrable con recuento de informes y totales de recompensas |
csirt_list_report_shares |
Lista los compartidos externos activos con pares en un informe (invitaciones por correo y cualquiera con el enlace), con auditoría de visualizaciones y la URL para compartir. Encuentra aquí un share_id para revocarlo con csirt_share_report. |
csirt_get_postmortem |
El postmortem (análisis de causa raíz) de un informe resuelto: resumen, severidad, categoría, cronología del incidente, tiempo hasta la corrección, más la causa, las acciones correctivas y las lecciones aprendidas. Usa csirt_set_postmortem para redactar uno. |
csirt_list_components |
Los componentes del catálogo del programa (áreas de producto a las que se enrutan los informes), cada uno con sus patrones de alcance y valores de enrutamiento predeterminados (canal de Slack, responsable predeterminado) |
Herramientas de escritura
Las herramientas de escritura requieren confirmación explícita antes de ejecutarse. La IA te dirá qué está a punto de hacer y tú debes aprobar la acción.
| Herramienta | Qué hace |
|---|---|
csirt_create_program |
Crea el VDP en estado Borrador con valores predeterminados sensatos. Plan gratuito, idempotente. El primer paso para poner en marcha un programa. |
csirt_configure_program |
Establece cualquier subconjunto de las siete secciones de configuración (alcance, matriz de recompensas, SLA, triaje, pagos, spam, security.txt) en una sola llamada. Importes en céntimos; las claves reflejan csirt_get_program. |
csirt_activate_program |
Pone el programa en producción: publica el portal público y acepta informes reales. Requiere confirmación humana; se niega hasta que estén definidos el alcance y el correo de contacto de security.txt. |
csirt_start_trial |
Inicia una prueba gratuita de 30 días del complemento VDP, sin tarjeta y con cancelación automática. Nunca captura una tarjeta: el pago se queda en la interfaz web. |
csirt_triage_report |
Avanza el estado de un informe (p. ej., de Enviado a Triado) con un comentario opcional. La desestimación requiere un código de motivo; un informe con una recompensa aprobada debe desestimarse mediante csirt_dismiss_report
|
csirt_assess_report |
Registra un vector CVSS y una evaluación de severidad en un informe |
csirt_dismiss_report |
Desestima un informe con un código de motivo (fuera de alcance, duplicado, informativo, no reproducible, spam, otro) y una nota opcional. Revoca una recompensa aprobada cuando se confirma revoke_bounty: true
|
csirt_resolve_appeal |
Resuelve la apelación pendiente de un investigador sobre un informe (aceptada o rechazada). Aceptar un informe desestimado lo reabre; rechazar mantiene el resultado. El investigador recibe la decisión por correo. |
csirt_assign_report |
Asigna un informe a un miembro del equipo para su investigación |
csirt_draft_response |
Guarda una respuesta en el informe como borrador para que una persona la revise y la envíe. No envía ningún correo a nadie. Un borrador abierto por informe; se niega a sobrescribir un borrador que ha editado una persona. Disponible para cualquier miembro de CSiRT. |
csirt_send_message |
Publica un mensaje en el hilo del informe. Las notas internas siempre están permitidas; los mensajes externos escriben al investigador por correo y se rechazan salvo que el programa haya activado el envío directo por parte de los agentes. |
csirt_propose_bounty |
Pone un importe de recompensa sobre la mesa para que el equipo opine. No aprueba ni paga nada, y el investigador nunca ve una propuesta. Una propuesta abierta por informe — proponer de nuevo la sustituye. Disponible para cualquier miembro de CSiRT. |
csirt_vote_bounty_proposal |
Registra el acuerdo o la objeción del propio usuario sobre la propuesta de recompensa abierta de un informe. Una objeción debe llevar un importe alternativo. Consultiva — llegar a un acuerdo no aprueba nada. Disponible para cualquier miembro de CSiRT. |
csirt_approve_bounty |
Aprueba un importe de recompensa para un informe resuelto (solo con el complemento VDP) |
csirt_link_asset |
Vincula una referencia externa (ticket de Jira, PR de corrección de GitHub/GitLab, issue de Linear, documento de Notion o cualquier URL) a un informe para que el equipo siga el trabajo relacionado. Solo interno: nunca se muestra al investigador. |
csirt_share_report |
Concede o revoca el acceso de un par externo a un informe. Solo comparte campos técnicos depurados (título, tipo, endpoint, descripción, repro, severidad, adjuntos): la identidad del investigador, la recompensa y las notas internas nunca cruzan el límite. |
csirt_adjust_karma |
Ajusta manualmente el karma de un investigador mediante un código de motivo predefinido con puntos fijos, vinculado al informe (y opcionalmente a un recurso vinculado) que lo justifica. El karma tiene un suelo de 0. |
csirt_adjust_bounty |
Ajusta el importe de una recompensa ya aprobada (usa antes csirt_approve_bounty si no existe ninguna). Se puede ajustar hasta que se efectúe el desembolso; opcionalmente notifica al investigador el importe anterior y el nuevo, con tus notas. |
csirt_set_postmortem |
Crea o actualiza el postmortem de un informe (upsert). Si ya existe uno, se actualiza y se añade una revisión a su registro de auditoría; si no, se crea uno nuevo. Solo cambian los campos que envías. |
csirt_create_component |
Añade un componente al catálogo (área de producto, p. ej. «Payments API») al que se enrutan los informes. Los patrones de alcance son globs de URL; los valores de enrutamiento predeterminados (canal de Slack, responsable predeterminado) son opcionales. |
csirt_update_component |
Actualiza un componente del catálogo. Solo cambian los campos que envías; los campos omitidos conservan su valor actual. |
csirt_archive_component |
Archiva (borrado reversible) un componente del catálogo para que deje de enrutar informes nuevos. Los informes existentes conservan su vínculo con el componente. |
csirt_assign_component |
Establece, quita o sugiere el componente del catálogo al que se enruta un informe. Envía un identificador de componente para confirmar el vínculo, «none» para quitarlo, u omítelo para obtener solo una sugerencia: las sugerencias nunca se aplican automáticamente. |
Todas las herramientas de escritura requieren el scope csirt_write cuando se accede mediante clientes MCP externos.
Ejemplos de prompts
Úsalos en el chat de la barra lateral en cualquier página de VDP:
"Show me my triage queue — what's at risk of breaching SLA?"
"Check report rpt_abc123 for duplicates and suggest a severity."
"Draft a validation response for report rpt_abc123 explaining we've confirmed the SQL injection."
"What's our SLA compliance rate this month?"
"List all unassigned Critical reports."
"Triage report rpt_abc123 to Validated and assign it to Alice."
"Approve a $500 bounty for report rpt_abc123 — it's a High severity XSS."
"Show me the researcher profile for the person who submitted rpt_abc123."
"What does the bounty history look like for High severity findings?"
El asistente usa las herramientas de lectura para reunir contexto y luego las de escritura cuando le pides que actúe. Puedes encadenar comandos con naturalidad: «check for duplicates, suggest severity, and draft a response» ejecuta tres herramientas en secuencia.
Conexión mediante MCP (clientes externos)
Para asistentes de IA externos como Claude Desktop, Claude Code o agentes MCP personalizados, las 41 herramientas de CSIRT están disponibles a través de la API de MCP. El módulo CSiRT debe concederse en la pantalla de consentimiento para que haya herramientas de CSIRT disponibles, y las herramientas de escritura requieren el scope csirt_write.
Para montar un programa desde cero con un agente, consulta Configurar un VDP con un agente de IA, que recorre la cadena csirt_get_setup_guide → csirt_create_program → csirt_configure_program → csirt_activate_program.
Consulta Conectar asistentes de IA para las instrucciones de configuración, el flujo de autorización y la gestión de scopes.
Una vez conectado, el cliente externo tiene acceso al mismo conjunto de herramientas que el chat integrado de la barra lateral. Empieza con csirt_get_setup_guide para obtener una visión general de tu programa antes de usar otras herramientas.
Endpoint llms.txt
Tu portal de seguridad sirve automáticamente una descripción legible por máquina en /llms.txt. Sigue el estándar llms.txt y proporciona a los asistentes de IA un contexto estructurado sobre tu programa de divulgación de vulnerabilidades: alcance, reglas de participación y pautas de envío. No necesita configuración; se actualiza automáticamente a medida que cambias los ajustes de tu programa.
En resumen
- Abre un informe y prueba «Check for duplicates» en la barra lateral de IA
- Pregúntale al asistente «What’s our SLA compliance this month?» desde el panel de VDP
- Prueba «Draft a dismissal response» en un informe fuera de alcance
- Revisa la insignia de cribado con IA en un informe marcado para entender qué lo activó
-
Conecta un cliente MCP externo y llama a
csirt_get_setup_guidepara verificar el acceso - Lee Triar informes para el flujo de triaje completo que admiten estas herramientas