Todo lo que necesitas saber sobre DevSecOps

by | Ene 14, 2021 | Desarrollo, Operaciones, Seguridad

DevSecOps

Es una metodología que en principio no parece tan popular como DevOps, sin embargo mantiene un nexo de unión con ella. El equipo de operaciones es el que se encarga de colaborar con el equipo de seguridad para establecer las normas que la empresa en la que operan tienen que seguir, así como los procesos que han de ejecutar y las herramientas a utilizar para que el desarrollo de software sea siempre seguro.

Sería algo parecido a una evolución de la metodología DevOps, cuando se comienza a desarrollar con metodologías DevOps, el objetivo principal es estar desarrollando y entregando software constantemente disminuyendo al máximo la cantidad de errores en producción. Sin embargo, al buscar el beneficio máximo de eficiencia, se pierden de vista ciertos aspectos de seguridad que pueden representar riesgos graves para la información y seguridad en general de la compañía.

La misión de los equipos de SecOps es, básicamente, asegurarse de que las empresas no dejen a un lado la seguridad para conseguir un mayor rendimiento en su proceso de desarrollo. También automatizar tareas de seguridad que resultan cruciales para el software en desarrollo. Pero al igual que DevOps, SecOps va mucho más allá, puesto que también implica un cambio de mentalidad en el ciclo de desarrollo del software.

Algunos de los aspectos que los equipos de SecOps deben estar monitoreando constantemente que y que los equipos de desarrollo pierden de vista son:

  1. Seguridad DNS
  2. Fuga de información
  3. Phishing
  4. Detección y respuesta de redes

En un ciclo de desarrollo convencional, que requiere la recopilación de información, diseño, desarrollo, prueba, implementación o despliegue, y mantenimiento, la seguridad se introduce en el ciclo en las últimas etapas de desarrollo del software (en el mejor de los casos). En la mayoría de las ocasiones, en un punto entre la prueba y el desarrollo. Puede que incluso vaya más tarde. Pero con SecOps, la seguridad entra antes y se mantiene presente durante todo el proceso.

A muchos esto puede parecerles muy complicado, y si no hay colaboración efectiva, las cosas se complican aún más. Para lograr implementar SecOps de manera efectiva, es necesario que los equipos de seguridad, operaciones y desarrollo orquesten los proyectos. Si de por sí es complicado administrar un sólo equipo de tecnología, cuando sumas dos más con diferentes disciplinas la tarea puede complicarse aún más.

DevSecOps surge, en parte, a raíz de la transformación de la infraestructura de la empresa y de los modelos de despliegue de TI, que van cambiando a medida que las compañías sacan cada vez más partido a los modelos de infraestructura en la nube por su eficiencia de costos, la velocidad y agilidad que les proporciona la nube.

Ventajas de SecOps para el desarrollo

Las ventajas de la incorporación de SecOps al proceso de desarrollo son variadas. Pero las principales son tres:

  • Mayor retorno de la inversión si se comparar con el obtenido mediante el empleo de medidas de seguridad convencionales.
  • Mejora en la productividad
  • Mejor uso de los recursos, registrándose un menor y mejor uso de los mismos.

Además de estas tres, hay otras ventajas que adoptar una metodología SecOps en el ciclo de desarrollo de software proporciona a la empresa. La primera es una reducción de los problemas de seguridad relacionados con la nube. Esto se debe a que los equipos de SecOps se encargan de tomar medidas para mejorar la seguridad de las plataformas en la nube y minimizar los riesgos de problemas y amenazas relacionados con estas plataformas.

La segunda es un menor índice de obstáculos y problemas relacionados con las apps si se desarrollan utilizando SecOps. Así, una mejor implementación de la seguridad se traducirá probablemente en menos problemas en el desarrollo de las aplicaciones. Esto llevará a que su funcionamiento normal se vea interrumpido menos veces, lo que implica una mejor experiencia de usuario y un entorno de desarrollo más suave.

Además, el contar con SecOps integrado en el proceso de desarrollo implica que se contará con mejores procedimientos de auditoría.

Rol de los equipos de SecOps

