Tecnología

¿Qué significa «cambiar la seguridad a la izquierda»? – CloudSavvy IT

¿Qué significa "cambiar la seguridad a la izquierda"?  - CloudSavvy IT
Ilustración de un icono de candado de seguridad frente a una persona adecuada
SWKStock / Shutterstock.com

“Seguridad de cambio a la izquierda” se refiere a un modelo de desarrollo de software que considera completamente la seguridad desde el principio. Hasta hace muy poco, la seguridad solía llegar al final del proceso en forma de una auditoría de puesta en marcha. Esto impide la visibilidad de su postura general de seguridad, lo que permite que las amenazas pasen desapercibidas.

El concepto de desplazarse a la izquierda es una parte vital de DevSecOps, la expansión de DevOps que considera la seguridad como un componente de primera clase. Intenta abordar la desconexión entre los desarrolladores, los equipos de operaciones y los expertos en seguridad, animando a todas las partes interesadas a pensar a diario en el panorama general de la seguridad.

Diseñar para la seguridad

Tener en cuenta la seguridad al principio hace que sea más probable que termine con un sistema hermético. Dejarlo en manos de un equipo dedicado al final aumenta la probabilidad de que pase por alto problemas enterrados en lo profundo de las rutas del código.

Cambiar la seguridad a la izquierda reconoce su importancia y hace que más personas sean responsables de su implementación. Los desarrolladores deben conocer las implicaciones de seguridad generales de su código, sin depender de las auditorías de un equipo dedicado. Eso no quiere decir que un equipo separado sea completamente redundante: una revisión previa al lanzamiento sigue siendo una buena idea, pero debería llevar menos tiempo si la seguridad ya está incorporada desde el principio.

El enfoque modificado ayuda a fomentar una cultura DevOps productiva. La colaboración entre equipos se mejora al discutir el desarrollo y la seguridad en paralelo, en lugar de moverse a través de un flujo lineal rígido.

Los desarrolladores deben conocer el contexto de seguridad a nivel de la aplicación y la organización en el que operará su código. Algunas medidas de seguridad, como el cifrado sólido de contraseñas y la verificación de claves, ya son valores predeterminados de facto; otros, como el escaneo activo de vulnerabilidades y la auditoría generalizada de eventos, varían significativamente entre organizaciones. Los desarrolladores más nuevos que no estén familiarizados con los estándares de seguridad del proyecto podrían omitirlos.

Los trabajadores de seguridad también deben comprender la perspectiva del equipo de desarrollo. La implementación de las medidas de seguridad más estrictas puede agregar complejidad al código, aumentando el cronograma del proyecto. Esto afecta a los equipos de gestión de proyectos y las partes interesadas del negocio, que también se benefician de una mejor visibilidad de la postura de seguridad de la aplicación.

Más allá de sus componentes de software, también debe mirar su pila de redes y cualquier dispositivo físico en su infraestructura. Los productos de IoT en particular pueden presentar debilidades únicas que les dan a los atacantes un punto de apoyo en su sistema. Las personas que supervisan estos sistemas también deben estar informadas sobre sus líneas de base de seguridad.

¿Cómo desplazar a la izquierda?

Desplazarse a la izquierda no es algo que ocurra de la noche a la mañana. Un cambio efectivo depende de un cambio de mentalidad en toda la organización. Podría pasar una tarde discutiendo la seguridad en un stand-up de manos libres, pero a menos que se promulguen, prueben y repitan los cambios, no estará mejor que en la mañana.

En primer lugar, es importante definir los requisitos de seguridad fundamentales para su sistema. Un conjunto claramente documentado de bases técnicas, rutinas de procedimiento y líneas de base de cumplimiento hace que todos estén en la misma página, ya sea que provengan de «dev», «sec» u «ops». Puede utilizar estándares populares de la comunidad, como el Directrices de OWASP como punto de partida.

A continuación, observe su proceso existente. ¿Dónde encaja la seguridad? Si es su primer intento de cambiar la seguridad a la izquierda, es posible que la seguridad se encuentre muy a la derecha. Analice su proceso para identificar dónde está la seguridad podría encajar. ¿En qué debates debería aparecer la seguridad?

