seguridad

Cómo Express.js reconstruyó su proceso de reporte de vulnerabilidades

Ulises Gascón
Ulises Gascón 5 de junio de 2025

El proyecto Express.js ha completado un hito importante en su compromiso continuo con la seguridad: la implementación de un proceso formal y centralizado de reporte y respuesta a vulnerabilidades.

Hasta hace poco, los reportes de seguridad se gestionaban típicamente por correo electrónico — un enfoque que funcionaba en los primeros días pero que ya no escalaba con la creciente complejidad y base de usuarios de Express. Este sistema informal introducía posibles retrasos, un manejo inconsistente y aumentaba el riesgo de que los problemas se pasaran por alto o se malinterpretaran.

Gracias al apoyo del Sovereign Tech Fund, el Grupo de Trabajo de Seguridad de Express.js ha completado una revisión integral de cómo gestionamos los reportes de vulnerabilidades.

🛠️ Mejoras clave

Flujo de trabajo formalizado para el reporte de vulnerabilidades

Se ha creado una guía completa y un flujo de proceso para guiar a los mantenedores en cada paso de la clasificación, confirmación y atención de los problemas de seguridad reportados.

Política de Seguridad unificada en todos los repositorios

Todos los repositorios de Express.js ahora comparten una única política SECURITY.md unificada para asegurar consistencia y eliminar confusiones tanto para reportantes como para mantenedores.

Asesorías de Seguridad de GitHub habilitadas

Las Asesorías de Seguridad (Security Advisories) ahora están habilitadas en todos los repositorios de Express.js, permitiendo el reporte privado y seguro de vulnerabilidades a través del sistema integrado de GitHub.

Responsabilidades claras para los mantenedores

Se han aclarado y publicado las expectativas sobre la responsabilidad y los tiempos de respuesta para reducir la ambigüedad y mejorar la capacidad de respuesta.

Un miembro del equipo de triaje de seguridad o el capitán del repositorio acusará recibo de tu reporte lo antes posible.

Después de la respuesta inicial a tu reporte, el equipo de seguridad se esforzará por mantenerte informado sobre el progreso hacia una corrección y el anuncio completo, y puede solicitar información o guía adicional.

Política de seguridad

🛡️ Express ahora está cubierto bajo el CNA de la OpenJS Foundation

A partir de junio de 2025, la OpenJS Foundation es oficialmente una CVE Numbering Authority (CNA), con autoridad para asignar identificadores CVE para vulnerabilidades de seguridad en sus proyectos alojados — incluyendo Express.

Lo que esto significa para la comunidad:

  • Las vulnerabilidades de seguridad en Express ahora pueden recibir IDs CVE oficiales a través de OpenJS, mejorando la transparencia y la coordinación.
  • La fundación proporciona soporte y herramientas para agilizar el proceso de divulgación de vulnerabilidades, particularmente para mantenedores e investigadores de seguridad.
  • Para problemas críticos, el CNA ayuda a asegurar que las divulgaciones sigan las mejores prácticas y se registren en bases de datos globales de vulnerabilidades.

Consulta la Política de Seguridad de Express para el proceso correcto de divulgación. Si es necesario, ya están disponibles rutas de escalamiento a través del CNA de OpenJS.

Este avance forma parte de un esfuerzo más amplio para fortalecer la seguridad del ecosistema de código abierto de JavaScript — especialmente para proyectos ampliamente utilizados y impulsados por la comunidad como Express.

Más información:

👀 Próximamente: Programa de Bug Bounty en desarrollo

Para mejorar aún más la seguridad de nuestro ecosistema y fomentar la divulgación responsable de vulnerabilidades, el equipo de Express.js ha comenzado a explorar la participación en una iniciativa de bug bounty enfocada en la comunidad — impulsada por el programa Sovereign Tech Resilience.

Esta colaboración tiene como objetivo:

  • Recompensar a los colaboradores por descubrir y reportar responsablemente problemas de seguridad
  • Mejorar nuestra capacidad para abordar vulnerabilidades de forma rápida y transparente
  • Fortalecer la resiliencia a largo plazo tanto para usuarios como para mantenedores

Únete a la conversación y comparte tus ideas en expressjs/discussions#345 – Propuesta de Bug Bounty

Por qué esto importa

La seguridad es una responsabilidad compartida — y debe evolucionar a medida que el proyecto crece. Con estas actualizaciones, Express.js ha sentado las bases para un sistema de respuesta a vulnerabilidades más confiable, escalable y transparente.

Estamos agradecidos con la OpenJS Foundation y el Sovereign Tech Fund por su apoyo y estamos emocionados de compartir este progreso con la comunidad en general.

¿Interesado en escribir una publicación? Revisa nuestras directrices para empezar.

Leer las directrices