La principal diferencia entre SecOps y otras filosofías de programación, entre las que está DevOps, es que en SecOps cada miembro del equipo de desarrollo es consciente de la seguridad y responsable de ella. Las operaciones de seguridad están integradas en la cultura del equipo de desarrollo, e incluso de la organización en la que se utiliza esta filosofía, por completo. Así, por ejemplo, un administrativo puede informar de la llegada de un mensaje de correo electrónico sospechoso, o un desarrollador web de un intento de ataque a una web.

Como es lógico, los equipos más afectados por el cambio de mentalidad que implica la integración de SecOps en la creación de software serán los de desarrollo y seguridad. Los programadores y el personal encargado de la seguridad pasarán de trabajar de una manera bastante independiente a hacerlo colaborando de forma muy cercana. Y a hacerlo en todas las fases del desarrollo. De esta manera, se pueden distribuir las responsabilidades de la seguridad, y permitir escalar a los equipos de seguridad.

Cambios que implica la adopción de SecOps

La llegada de SecOps provoca modificaciones en los sistemas de trabajo. De ellos, quizá los más importantes son los siguientes: análisis más temprano del código, más transparencia y mayor comunicación, mejoras en la seguridad y alerta ante las amenazas.

En muchas empresas, para analizar el código en busca de problemas de seguridad se analizan secuencias de código de gran tamaño. Pero con SecOps, estas comprobaciones se llevan a cabo con piezas de código más pequeñas, y con más frecuencia. En cuanto a la transparencia, que también influyen en una mayor y mejor comunicación entre los miembros de los distintos equipos, se consigue gracias a una unión y colaboración estrecha entre los tres equipos componentes de SecOps: seguridad, operaciones, y también desarrollo.

Con todo esto, se consigue una mejora sostenida de la seguridad, tanto en lo que se refiere a la programación como a los aspectos operativos del proceso. Y también se consigue que otros miembros de la empresa, aparte del equipo de seguridad, estén alerta de posibles amenazas de seguridad.

Cómo adoptar SecOps en una organización

Para implementar SecOps en una entidad es necesario hacer un cambio en su cultura, similar a lo que supuso en su día la de DevOps. Con SecOps llegan las medidas de seguridad a una fase más temprana del desarrollo, lo que es un buen objetivo, pero los principios son complicados y pueden provocar una cierta ralentización del proceso en un primer momento. Pero esto sólo se da en los primeros momentos, cuando todavía no está la máquina funcionando perfectamente engrasada. Es, por tanto, cuestión de tiempo que todo vuelva a la normalidad. Eso sí, habrá que dar un empujoncito para facilitarlo, con diversas medidas.

La primera pasa, por supuesto, por la formación, ya sea propia de la organización y con sus propios procedimientos, como externa, con recursos de terceros. Además, hay que promover y fomentar la cultura de colaboración entre departamentos antes incluso de que SecOps llegue a la organización. De esta manera, que todos colaboren entre sí será más sencillo, y llegará un momento en que se hará de manera natural.

Además, es necesario proporcionar a los equipos las herramientas de seguridad adecuadas para poder implementar SecOps en el sistema de desarrollo y operaciones sin perder velocidad en los procesos. Para ello es básico contar con alguna plataforma de automatización capaz de gestionar procedimientos de seguridad, entre otros elementos. También es imprescindible, como en muchos casos, disponer de un proceso de SecOps debidamente documentado, de manera que sirva para avanzar y resolver dudas en cualquier momento.

Artículo originalmente publicado en ThreatStack

¿Cómo puede ayudar Timware?

Con la solución de ARCAD SOFTWARE es posible brindar a los equipos de desarrollo, operaciones y seguridad, herramientas poderosas para lograr una colaboración exitosa entre los equipos y se pueda llevar a cabo desarrollo de software rápido, efectivo y seguro.

Herramientas como ARCAD ANONYMIZER, por ejemplo, permiten enmascarar datos reales para que los equipos de desarrollo puedan trabajar con información con todas las características necesarias pero datos que no son reales. De esta forma, se evita cualquier tipo de robo de datos ya sea de forma interna o externa.

Contáctanos y hablemos más sobre lo que necesita tu compañía: