Note
Las campañas de seguridad están actualmente en versión preliminar pública y están sujetas a cambios.
Elementos de una campaña de seguridad de éxito
Las campañas de seguridad de éxito para resolver alertas a gran escala reúnen muchas características en común, entre las que se incluyen:
- Selección de un grupo relacionado de alertas de seguridad para la corrección.
- Garantía de que el administrador de la campaña está disponible para la colaboración, las revisiones y las preguntas sobre las correcciones.
- Acceso a información educativa sobre el tipo de alertas incluidas en la campaña. .
- Acceso a GitHub Copilot Chat para que los desarrolladores lo usen para conocer las vulnerabilidades resaltadas por las alertas de seguridad de la campaña.
- Definición de una fecha límite realista para la campaña, teniendo en cuenta el número de alertas que pretendes resolver.
- Difusión de la colaboración entre los equipos de desarrollo e identificación de la mejor manera de involucrarlos en tu organización.
Para obtener información sobre la experiencia de los desarrolladores, consulta "Corrección de alertas de una campaña de seguridad".
Selección de alertas de seguridad para la corrección
Tu primera idea puede ser identificar todas las alertas más urgentes y crear una campaña de seguridad para resolverlas. Si los desarrolladores ya tienen un buen conocimiento de la creación de código seguro y están interesados en corregir posibles vulnerabilidades, este podría ser un enfoque correcto para tu empresa. Sin embargo, si necesitas desarrollar conocimientos sobre la creación de código seguro y las vulnerabilidades comunes, te beneficiarás de un enfoque más estratégico.
Por ejemplo, si tienes muchas alertas de vulnerabilidades de scripting entre sitios, puedes hacer lo siguiente:
- Crear contenido educativo para los desarrolladores en un repositorio mediante recursos de la Fundación OWASP. Consulta Scripting entre sitios (XSS).
- Crear una campaña para corregir todas las alertas de esta vulnerabilidad, junto con un vínculo al contenido educativo en la descripción de la campaña.
- Celebrar una sesión de aprendizaje u otro evento para resaltar esta oportunidad y así adquirir confianza en la creación de código seguro mientras se resuelven los errores reales.
- Asegurarse de que el miembro del equipo de seguridad asignado para administrar la campaña está disponible para revisar las solicitudes de cambios creadas para resolver las alertas de la campaña, y colaborar en caso necesario.
Plantillas de filtro de campaña
Al seleccionar alertas para incluir en una campaña de seguridad, puedes usar cualquiera de los filtros de la página de alertas de seguridad para definir un subconjunto de alertas. Como alternativa, puedes elegir una plantilla de campaña para usar uno de los filtros predefinidos para necesidades comunes, por ejemplo, "Scripting entre sitios (CWE-79)".
Limitaciones de las campañas de seguridad
Las siguientes limitaciones tienen como fin promover la adopción de un enfoque equilibrado y comedido para corregir las alertas en el código. Un enfoque iterativo, que aborde algunos conjuntos de alertas específicos a la vez, es probable que lleve a un cambio sostenible y a largo plazo en la posición de seguridad.
- 10 campañas de seguridad activas a la vez (sin límites en campañas cerradas) como máximo.
- Cada campaña puede contener hasta 1000 alertas distribuidas entre hasta 100 repositorios.
Si decides crear una campaña que supere estos límites, se omitirán alertas para que la campaña esté en consonancia con los límites. Las alertas de repositorios con inserciones recientes tienen prioridad para su inclusión en la campaña.
Definición del rol del administrador de campañas
Al crear una campaña de seguridad, debes seleccionar un "administrador de campañas". El administrador de campañas debe tener el rol de propietario de la organización o administrador de seguridad.
El nombre del administrador de campañas es visible para los desarrolladores cuando participan en la campaña. Si deseas aumentar la tasa de corrección de las alertas y aumentar el conocimiento del equipo de seguridad, esta es una oportunidad clave para crear relaciones de colaboración con los desarrolladores. Idealmente, un administrador de campañas está disponible para responder a preguntas, colaborar en correcciones difíciles y revisar correcciones de solicitudes de cambios durante toda la campaña.
Combinación del entrenamiento sobre seguridad con una campaña de seguridad
Si el equipo de seguridad ya proporciona entrenamiento para los desarrolladores sobre la creación de código seguro, una excelente manera de reforzar su aprendizaje es elaborar una campaña con alertas escogidas para permitir que los desarrolladores usen las capacidades de la sesión de entrenamiento. Incluso si no tienes un programa de entrenamiento formal, tiene sentido proporcionar información sobre los tipos de vulnerabilidades de seguridad incluidos en la campaña, ejemplos de cómo corregirlos y cómo probar las correcciones. Esto simplificará el rol del administrador de campañas, ya que podrá dirigir a los desarrolladores a estos recursos para obtener respuestas a preguntas básicas.
La Fundación OWASP proporciona muchos recursos para aprender sobre las vulnerabilidades más comunes y MITRE Corporation mantiene una lista detallada de puntos débiles comunes. Consulta Acerca de la Fundación OWASP y Acerca de CWE.
Ofrecer la ayuda de la IA para aprender sobre las vulnerabilidades de seguridad
GitHub Copilot Autofix se desencadena automáticamente para sugerir una resolución para cada alerta de seguridad. Sin embargo, los desarrolladores a menudo querrán más información sobre por qué el código original no es seguro y cómo probar que la corrección es correcta y no interrumpe otros componentes.
GitHub Copilot es una importante herramienta para los desarrolladores que tienen preguntas sobre la creación de código seguro, cómo corregir alertas de seguridad y probar su corrección. Comprueba que todos los desarrolladores de tu organización tienen acceso a Copilot en su IDE y en GitHub. Consulta "Concesión de acceso a Copilot para los miembros de tu organización".
Tip
La capacidad de GitHub Advanced Security proporciona a Copilot Chat contexto adicional para responder a preguntas sobre las alertas de seguridad.
Aspectos que se deben tener en cuenta al iniciar una campaña de seguridad y definir una fecha límite
Como en cualquier proyecto, es importante establecer tiempos realistas para evitar que los desarrolladores se desanimen y no participen en la campaña de seguridad. A menos que tu empresa esté resolviendo las alertas de seguridad como parte de una campaña mayor para reducir la deuda técnica, la mayoría de los desarrolladores no tendrán tiempo asignado para resolver alertas. Debes calcular las tasas de corrección en función del tiempo que los desarrolladores pueden encontrar entre tareas programadas. También vale la pena comprobar las fechas límite clave de la empresa para las que los desarrolladores pueden estar trabajando y las festividades nacionales.