¿Qué es DevSecOps?
«DevSecOps» (abreviatura de «desarrollo, seguridad y operaciones») es una práctica de desarrollo que integra iniciativas de seguridad en cada etapa del ciclo de vida de desarrollo de software para diseñar aplicaciones sólidas y seguras.
DevSecOps infunde seguridad en el flujo de integración y distribución continuas (CI/CD), lo que permite a los equipos de desarrollo abordar algunos de los desafíos de seguridad actuales más acuciantes a la velocidad de DevOps.
Las consideraciones y prácticas de seguridad se solían introducir al final del ciclo de vida de desarrollo. Sin embargo, dado el aumento de ataques de ciberseguridad más sofisticados y el viraje de los equipos de desarrollo hacia iteraciones más breves y frecuentes en las aplicaciones, DevSecOps se está convirtiendo en una práctica de referencia para garantizar la seguridad de las aplicaciones en este ecosistema moderno de desarrollo.

«DevSecOps for Dummies»

Puesta en funcionamiento de DevSecOps
¿Cuáles son las ventajas de DevSecOps?
La seguridad es prioritaria para todas las organizaciones actuales. Por suerte, DevSecOps hace hincapié en incorporar la seguridad en todas las etapas, lo cual está demostrando ser un enfoque más seguro para el desarrollo, a la vez que se adapta a la celeridad con que funciona el ciclo de lanzamiento.
El enfoque de DevSecOps aporta ventajas específicas como las siguientes:
- Seguridad mejorada de las aplicaciones
DevSecOps integra un enfoque proactivo para mitigar las amenazas a la ciberseguridad en las primeras etapas del ciclo de vida de desarrollo. De este modo, los equipos de desarrollo confían en herramientas de seguridad automatizadas para probar el código sobre la marcha y pueden llevar a cabo auditorías de la seguridad sin ralentizar los ciclos de desarrollo.
Los equipos de DevOps revisan, auditan, prueban, analizan y depuran el código en distintas etapas del proceso de desarrollo para garantizar que la aplicación supere los puntos de control de seguridad esenciales. Cuando se destapa alguna vulnerabilidad de seguridad, los equipos de seguridad y desarrollo de las aplicaciones colaboran a fin de encontrar soluciones a nivel de código para abordar el problema.
- Propiedad entre equipos
DevSecOps congrega a los equipos de desarrollo y a los de seguridad de las aplicaciones en las primeras etapas del proceso de desarrollo, lo que permite crear un enfoque colaborativo entre equipos. En lugar de proponer operaciones aisladas y dispares que frenan la innovación e incluso conducen a la fragmentación entre las unidades de negocio, DevSecOps hace posible la sintonía entre equipos en fases tempranas. De este modo, se logra la aceptación de todos los equipos y una colaboración más eficiente entre ellos.
- Optimización de la distribución de aplicaciones
Integrar la seguridad en las primeras etapas y a menudo en el ciclo de vida de desarrollo, automatizar el mayor número de procesos de seguridad como sea posible y optimizar la generación de informes mejoran la seguridad y hacen posibles los equipos de conformidad, de modo que se garantiza que las prácticas de seguridad alienten los ciclos de desarrollo rápidos.
Por ejemplo, si un equipo de desarrollo completa todas las etapas iniciales de desarrollo de una aplicación para después descubrir que hay una serie de vulnerabilidades de seguridad justo antes de llevar la aplicación al entorno de producción, la distribución puede retrasarse de manera importante.
- Limitación de las vulnerabilidades de seguridad
Utilice la automatización para identificar vulnerabilidades y riesgos comunes (CVE), gestionarlos y aplicar parches. Use soluciones predefinidas para analizar de forma temprana y frecuente las imágenes de contenedor precompiladas en el flujo de compilación por si hubiera CVE. Introduzca medidas de seguridad que no solo mitiguen el riesgo, sino que también proporcionen información a los equipos para que puedan corregir rápidamente las vulnerabilidades que se detecten.
Una de las mayores ventajas de DevSecOps es que crea un proceso de desarrollo ágil y optimizado; un enfoque que, si se aplica correctamente, puede limitar en gran medida las vulnerabilidades de seguridad. Muchos de los procesos de prueba, tareas y servicios de ciberseguridad se integran con bastante facilidad con los servicios automatizados que ya hay en un equipo de operaciones o de desarrollo de aplicaciones.
Al hacer hincapié en aplicar en el proceso de desarrollo un enfoque que da prioridad a la seguridad, las organizaciones pueden eliminar las variables desconocidas que, sin duda, influirán en los plazos de lanzamiento del producto.
¿Por qué es importante DevSecOps?
DevSecOps es importante en el entorno empresarial actual a la hora de mitigar el aumento en la frecuencia con que se producen ciberataques. Cuando se implementan iniciativas de seguridad de forma temprana y regular, las aplicaciones de diversos sectores disfrutan de las siguientes ventajas:
- Administración pública: las aplicaciones que gestionan información sumamente confidencial de la administración pública son un objetivo constante de los ciberataques maliciosos. Si se refuerzan estas aplicaciones con un enfoque de desarrollo que da prioridad a la seguridad, se reduce en gran medida la posibilidad de que las entidades maliciosas encuentren y aprovechen las vulnerabilidades.
- Sector sanitario: DevSecOps se está convirtiendo en la norma de referencia en el diseño de aplicaciones dentro del sector sanitario. Puesto que las organizaciones están obligadas a cumplir la normativa HIPAA, queda cada vez más patente que un enfoque que da prioridad a la seguridad reduce considerablemente la probabilidad de que la información personal identificable (PII) de los pacientes quede al descubierto o se aproveche de forma maliciosa.
- Sector financiero: DevSecOps también ayuda en las prácticas de desarrollo del sector financiero. Hoy en día, este sector es un objetivo importante para los ciberataques, por lo que las empresas de desarrollo están aplicando un modelo de DevSecOps para limitar la posibilidad de que los ciberdelincuentes puedan acceder a datos confidenciales.
¿Cómo funciona DevSecOps?
El enfoque de VMware respecto a DevSecOps está diseñado para proporcionar a los equipos de desarrollo la pila de seguridad completa. Para conseguirlo, se establece una colaboración continua entre el equipo de desarrollo, el de gestión del lanzamiento de versiones (también conocido como «equipo de operaciones») y el de seguridad de la organización. Además, se incide en esa colaboración en cada una de las fases del flujo de CI/CD.
El flujo de CI/CD se divide en seis etapas conocidas como «código», «compilación», «almacenamiento», «preparación», «implementación» y «ejecución».
A continuación, explicamos cada etapa del flujo de trabajo para ilustrar las ventajas de integrar de forma temprana la seguridad en el proceso.
- Código
El primer paso para un enfoque de desarrollo que se avenga con DevSecOps es escribir código en segmentos que sean tanto seguros como de confianza. En este aspecto, VMware Tanzu® proporciona herramientas que actualizan de forma periódica estos componentes fundamentales para proteger mejor sus datos y aplicaciones desde el primer día.
- Compilación
Para conseguir que el código ofrezca imágenes de contenedor completas que contengan un sistema operativo principal, dependencias de aplicaciones y otros servicios de entornos de ejecución, se requiere un proceso seguro. VMware Tanzu Build Service™ lo gestiona de forma segura y proporciona análisis de dependencias del entorno de ejecución para mejorar la seguridad, lo que permite que los equipos de DevSecOps se dediquen a desarrollar de forma segura y ágil. - Almacenamiento
Cualquier pila de tecnología lista para usarse debe considerarse un riesgo en el panorama actual de la ciberseguridad en constante evolución. En este aspecto, cada aplicación lista para usarse o servicio de back-end deben comprobarse continuamente. Afortunadamente, VMware ofrece opciones a los desarrolladores: VMware Tanzu les permite extraer dependencias dogmáticas de forma segura, mientras que VMware Carbon Black Cloud Container™ les permite buscar vulnerabilidades en las imágenes de contenedores. - Preparación
Antes de la implementación, las organizaciones deben asegurarse de que sus aplicaciones cumplan las políticas de seguridad. Para lograrlo, VMware Tanzu y Carbon Black Cloud Container pueden validar las configuraciones contrastándolas con las políticas de seguridad de la organización antes de continuar con las siguientes etapas del ciclo de desarrollo. Estas configuraciones definen cómo debe ejecutarse la carga de trabajo, no solo proporcionando información decisiva sobre posibles vulnerabilidades, sino también determinando las etapas posteriores del flujo de CI/CD para una correcta implementación. - Implementación
Los análisis realizados en los pasos anteriores permiten a las organizaciones hacerse una idea completa de la seguridad de la aplicación. En este aspecto, las vulnerabilidades o los errores de configuración identificados en el proceso de desarrollo se presentan claramente, lo que permite a las organizaciones corregir los problemas y definir estándares de seguridad más eficaces para favorecer una situación de seguridad más sólida. - Ejecución
A medida que se ejecutan las implementaciones, los equipos de SecOps pueden aprovechar el análisis, la supervisión y la automatización de las implementaciones activas para garantizar que se cumplen los requisitos normativos en todo momento y, al mismo tiempo, mitigar el riesgo de vulnerabilidades que surgen después de la implementación.
DevSecOps frente a DevOps
Si juzgamos ambos enfoques por sus nombres, sería fácil pensar que DevSecOps no es más que DevOps, pero con seguridad. No es el caso.
DevOps es la abreviatura de «desarrollo» y «operaciones», y se centra únicamente en la colaboración entre estos dos equipos integrales durante el proceso de desarrollo. En este caso, estos dos equipos trabajan conjuntamente a fin de desarrollar procesos, formular indicadores clave de rendimiento (KPI) y cumplir hitos de forma colaborativa. De este modo, el equipo de operaciones puede analizar las etapas de distribución más de cerca, al tiempo que evalúa las actualizaciones continuas y los comentarios del equipo de desarrollo.
DevSecOps es una iteración de DevOps en el sentido de que DevSecOps ha adoptado el modelo de DevOps y ha integrado la seguridad como una capa adicional del proceso continuo de desarrollo y operaciones. En lugar de considerar la seguridad como una idea posterior, DevSecOps recurre desde el principio a los equipos de seguridad de las aplicaciones para fortalecer el proceso de desarrollo desde el punto de vista de la seguridad y la mitigación de vulnerabilidades.
Productos y soluciones relacionados
Tanzu Application Platform
Plataforma con reconocimiento de aplicaciones que se ejecuta en cualquier versión de Kubernetes y en cualquier nube
Tanzu for Kubernetes Operations
Infraestructura de contenedores multinube
VMware Aria Automation for Secure Clouds
Gestión proactiva de la información sobre la seguridad de la nube y los riesgos de incumplimiento