Mejores prácticas de DevSecOps
- Gestión de apps
Las prácticas de DevSecOps más importantes se superponen significativamente con las prácticas ágiles y las prácticas de DevOps.
Por ejemplo, si ya está realizando el desarrollo basado en pruebas (TDD), debe pensar más en el alcance de sus casos de prueba. ¿Tienen en cuenta un modelo de amenazas realista? ¿Qué dependencias tienes que simular? ¿Cuáles son las implicaciones de seguridad de esas dependencias? Si ya está realizando una implementación continua (CD), ¿no deberían integrarse herramientas de análisis estático en la canalización? Si utiliza contenedores, ¿dónde se implementan y cómo deben restringirse?
Además, necesita un plan de monitoreo consistente, incluso si es simple para empezar. Comience analizando cada sistema significativo, documentando cómo funciona en producción, enumerando todos los recursos externos e internos de los que depende y luego documentando cómo los cambios de estado en esos recursos pueden afectar el éxito de ese sistema.
Es solo otra forma de preguntar "¿Qué podría salir mal?" Las respuestas a eso son su lista de verificación para los procedimientos de monitoreo y corrección, y puede alimentar esa lista de verificación a la etapa de desarrollo para prevenir problemas en lugar de reaccionar siempre a ellos.
Hay muchas opciones en las herramientas de DevSecOps, ya que la parte Sec tiene que ver con el contexto de sus operaciones y las condiciones de la empresa. Comprender el perfil de amenazas es una prioridad. Los entornos financieros, aeroespaciales, militares, de juegos, de fabricación, de IoT y de servicio al cliente enfrentan diversos peligros y requieren soluciones personalizadas. Muchos talleres comienzan con el análisis de código, la detección de intrusos y la supervisión de cambios de configuración.
La mejor herramienta es la que se adapta a tus necesidades y objetivos. Es importante no pasar por alto la realidad de las cosas. Muchos estándares de facto provienen de comunidades de código abierto y, a menudo, están integrados en software comercial que quiere seguir el ritmo de la dinámica actual. Piense en Kubernetes, Spark, Spring-boot y muchas otras bibliotecas, sistemas y marcos que se encuentran en todas partes. Ellos componen la mayor parte del software personalizado que desarrollamos. Por lo tanto, son la principal fuente de problemas (y soluciones) de seguridad que tenemos. Son un problema porque somos usuarios y clientes de esos artefactos OSS, por lo que es probable que cualquier defecto encontrado en ese nivel afecte la seguridad a escala mundial.
También son la solución; su popularidad y amplia adopción hacen que las comunidades cooperen activamente y trabajen juntas para encontrar una solución.
Por un lado, el código de fuente abierta está 100% disponible tanto para personas malintencionadas como para piratas informáticos éticos, por lo que es presumible que "atacarán" ese código con mayor facilidad. Por otro lado, se requiere protección interna para evitar errores internos no intencionales y ataques intencionales.
Por lo tanto, las buenas prácticas de desarrollo ayudan a moderar estos riesgos. La revisión de código, la programación de pares, la calidad del código, etc. son todas buenas formas de reducir el impacto de errores y personas internas malintencionadas.
Descubre la innovación
Para asegurar el éxito empresarial, ahora y a futuro, es imprescindible maximizar el retorno de la inversión existente en software, a la vez que innovar y adoptar nuevas tecnologías. Los retos que hay abordar para competir en un mundo de TI Híbrida incluyen DevOps, Seguridad, Gestión de riesgos y Análisis predictivo. Puedes obtener más información sobre cómo abordar estos retos e innovar en este enlace.