Pipelines y herramientas de DevSecOps: Lo que necesitas saber

| |

COMPARTE EL ARTÍCULO!!!

DevSecOps evoluciona DevOps para garantizar que la seguridad siga siendo una parte esencial del proceso.

DevOps ya es bien conocido en el mundo de TI, pero no es perfecto. Imagine que ha implementado todas las prácticas de ingeniería de DevOps en la entrega de aplicaciones modernas para un proyecto. Ha llegado al final del proceso de desarrollo, pero un equipo de pruebas de penetración (interno o externo) ha detectado un fallo de seguridad y ha elaborado un informe. Ahora tiene que reiniciar todos sus procesos y pedir a los desarrolladores que arreglen el fallo.

Esto no es terriblemente tedioso en un sistema de desarrollo de software basado en DevOps (SDLC), pero consume tiempo y afecta el programa de entrega. Si la seguridad estuviera integrada desde el principio del SDLC, podría haber rastreado el fallo y haberlo eliminado en el camino. Pero llevar la seguridad hasta el final del proceso de desarrollo, como en el escenario anterior, lleva a un ciclo de vida de desarrollo más largo.

Esta es la razón por la que se ha introducido DevSecOps, que consolida el ciclo global de entrega de software de forma automatizada.

En las metodologías modernas de DevOps, donde los contenedores son ampliamente utilizados por las organizaciones para alojar aplicaciones, vemos un mayor uso de Kubernetes e Istio. Sin embargo, estas herramientas tienen sus propias vulnerabilidades. Por ejemplo, la Cloud Native Computing Foundation (CNCF) completó recientemente una auditoría de seguridad de Kubernetes que identificó varios problemas. Todas las herramientas utilizadas en el pipeline de DevOps necesitan someterse a comprobaciones de seguridad mientras se ejecutan en el pipeline, y DevSecOps presiona a los administradores para que supervisen los repositorios de las herramientas en busca de actualizaciones y parches.

¿Qué es DevSecOps?

Al igual que DevOps, DevSecOps es una mentalidad o una cultura que los desarrolladores y los equipos de operaciones de TI siguen al desarrollar e implementar aplicaciones de software. Integra auditorías de seguridad activas y automatizadas y pruebas de penetración en el desarrollo ágil de aplicaciones.

Para utilizar DevSecOps, es necesario:

  • Introducir el concepto de garantía real desde el inicio del SDLC para minimizar las vulnerabilidades en el código de software.
  • Asegúrese de que todos (incluidos los desarrolladores y los equipos de operaciones de TI) compartan la responsabilidad de seguir las prácticas de seguridad en sus tareas.
  • Integre controles, herramientas y procesos de seguridad al inicio del flujo de trabajo de DevOps. Esto permitirá realizar controles de seguridad automatizados en cada etapa de la entrega del software.

DevOps siempre ha incluido la seguridad -así como la garantía de calidad (QA), la administración de bases de datos y todo el mundo- en el proceso de desarrollo y liberación. Sin embargo, DevSecOps es una evolución de ese proceso para garantizar que la seguridad nunca se olvide como parte esencial del proceso.

Comprensión del canal de DevSecOps

Más recursos de DevOps

  • ¿Qué es DevOps?
  • La guía de contratación definitiva de DevOps
  • Guía de herramientas de monitorización de DevOps
  • Introducción a DevSecOps
  • Términos de DevOps: 10 conceptos esenciales
  • Últimos artículos de DevOps

Hay diferentes etapas en una tubería típica de DevOps; un proceso SDLC típico incluye fases como Plan, Code, Build, Test, Release, y Deploy. En DevSecOps, se aplican comprobaciones de seguridad específicas en cada fase.

  • Plan: Ejecute el análisis de seguridad y cree un plan de prueba para determinar escenarios de dónde, cómo y cuándo se realizarán las pruebas.
  • Código: Despliega herramientas de revestimiento y controles de Git para proteger contraseñas y claves de API.
  • Construir: Al crear código para su ejecución, incorpore herramientas de pruebas de seguridad de aplicaciones estáticas (SAST) para detectar fallos en el código antes de su implementación en producción. Estas herramientas son específicas de los lenguajes de programación.
  • Prueba: Utilice herramientas de pruebas dinámicas de seguridad de aplicaciones (DAST) para probar su aplicación durante el tiempo de ejecución. Estas herramientas pueden detectar errores asociados con la autenticación de usuarios, la autorización, la inyección SQL y los puntos finales relacionados con la API.
  • Liberar: Justo antes de lanzar la aplicación, emplee herramientas de análisis de seguridad para realizar pruebas de penetración completas y análisis de vulnerabilidades.
  • Desplegar: Después de completar las pruebas anteriores en tiempo de ejecución, envíe una compilación segura a producción para la implementación final.

Herramientas de DevSecOps

Las herramientas están disponibles para cada fase del SDLC. Algunos son productos comerciales, pero la mayoría son de código abierto. En mi próximo artículo, hablaré más sobre las herramientas a utilizar en las diferentes etapas de la tubería.

DevSecOps desempeñará un papel más crucial a medida que veamos un aumento en la complejidad de las amenazas de seguridad empresarial basadas en una infraestructura de TI moderna. Sin embargo, el canal de DevSecOps tendrá que mejorar con el tiempo, en lugar de depender simplemente de la implementación simultánea de todos los cambios de seguridad. Esto eliminará la posibilidad de retroceso o el fallo en la entrega de la aplicación.

COMPARTE EL ARTÍCULO!!!

Previous

El makerspace es la próxima frontera del código abierto

La Fundación Linux da un gran paso adelante con la Alianza AllSeen y el Internet de las Cosas

Next

Deja un comentario

shares