¿Qué es DevSecOps?

Los problemas de seguridad en las empresas son cada vez más habituales, por eso no es de extrañar que cada vez den más importancia a las metodologías o filosofías que les ayuden a asegurarla.

Hoy vamos a centrarnos en DevSecOps, un sistema que según Cloud Security Alliance, se ha vuelto imprescindible para preservar la ciberseguridad de las empresas y que ayuda a aquellas compañías con implementaciones sólidas de DevSecOps descubrir fallos 11 veces más rápido que los que no lo tienen. Pero, empecemos por el principio.

¿Qué es DevSecOps?

Desarrollo (development), seguridad (security) operaciones (operations), y son los acrónimos de DevSecOps. Se trata de una solución a los problemas tradicionales de las compañías de software, asegurando la velocidad de envío y todo esto garantizando la seguridad. Ahora, cualquier problema de seguridad crítico se resuelve de forma preventiva sin dejar que llegue a suponer una amenaza.

Su objetivo, por tanto, es garantizar la agilidad de entrega del código, manteniendo su seguridad, mientras por el camino se resuelven posibles problemas de desarrollo y seguridad.

¿En qué se diferencia con DevOps?

Cuando nos referimos a DevOps estamos hablando de cómo los equipos de desarrollo (Dev) y operaciones (Ops) se unen para trabajar de forma conjunta, desarrollando productos a más velocidad, pero sin que esto perjudique a su eficiencia.

Antiguamente estos equipos trabajaban de forma separada, pero ahora, los ingenieros DevOps trabajan con desarrolladores de software, administradores de sistemas y personal de operaciones de TI, supervisando el trabajo o implementando código en los programas existentes. En resumen, con DevOps buscamos que el desarrollo de un software sea más rápido contando con el departamento de sistemas. Pero, ¿en qué se diferencia de DevSecOps?

Pues como el propio nombre indica, se le añade al proceso la parte de seguridad. De esta manera conseguiremos además de la agilidad en el desarrollo del software con DevOps, una capa de seguridad que permita detectar vulnerabilidades en el software en cada paso del mismo y poder solucionarlos antes de subir a producción.

Dentro del proceso de DevSecOps aludiendo al ámbito de seguridad podemos distinguir dos partes del mismo, refiriéndonos o bien al código o a las infraestructuras que utilicemos.

Aplicado al código y denominado Security as Code (SaC), estaría relacionado con la inclusión de la seguridad en las herramientas y aplicaciones de desarrollo a lo largo del proceso de DevOps.

Por otro lado, la parte de seguridad de la infraestructura o Infrastructure as Code (IaC), que ya comentamos en otro post de este blog, se refiere a la configuración de las infraestructuras como un software a través de un grupo de herramientas, las cuales nos permitan crear, actualizar o volver atrás en versiones de nuestra infraestructura de forma automática y rápida.

Ventajas y beneficios de DevSecOps

Repasemos algunas de sus ventajas o beneficios para las empresas:

  • Permite identificar fácilmente las vulnerabilidades de código.
  • Los equipos de trabajo están más concienciados con la seguridad empresarial.
  • Existe una mejor colaboración y comunicación entre equipos.
  • Mayor velocidad y agilidad en la aplicación de la seguridad.
  • Contamos con más oportunidades para builds automatizados y test de QA.
  • La compañía cuenta con una mayor habilidad para responder a los cambios.
  • Al estar varios departamentos involucrados en la seguridad, el equipo de seguridad se ve liberado para hacer otras tareas de más valor.
  • Mayor automatización de la seguridad.
  • Entrega de software más rápidamente y de forma más rentable.
  • Mayor confianza del cliente.

Inconvenientes de DevSecOps

Aunque son más las ventajas que los inconvenientes, podemos encontrarnos con algunos obstáculos en el camino como puede ser la falta de responsabilidad de los desarrolladores o de habilidades y soluciones.

También hay que tener en cuenta que el volumen de los profesionales especializados en DevSecOps es bastante bajo actualmente y a esto se suma el hecho de que no existe una solución única debido a las diferencias de las distintas compañías o los requisitos comerciales.

Otro de los inconvenientes que podemos encontrar dentro de las empresas son los tradicionales problemas de colaboración entre los equipos de desarrollo, seguridad y operaciones, por los distintos objetivos, procesos o incluso metodologías. Por todo esto es importante una buena comunicación entre equipos para evitar que el rechazo de los empleados provoque el fracaso de la implementación DevSecOps.

¿Cómo afrontar este cambio de enfoque?

 Cuando queremos cambiar la forma en la que hacemos las cosas, tendremos que inevitablemente cambiar la cultura del equipo, departamento o de la propia empresa. Para afrontar este cambio con éxito, la consultora tecnológica Gartner propone una serie de recomendaciones:

  • Adaptar las herramientas y procesos a las personas, no al revés.
  • No intentar eliminar todas las vulnerabilidades durante el ciclo de desarrollo.
  • Identificar y eliminar primero las vulnerabilidades open-source conocidas.
  • Adaptar los análisis de pruebas estáticos y dinámicos al nuevo contexto.
  • Invertir en la formación de los desarrolladores en seguridad, pero no hay que esperar que se conviertan en los expertos de seguridad.
  • Adoptar un modelo de Security Champions (expertos de seguridad distribuidos por grupos de desarrollo) e implementar una herramienta para la recogida de requisitos de seguridad.
  • Aplicar la filosofía de análisis de código para los despliegues automatizados.
  • Implementar un proceso de control de versiones del código y sus componentes.
  • Incorporar al proceso de diseño el concepto de infraestructura inmutable.
  • Revisar la gestión de incidentes de prestación de servicios, incluyendo en el proceso la gestión de la seguridad.
  • Incluir el aprovisionamiento de acceso dinámico para los programadores.

Como se puede apreciar, a priori, introducir o cambiar a un enfoque DevSecOps no parece una tarea sencilla, y pocas empresas tienen ya esta cultura funcionando en sus áreas de desarrollo de aplicaciones. Pero como ya hemos visto en el apartado anterior, los beneficios superan en gran medida a los inconvenientes, y DevSecOps se ha convertido actualmente para algunas empresas en la única forma válida de desarrollar software.

Otros artículos relacionados

2023-11-21T14:05:19+01:0023 septiembre, 2021|

¡Compártelo en tus redes sociales!

Ir a Arriba