Skip to main content

Agrega un archivo SECURITY.md a tus Azure Repos

Escrito por

Edward Thompson

Azure Blog

6 de mayo de 2019

0 minutos de lectura

Esta publicación destaca la práctica recomendada n.º 4 —agregar un archivo SECURITY.md a tus repositorios— de nuestra serie de 8 prácticas recomendadas de seguridad para Azure Repos.

Agrega un archivo SECURITY.md a tus Azure Repos

Es natural que la mayoría de los propietarios y encargados de mantenimiento de proyectos agreguen un archivo README.md a su repositorio. De hecho, hoy en día se espera que lo hagan, y se ve bastante mal que falte. Del mismo modo, cada vez es más común agregar un archivo SECURITY.md con información relacionada con la seguridad del proyecto. Este archivo no solo proporciona a los usuarios de tu proyecto de código abierto la información de seguridad importante que necesitan, sino que también obliga a los encargados de mantenimiento a pensar cómo deben gestionar las divulgaciones de vulnerabilidades, las actualizaciones y las prácticas generales de seguridad.

Aquí tienes un resumen general de algunos de los temas que te recomendamos incluir en el archivo SECURITY.md:

  • Política de divulgación. El informe State of Open Source Security de Snyk de 2017 muestra que solo el 21 % de los encargados de mantenimiento que no tienen una política pública de divulgación recibieron una notificación privada sobre una vulnerabilidad. Esta cifra aumenta al 73 % entre quienes sí tienen una política pública de divulgación. Esto demuestra lo importante que es definir el procedimiento para que quien reporte un problema pueda divulgar vulnerabilidades de forma responsable. Debe incluir a quién contactar y cómo hacerlo. Esto es sumamente importante, ya que te permite recibir comentarios valiosos de los usuarios de tu proyecto. Si no existe una forma sencilla y bien definida de hacer algo, es fácil que terminemos por no hacerlo. Otras personas podrían registrar la existencia de una vulnerabilidad como un problema público, haciendo que el mundo se entere por accidente antes de que haya una solución disponible. Asegúrate de dar a los usuarios de tu proyecto todas las indicaciones que necesitan para proporcionar la información adecuada a los encargados de mantenimiento cuando encuentren problemas.

  • Política de actualizaciones de seguridad. Todos los días se descubren vulnerabilidades de software. Cuando se encuentra una vulnerabilidad en tu aplicación o biblioteca, tienes la responsabilidad de informar a los usuarios de tu proyecto. Es posible que estén usando tu código abierto en producción, en sistemas críticos. Necesitas un proceso bien definido para compartir con ellos la información pertinente, incluida la gravedad de la vulnerabilidad, el riesgo que implica y cómo actualizar a una versión corregida de tu código. Define este proceso de antemano para que la información llegue a los usuarios de tu proyecto y puedan enterarse lo antes posible de las nuevas vulnerabilidades de seguridad cuando se descubran y corrijan. Algo tan sencillo como una lista de correo sobre seguridad podría ser suficiente. El archivo SECURITY.md es un buen lugar para incluir esta información en el repositorio y, si tienes un sitio web, considera crear una página independiente; consulta la página de seguridad de Express.js como ejemplo.

  • Configuración relacionada con la seguridad. Las consideraciones de seguridad de tu proyecto van más allá del código. Es probable que los usuarios de tu proyecto de código abierto necesiten agregar configuraciones al proyecto y crear ajustes para que funcione según lo necesario en su entorno. Debes proporcionarles ajustes recomendados que refuercen su postura de seguridad al implementar el proyecto. Algunos ejemplos son habilitar HTTPS, agregar una capa de autorización y, por supuesto, reemplazar las contraseñas predeterminadas (recomendaciones que muchos usuarios de MongoDB desearían haber recibido). Recuerda que muchos usuarios suelen tener conocimientos limitados de seguridad, así que cualquier consejo que puedas compartir les será de gran ayuda.

  • Brechas de seguridad conocidas y mejoras futuras. Hay que encontrar un equilibrio entre dar a los usuarios la información que necesitan para proteger su entorno y facilitarle a un atacante posibles rutas de ataque. Ten siempre en cuenta cómo podrían usar la información que compartes ambas partes. Es muy raro que un proyecto ya haya implementado todas las mejoras de seguridad que se propone. Es importante informar a los usuarios de tu proyecto sobre los controles de seguridad que todavía no están implementados. Tus usuarios merecen conocer toda la situación para tomar decisiones informadas sobre cómo usar el proyecto. Quién sabe: ¡quizás incluso recibas de ellos contribuciones para implementar alguno de los controles de seguridad de la lista!


Sigue leyendo la lista de 8 prácticas recomendadas de seguridad para Azure Repos:

  1. Nunca almacenes credenciales como código o configuración en Azure Repos

  2. Elimina datos confidenciales de tus archivos y del historial de Azure Repos

  3. Controla estrictamente el acceso

  4. Agrega un archivo SECURITY.md

  5. Usa tokens de acceso personal

  6. Proporciona permisos detallados y grupos para los usuarios

  7. Agrega pruebas de seguridad a los pull requests

  8. Rota las claves SSH y los tokens de acceso personal

Si todavía no lo has hecho, asegúrate de descargar esta guía de referencia rápida y ponerla a la vista para que tus decisiones futuras sean seguras.

Guía rápida titulada «8 prácticas recomendadas de seguridad para Azure Repos», con consejos sobre credenciales, control de acceso, pruebas de seguridad y claves SSH.

Publicado en: