Desarrollo de software seguro con DevSecOps

In Blogfest by Baufest

La transformación digital y las disrupciones generadas por los nuevos modelos de negocio basados en tecnología hicieron que las compañías adopten cada vez más prácticas modernas de ingeniería de software, como agile y DevOps

miércoles 16 - diciembre - 2020
Baufest

Estos métodos permiten a las organizaciones probar, refinar y lanzar nuevos productos y funcionalidades con mayor rapidez y asiduidad que nunca. Pero claro, tal como se explica en este artículo que invitamos a examinar, “la velocidad y frecuencia de las liberaciones pueden entrar en conflicto con los métodos establecidos para manejar la seguridad y el cumplimiento”.

Entonces, ¿cómo se puede resolver esta encrucijada? Los autores de la nota que queremos compartir aseguran que la respuesta está en DevSecOps (Desarrollo, Seguridad, Operaciones, por sus siglas en inglés), un método para integrar la seguridad en los esfuerzos ágiles y de DevOps a lo largo de todo el ciclo de vida del producto. Al poner en juego las pautas de DevSecOps las consideraciones de seguridad informática y de seguridad de datos se suman en la metodología de desarrollo DevOps, no como  security services aislados, sino como  prácticas que atraviesan todas las etapas –planificación, codificación, revisión, pruebas, implementación y operaciones-.

Al utilizar el método DevSecOps las empresas pueden “aumentar la frecuencia de las versiones de software de trimestral a semanal, o incluso a diario, sin comprometer su postura de riesgo. Pueden reducir el tiempo medio para remediar vulnerabilidades de semanas o meses a horas, así como eliminar retrasos, sobrecostos, defectos de productos. Y además pueden obtener seguridad y cumplimiento desde el principio”.

Dicho de otro modo, al tener en cuenta los temas de seguridad desde el inicio del proceso de desarrollo de software, las organizaciones agilizan la salida a producción y abaratan costos.

Trascender los silos

DevSecOps se basa en el principio de “integrar el desarrollo, la seguridad, la infraestructura y las operaciones en cada etapa del ciclo de vida de un producto, desde la planificación y el diseño hasta el uso y el soporte continuos”. Esto habilita a los ingenieros a abordar los problemas de seguridad y confiabilidad de manera más rápida y efectiva. En lugar de dejarse para el final del proceso de desarrollo, o de manejarse por separado, las consideraciones de seguridad, confiabilidad y cumplimiento están integradas en cada sprint ágil. Con DevSecOps los equipos revisan el código “con una frecuencia de hasta dos semanas como parte de sprints ágiles regulares, utilizando controles automáticos y manuales”.

Ahora bien, como se señala en la nota que estamos sintetizando, para capturar el potencial de DevSecOps se requiere de una colaboración estrecha al interior del departamento de TI, y también entre las áreas de TI, seguridad, cumplimiento y riesgo.

DevSecOps permite trascender las tensiones entre la agilidad y el mantenimiento de la seguridad, la confiabilidad y el cumplimiento. En lugar de dividir los roles de desarrollo de software, operación, seguridad y cumplimiento entre diferentes grupos, lo que se busca es romper estos silos mediante la creación de equipos ágiles integrados que se encargan de resolver todos los requisitos de las soluciones dentro de su alcance.

Con este método “los productos digitales se conciben y construyen desde cero para ser seguros por diseño. Los requisitos de seguridad y las mejores prácticas se tienen en cuenta en todos los elementos de una solución, desde el código en sí hasta la infraestructura en la que se ejecuta”, puntualizan los autores del texto.

De tal suerte, este camino ayuda a las empresas a ganar flexibilidad y agilidad fortaleciendo a la vez la seguridad de sus activos informáticos.

Para revisar esta perspectiva más en detalle, repasar ejemplos e identificar qué escollos hay que  evitar, sugerimos la lectura de este artículo.