Acerca de la exposición a dependencias vulnerables
Evaluar la exposición a dependencias vulnerables es fundamental si quieres evitar lo siguiente:
-
Poner en peligro la cadena de suministro. Los atacantes pueden aprovechar vulnerabilidades en dependencias de código abierto o de terceros para insertar código malintencionado, elevar privilegios u obtener acceso no autorizado a los sistemas. Las dependencias en peligro pueden servir como puntos de entrada indirectos para actores malintencionados, lo que conduce a incidentes de seguridad de gran alcance.
-
Propagación generalizada del riesgo. Las dependencias vulnerables a menudo se reutilizan en varias aplicaciones y servicios, lo que significa que un único error se puede propagar en toda la organización, lo que aumenta el riesgo y el impacto de la explotación.
-
Tiempo de inactividad no planeado e interrupción operativa. La explotación de vulnerabilidades de dependencia puede provocar interrupciones de aplicaciones, degradar la calidad del servicio o errores en cascada en sistemas críticos, lo que interrumpe las operaciones empresariales.
-
Problemas normativos y de licencias. Muchas regulaciones y estándares del sector requieren que las organizaciones solucionen proactivamente las vulnerabilidades conocidas en su cadena de suministro de software. Si no se corrigen las dependencias vulnerables, se pueden producir incumplimientos, auditorías, sanciones legales o infracciones de las obligaciones de licencia de código abierto.
-
Aumento de los costos de corrección. Cuanto más tiempo pase sin abordar las dependencias vulnerables, serán más difíciles y costosas de corregir, especialmente si están profundamente integradas o si se producen incidentes. La detección y la corrección tempranas reducen el riesgo de una respuesta a incidentes costosa, revisiones de emergencia y daños de reputación.
La evaluación periódica de la exposición a vulnerabilidades de dependencias es una buena práctica para ayudar a identificar los riesgos a tiempo, implementar estrategias de corrección eficaces y mantener software resistente y confiable.
Dependabot supervisa automáticamente las dependencias del proyecto para detectar vulnerabilidades y paquetes obsoletos. Cuando detecta un problema de seguridad o una nueva versión, crea solicitudes de cambios para actualizar las dependencias afectadas, lo que te ayuda a abordar rápidamente los riesgos de seguridad y mantener el software actualizado. Esto reduce el esfuerzo manual y ayuda a garantizar que el proyecto permanezca seguro. Consulta Guía de inicio rápido de Dependabot.
GitHub proporciona un conjunto completo de métricas de Dependabot para ayudarte a supervisar, priorizar y corregir estos riesgos en todos los repositorios de tu organización. Consulta Visualización de métricas para alertas de Dependabot.
Tareas clave para administradores de AppSec
1. Supervisión de métricas de vulnerabilidades
Usa la información general de las métricas de Dependabot para obtener visibilidad del estado actual de las vulnerabilidades de dependencia de la organización. Consulta Visualización de métricas para alertas de Dependabot.
- Priorización de alertas: revisa el número de Dependabot alerts abiertas y usa filtros como gravedad de CVSS, probabilidad de vulnerabilidad de EPSS, disponibilidad de revisiones y si realmente se usa una dependencia vulnerable en artefactos implementados. Consulta Filtros de vista del panel Dependabot.
- Desglose de nivel de repositorio: identifica qué repositorios tienen el mayor número de vulnerabilidades críticas o aprovechables.
- Seguimiento de corrección: seguimiento del número y el porcentaje de alertas corregidas en el tiempo para medir la eficacia del programa de administración de vulnerabilidades.
2. Clasificación de los esfuerzos de corrección
Céntrate en las vulnerabilidades que presentan el riesgo más alto para tu organización.
- Prioriza las alertas con gravedad alta o crítica, puntuaciones altas de EPSS y revisiones disponibles.
- Usa el desglose de repositorios para dirigir los esfuerzos de corrección a los proyectos con mayor riesgo.
- Anima a los equipos de desarrollo a abordar vulnerabilidades que se usan realmente en artefactos implementados a través de propiedades personalizadas del repositorio.
3. Comunicación del riesgo y el progreso
- Usa la página de métricas de Dependabot para comunicar los principales factores de riesgo y el progreso de la corrección a las partes interesadas.
- Proporciona actualizaciones periódicas sobre las tendencias, como la reducción de vulnerabilidades críticas abiertas o mejoras en las tasas de corrección.
- Resalta repositorios o equipos que requieran soporte técnico o atención adicionales.
4. Establecimiento y aplicación de directivas
- Establece directivas en toda la organización para requerir revisión de dependencias y Dependabot alerts en todos los repositorios. Consulta Acerca de la revisión de dependencias y Acerca de las alertas Dependabot.
- Asegúrate de que los nuevos repositorios se inscriben automáticamente en la supervisión de dependencias.
- Trabaja con administradores de repositorios para habilitar las actualizaciones de seguridad automatizadas siempre que sea posible. Consulta Sobre las actualizaciones de seguridad de Dependabot.
5. Evaluación del impacto de Dependabot alerts
- Revisa periódicamente cómo Dependabot alerts ayudan a impedir que las vulnerabilidades de seguridad lleguen al código base.
- Usa datos históricos para demostrar el valor de la administración proactiva de dependencias.