Seguro que el término DevOps ya le suena, pero ¿ha oído hablar de DevSecOps? La filosofía DevSecOps (forma abreviada de «desarrollo, seguridad y operaciones») convierte la seguridad del software en parte integral de su proceso de entrega.
Para entender por qué es importante este cambio, hay que pensar en cómo se protegía antes el software. Hasta hace poco, los procesos de fabricación del software no incluían las operaciones necesarias para garantizar su seguridad, que se realizaban de manera independiente. Los desarrolladores creaban el código y los equipos de TI lo implementaban casi sin plantearse si era o no seguro. El trabajo de los ingenieros de seguridad no empezaba hasta que el software ya estaba terminado e instalado en entornos de producción. Solo entonces se buscaban vulnerabilidades en el código o en los entornos donde se alojaba.
Esta forma de proteger el software es muy poco eficaz —sobre todo en entornos en la nube, donde el ritmo de implementación es más rápido—. Si se detectaba un problema de seguridad, a menudo había que retirar el código ya escrito e implementado. Además, muchas veces nadie notaba nada hasta que el software ya estaba en producción, lo que dejaba a las organizaciones a merced de las amenazas.
La filosofía DevSecOps (también conocida como seguridad «shift left») resuelve estos problemas integrando la seguridad en todas las fases del proceso de entrega de software. El objetivo es que los desarrolladores se preocupen por crear código seguro, que el software se someta a pruebas de seguridad antes de implementarse y que los equipos de TI sepan cómo actuar rápidamente si, pasada la fase de implementación, se detectan problemas de seguridad.
DevSecOps lleva aún más lejos la metodología DevOps
El concepto de DevSecOps no sustituye al de DevOps. Simplemente añade un nuevo elemento (la seguridad) a la misma idea básica: la necesidad de que los equipos de desarrollo y de TI colaboren entre sí, en lugar de trabajar de manera aislada. Por lo tanto, si adoptamos la metodología DevOps e integramos la seguridad en el ciclo de integración/implementación continua (CI/CD, por sus siglas en inglés), habremos logrado un modelo DevSecOps eficaz.
DevSecOps es una filosofía, no una herramienta
Aunque las organizaciones puedan adoptar sus principios valiéndose de herramientas y procesos diversos, DevSecOps no es una herramienta ni un proceso, sino una filosofía.
Su propósito es promover los valores adecuados dentro de una organización. Los desarrolladores, los equipos de TI, los especialistas en seguridad y todos cuantos participan en la entrega de software han de tener claro que, hagan lo que hagan, la seguridad es lo más importante. Y antes de tomar cualquier decisión relativa a una aplicación, todo el equipo debería pensar en cómo afecta a su seguridad. Si lo hace, la transición al modelo DevSecOps habrá sido un éxito.
Cómo adoptar la filosofía DevSecOps
La mejor forma de adoptar la filosofía DevSecOps en su organización es aquella que se adapte a sus necesidades. No obstante, hay varias estrategias que suelen ser útiles:
Formación: asegúrese de que todas las partes involucradas en el proceso de entrega del software entiendan a qué amenazas se enfrentan en la actualidad y la importancia de combatirlas.
Comunicación: cree canales de comunicación eficaces para que todos los miembros del equipo puedan intercambiar con rapidez información relativa a los problemas de seguridad.
Libros de estrategias de seguridad: elabore «libros de estrategias» donde se indique cómo deben responder a los incidentes de seguridad los distintos miembros del equipo.
Auditorías y comprobaciones de cumplimiento normativo: integre estos dos procedimientos de control en el proceso de entrega de software.
Adopción de las herramientas adecuadas: elija herramientas de seguridad en la nube basadas en API que le ayuden a automatizar la aplicación de políticas de seguridad y cumplimiento normativo en la nube.
Consiga que los desarrolladores se preocupen por la seguridad
En la mayoría de las organizaciones, los equipos de desarrollo son el grupo más reacio a adoptar la filosofía DevSecOps. Piense en qué hará para que cambien de opinión, en cómo integrará la seguridad en su trabajo y en cómo adquirirán nuevas competencias.
Adoptar el modelo DevSecOps es mucho más fácil si se dispone de las herramientas adecuadas. Si los desarrolladores pueden automatizar políticas con ayuda de herramientas que aprovechen las API de los proveedores de servicios en la nube, irán aprendiendo sobre la marcha y no cometerán fallos graves. Existen herramientas nativas en la nube que permiten automatizar políticas en AWS. Sin embargo, si su organización utiliza una implementación de varias nubes, está obligada a cumplir normativas muy estrictas o tiene un entorno de AWS con bastantes cuentas, lo más probable es que necesite una herramienta de terceros para realizar esta tarea con eficacia y gestionar todo desde una única consola. Esta publicación del blog (disponible en inglés) le ayudará a elegir la herramienta adecuada.
También en el blog, DHI Group nos cuenta cómo logró crear una cultura sólida de DevSecOps. Si tiene curiosidad, lea la publicación del blog titulada From ‘DevOps vs. SecOps’ to DevSecOps (DevSecOps: un nuevo concepto que pone fin a la dicotomía entre DevOps y SecOps; disponible en inglés).