En el mundo del software de código abierto, la seguridad se ha convertido en un aspecto crucial del proceso de desarrollo. A medida que la dependencia global del software de código abierto crece, los desarrolladores se encuentran dedicando casi tres veces más tiempo a cuestiones de seguridad en comparación con años anteriores. Este cambio refleja la creciente importancia de proteger estos sistemas vitales de cualquier vulnerabilidad potencial.
Desde el GitHub Security Lab, bajo la dirección de Madison Oliver, un equipo de desarrolladores y expertos en seguridad trabaja incansablemente para proteger el entorno de código abierto. Su misión es descubrir y divulgar nuevas vulnerabilidades, educar a la comunidad a través de investigaciones y analizar diversas variantes de proyectos de software de código abierto, garantizando así que este tipo de software continúe siendo seguro.
Las Vulnerabilidades y Exposiciones Comunes, conocidas como CVE, se han transformado desde su creación en 1999. En ese año, se publicaron solo 321 registros de CVE, pero el último año se cerró con más de 28,900 registros, lo que representa un incremento del 460% en la última década. Este aumento de información no solo plantea un reto en cuanto a la gestión de datos, sino que también refuerza la importancia de la transparencia para mejorar la seguridad en toda la industria.
El creciente número de vulnerabilidades también ha llevado a la aparición de nuevas fallas que pueden tener repercusiones a lo largo de la cadena de suministro de software. Por ejemplo, las vulnerabilidades relacionadas con la ejecución especulativa, como Spectre y Meltdown, junto con el aumento de ataques de denegación de servicio por expresiones regulares (ReDoS), son tipos nuevos que requieren tácticas de mitigación actualizadas por parte de los desarrolladores.
Con el aumento de dependencias transitivas, también se incrementa la necesidad de soluciones automatizadas para gestionar estos riesgos. Herramientas como Dependabot identifican y mitigan automáticamente las vulnerabilidades en las dependencias del código, mejorando la eficiencia en la organización de estos riesgos. Además, las pruebas de seguridad de aplicaciones estáticas (SAST) y las herramientas de análisis de composición de software (SCA) son fundamentales para detectar y remediar vulnerabilidades tanto en el código propietario como en las dependencias de código abierto.
El creciente compromiso de los mantenedores de código abierto para publicar datos de vulnerabilidad sugiere que la comunidad está asumiendo un papel más activo en la seguridad. Desde que GitHub Security Lab fue reconocido como una Autoridad de Numeración CVE en 2019, se ha convertido en el quinto mayor publicador de CVE, lo que destaca el compromiso por asegurar el ecosistema de código abierto.
La automatización y las mejoras en las herramientas de seguridad son esenciales para manejar el aumento en el volumen de datos de vulnerabilidad. En GitHub, las API de proveedores de datos de vulnerabilidad se utilizan para integrar estos datos para su revisión y notificar a los usuarios mediante alertas de Dependabot. Todo esto demuestra cómo la seguridad del software de código abierto está evolucionando y cómo la comunidad debe continuar adaptándose para enfrentar los desafíos de seguridad futuros.