Desea que esto sea lo antes posible, pero la posición exacta variará según la organización. En un mundo ideal, la seguridad se considerará una vez que la funcionalidad del proyecto se haya definido por completo, pero antes de que se haya seleccionado una arquitectura técnica firme. Esto le brinda la flexibilidad de tomar decisiones conscientes de la seguridad sin preocuparse de que tendrá que comenzar de nuevo cuando se decidan las especificaciones.

Antes de que comience el desarrollo, proporcione a todos una descripción general del modelo de seguridad del sistema. Haga que sea responsabilidad del desarrollo ver que se implementen los estándares técnicos, mientras que los equipos de operaciones se aseguran de que los entornos de producción se adhieran a sus líneas de base acordadas.

Durante y después del desarrollo, el código debe ser auditado, cuestionado y escaneado para asegurarse de que realmente funciona según lo previsto. Necesita una forma de verificar el código y los componentes de la infraestructura poseen las cualidades que ha especificado.

Afortunadamente, las herramientas de seguridad se han movido al mismo ritmo que las metodologías que ayudan a facilitar. El escaneo automatizado de vulnerabilidades permite a los desarrolladores verificar que el código sea seguro sin aumentar el tiempo que dedican a escribirlo. Del mismo modo, el análisis de las dependencias de terceros que se utilizan en los proyectos ayuda a defenderse de la creciente ola de ataques a la cadena de suministro.

Puede utilizar la nueva generación de Herramientas de prueba de fuzz API para realizar análisis de seguridad de sus puntos finales activos. Estos pueden ayudar a descubrir problemas que solo se muestran en escenarios específicos, mejorando la cobertura de las pruebas de seguridad.

Otro aspecto de las herramientas se refiere a la experiencia diaria del desarrollador. El uso de linters y complementos en el editor proporciona comentarios inmediatos línea por línea, marcando problemas en el momento en que ingresan el código. Una estrategia eficaz de revisión y fusión garantiza que haya múltiples ojos en cada cambio.

Automatice tantos controles como sea posible. Esto mitiga las pérdidas de tiempo y ayudará a mantener a los miembros del equipo a bordo. Agregar complejidad al proceso podría generar frustración, lo que eventualmente llevaría a los desarrolladores a buscar formas de eludir los controles de seguridad.

Los beneficios de desplazarse a la izquierda

Las organizaciones que se desplazan a la izquierda con éxito se benefician de una postura de seguridad mejorada que es más fácil de mantener con el tiempo. El resultado es una cultura consciente de la seguridad en la que todos comprenden los controles del sistema y por qué están presentes.

Cambiar la seguridad a la izquierda también puede mejorar la calidad del código y conducir a diseños arquitectónicos más avanzados. Al preparar la seguridad desde el principio, se pueden descubrir estrategias alternativas que resuelven problemas más amplios que la seguridad por sí sola. También promueve prácticas de desarrollo modernas al fomentar el uso de herramientas automatizadas.

El modelo también puede aliviar las presiones del día del lanzamiento. No hay problemas para auditar las soluciones antes de que se pongan en marcha, ya que habrán sido evaluadas continuamente a lo largo del proceso de desarrollo. Encontrar problemas antes tiende a hacerlos más fáciles y menos costosos de solucionar. Si se encuentra un problema de seguridad en desarrollo, se puede resolver de forma segura sin ningún impacto en los datos del cliente.

Resumen

“Desplazarse a la izquierda” se refiere a elevar la posición de la seguridad en el ciclo de vida del desarrollo de software a uno de prioridad y referencia continua. Desafía la percepción de que la seguridad es a menudo una ocurrencia tardía, evaluada apresuradamente justo antes del lanzamiento de un nuevo sistema.

Abordar la seguridad desde el primer día le brinda una mayor tranquilidad, más colaboración entre los miembros del equipo y un descubrimiento más temprano de los problemas. No perseguirá problemas de seguridad al final del día, ya que aparecerán durante la planificación, el desarrollo o la revisión del código. Esto ayuda a que las liberaciones fluyan de manera suave y segura.

Mover la seguridad a la izquierda encaja bien con otros conceptos modernos, como las metodologías nativas de la nube y los procedimientos de DevOps. Todos lo ayudan a crear software más resistente en un período de tiempo más corto sin comprometer la experiencia del desarrollador. Con los ataques cibernéticos en aumento, tomarse el tiempo para integrar mejor la seguridad en su proceso de desarrollo lo ayudará a defender sus datos y a sus clientes contra las amenazas emergentes.

Leave a Comment

You may also like

Más