OpiniónMundo digital

DevOps, un camino natural hacia la seguridad

Por Miguel Recio González, Director de la División de Desarrollo de Software de GMV.

El nivel de cumplimiento de esta filosofía de trabajo se ha convertido en el principal indicador del grado de madurez de los procesos de desarrollo software de una organización. Lejos quedan los tiempos en los que desarrollar código funcional, robusto y escalable era suficiente garantía de estar haciendo las cosas bien.

El time to market impuesto por un mercado muy agresivo arriesga la calidad del código desarrollado y, por ende, el éxito final de los proyectos. Cambios profundos en la metodología de trabajo de los equipos de desarrollo y operaciones y potentes nuevas tecnologías compatibilizaron la agilidad en las entregas de código con la calidad del mismo. Para posibilitar la agilidad y la calidad, las compañías hicieron suyos los principios del manifiesto ágil y se focalizaron en la automatización de todas las fases de construcción y testeo del código (Integración Continua). Se mejoraron los procesos para que cada cambio pudiera pasar por un proceso automatizado de pruebas y despliegue en los distintos entornos (Entrega Continua) o incluso ser desplegado de manera automática en los entornos productivos (Despliegue Continuo). El desarrollo ágil, potentes ecosistemas software de Integración y Despliegue Continuo y tecnologías como Dockers, aceleraron como nunca los ciclos de desarrollo y los tiempos de entrega. En definitiva, gracias a la filosofía DevOps podemos ser muy rápidos, pero esa agilidad nos convierte en vulnerables a nuevas amenazas y riesgos.

¿Agilidad vs Seguridad?

El peor escenario de un sistema en producción consiste en el aprovechamiento continuado de vulnerabilidades a nivel de código por parte de ciberdelincuentes, pero DevOps de nuevo marca el camino a través de su evolución natural: SecDevOps. Históricamente los controles de seguridad se han realizado en la fase de despliegue del código por especialistas en ciberseguridad. Esta filosofía de trabajo es incompatible con la agilidad necesaria porque los problemas de seguridad detectados imponen retroceder a fases tempranas del ciclo de desarrollo. Por otro lado, esta organización del trabajo distancia a los desarrolladores de la cultura del desarrollo seguro. De nuevo nos enfrentamos a la división innecesaria entre equipos, en este caso entre desarrolladores y especialistas en cibersegu ciberseguridad. La solución al problema es la misma: integración de los equipos, automatización y procesos bien definidos.

Hay que potenciar el planteamiento de Security by Design

Security by Design

No queda más remedio que incorporar la seguridad en las fases iniciales del proyecto potenciando el planteamiento de Security by Design. Desde la captura de requisitos resulta determinante realizar un modelado de amenazas bajo el paradigma de recomendaciones y reglamentos como PCI, OWASP y GDPR. Este modelado de amenazas se realizará por un equipo que no será un departamento aislado y vigilante de desarrollos ya finalizados, sino que formará parte de todo el ciclo de vida del proyecto. La integración entre los equipos de desarrollo y ciberseguridad garantizará el cumplimiento de todas las acciones definidas en el modelo de amenazas, concienciará a todo el equipo y reducirá los retrasos por detección tardía de vulnerabilidades. La automatización de los procesos de configuración y los controles en las fases de integración y despliegue continuos serán valores añadidos que garantizarán que DevOps, lejos de ser una amenaza para la seguridad, sea la mejor solución.

Computing 782